Skip to content

Commit 6ac3828

Browse files
author
Michael Burke
committed
OSDOCS:14467 [GA] Pin and preload images
1 parent 9a721ce commit 6ac3828

File tree

3 files changed

+49
-0
lines changed

3 files changed

+49
-0
lines changed

_topic_maps/_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2352,6 +2352,8 @@ Topics:
23522352
File: machine-config-node-disruption
23532353
- Name: Configuring MCO-related custom resources
23542354
File: machine-configs-custom
2355+
- Name: About preloading and pinning images
2356+
File: machine-config-pin-preload-images-about
23552357
- Name: Updated boot images
23562358
File: mco-update-boot-images
23572359
- Name: Managing unused rendered machine configs
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="machine-config-pin-preload-images-about"]
3+
= About preloading and pinning images
4+
include::_attributes/common-attributes.adoc[]
5+
:context: machine-config-operator
6+
7+
toc::[]
8+
9+
Slow and unreliable connections to an image registry can interfere with operations that require pulling images, such as updating a cluster or deploying an application.
10+
11+
For example, an cluster update might require pulling more than one hundred images. Failure to pull those images causes retries that can interfere with the upgrade process and might cause the update fail. One way to improve that is to _preloand_ the required images by pulling them in advance, before they are actually needed. Then, ensuring that the images are available when needed by _pinning_ them to a machine config pool. Pinning and preloading images can provide a more consistent upgrade, which is important when scheduling upgrades into maintenance windows.
12+
13+
Pinning and preloading images can benefit a cluster that has a low bandwidth or an unreliable connection to an image registry server when deploying applications, ensuring that the images are available and application will successfully deploy in a predictable time.
14+
15+
Preloading and pinning images prevents image garbage collection from removing the pinned images.
16+
17+
You can preload and pin images by using a a `PinnedImageSet` custom resource (CR) as described in the following section. Pinned images are stored in a file inside the `/etc/crio/crio.conf.d` directory. The name of this file is a concatenation of the name of the `PinnedImageSet` CR and the UUID assigned to the resulting `PinnedImageSet` object.
18+
19+
For example, the name of a pinned image file would be similar to the following name: `my-pinned-images-550a1d88-2976-4447-9fc7-b65e457a7f42.conf`. The contents of the file appear similar to the following example:
20+
21+
[source,terminal]
22+
----
23+
pinned_images=[
24+
"quay.io/openshift-release-dev/ocp-release@sha256:...",
25+
"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:...",
26+
"quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:...",
27+
...
28+
]
29+
----
30+
31+
32+
include::modules/machine-config-pin-preload-images-configuring.adoc[leveloffset=+1]
33+
34+
[role="_additional-resources"]
35+
.Additional resources
36+
* xref:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * machine_configuration/machine-config-pin-preload-images-about.adoc
4+
5+
:_mod-docs-content-type: PROCEDURE
6+
[id="machine-config-pin-preload-images_{context}"]
7+
= Preloading and pinning and images
8+
9+
You can preload and pin images by using a a `PinnedImageSet` custom resource (CR).
10+
11+

0 commit comments

Comments
 (0)