21.8. Configuration avancée des clusters gérés avec les ressources SiteConfig
Vous pouvez utiliser les ressources personnalisées (CR) de SiteConfig
pour déployer des fonctionnalités et des configurations personnalisées dans vos clusters gérés au moment de l'installation.
21.8.1. Personnaliser les manifestes d'installation supplémentaires dans le pipeline ZTP GitOps
Vous pouvez définir un ensemble de manifestes supplémentaires à inclure dans la phase d'installation du pipeline GitOps ZTP (Zero Touch Provisioning). Ces manifestes sont liés aux ressources personnalisées (CR) de SiteConfig
et sont appliqués au cluster lors de l'installation. L'inclusion de MachineConfig
CRs au moment de l'installation rend le processus d'installation plus efficace.
Conditions préalables
- Créez un dépôt Git où vous gérez les données de configuration de votre site personnalisé. Le dépôt doit être accessible depuis le cluster hub et être défini comme dépôt source pour l'application Argo CD.
Procédure
- Créer un ensemble de manifestes CR supplémentaires que le pipeline ZTP utilise pour personnaliser l'installation des clusters.
Dans votre répertoire personnalisé
/siteconfig
, créez un dossier/extra-manifest
pour vos manifestes supplémentaires. L'exemple suivant illustre un exemple de/siteconfig
avec un dossier/extra-manifest
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow siteconfig ├── site1-sno-du.yaml ├── site2-standard-du.yaml └── extra-manifest └── 01-example-machine-config.yaml
siteconfig ├── site1-sno-du.yaml ├── site2-standard-du.yaml └── extra-manifest └── 01-example-machine-config.yaml
-
Ajoutez vos CR de manifestes supplémentaires personnalisés au répertoire
siteconfig/extra-manifest
. Dans votre CR
SiteConfig
, saisissez le nom du répertoire dans le champextraManifestPath
, par exemple :Copy to Clipboard Copied! Toggle word wrap Toggle overflow clusters: - clusterName: "example-sno" networkType: "OVNKubernetes" extraManifestPath: extra-manifest
clusters: - clusterName: "example-sno" networkType: "OVNKubernetes" extraManifestPath: extra-manifest
-
Sauvegardez les CRs
SiteConfig
et/extra-manifest
et mettez-les dans le repo de configuration du site.
Le pipeline ZTP ajoute les CR du répertoire /extra-manifest
à l'ensemble par défaut des manifestes supplémentaires lors du provisionnement de la grappe.
21.8.2. Filtrer les ressources personnalisées à l'aide des filtres SiteConfig
En utilisant des filtres, vous pouvez facilement personnaliser les ressources personnalisées (CR) de SiteConfig
pour inclure ou exclure d'autres CR à utiliser dans la phase d'installation du pipeline GitOps de zero touch provisioning (ZTP).
Vous pouvez spécifier une valeur inclusionDefault
de include
ou exclude
pour le CR SiteConfig
, ainsi qu'une liste des CR RAN extraManifest
spécifiques que vous souhaitez inclure ou exclure. En définissant inclusionDefault
comme include
, le pipeline ZTP applique tous les fichiers contenus dans /source-crs/extra-manifest
pendant l'installation. Le réglage de inclusionDefault
à exclude
fait l'inverse.
Vous pouvez exclure des CR individuels du dossier /source-crs/extra-manifest
qui sont autrement inclus par défaut. L'exemple suivant configure un CR personnalisé à nœud unique OpenShift SiteConfig
pour exclure le CR /source-crs/extra-manifest/03-sctp-machine-config-worker.yaml
au moment de l'installation.
D'autres scénarios de filtrage facultatifs sont également décrits.
Conditions préalables
- Vous avez configuré le cluster du concentrateur pour générer les CR d'installation et de stratégie nécessaires.
- Vous avez créé un dépôt Git dans lequel vous gérez les données de configuration de votre site personnalisé. Le référentiel doit être accessible depuis le cluster hub et être défini comme référentiel source pour l'application Argo CD.
Procédure
Pour empêcher le pipeline ZTP d'appliquer le fichier
03-sctp-machine-config-worker.yaml
CR, appliquez le YAML suivant dans leSiteConfig
CR :Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: ran.openshift.io/v1 kind: SiteConfig metadata: name: "site1-sno-du" namespace: "site1-sno-du" spec: baseDomain: "example.com" pullSecretRef: name: "assisted-deployment-pull-secret" clusterImageSetNameRef: "openshift-4.12" sshPublicKey: "<ssh_public_key>" clusters: - clusterName: "site1-sno-du" extraManifests: filter: exclude: - 03-sctp-machine-config-worker.yaml
apiVersion: ran.openshift.io/v1 kind: SiteConfig metadata: name: "site1-sno-du" namespace: "site1-sno-du" spec: baseDomain: "example.com" pullSecretRef: name: "assisted-deployment-pull-secret" clusterImageSetNameRef: "openshift-4.12" sshPublicKey: "<ssh_public_key>" clusters: - clusterName: "site1-sno-du" extraManifests: filter: exclude: - 03-sctp-machine-config-worker.yaml
Le pipeline ZTP ne tient pas compte de la CR
03-sctp-machine-config-worker.yaml
lors de l'installation. Tous les autres CR de/source-crs/extra-manifest
sont appliqués.Enregistrez le CR
SiteConfig
et transférez les modifications dans le référentiel de configuration du site.Le pipeline ZTP surveille et ajuste les CR qu'il applique en fonction des instructions du filtre
SiteConfig
.Facultatif : Pour éviter que le pipeline ZTP n'applique toutes les CR
/source-crs/extra-manifest
pendant l'installation du cluster, appliquez le YAML suivant dans la CRSiteConfig
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: exclude
- clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: exclude
Facultatif : Pour exclure tous les CR de
/source-crs/extra-manifest
RAN et inclure à la place un fichier CR personnalisé pendant l'installation, modifiez le CR personnalisé deSiteConfig
pour définir le dossier des manifestes personnalisés et le fichierinclude
, par exemple :Copy to Clipboard Copied! Toggle word wrap Toggle overflow clusters: - clusterName: "site1-sno-du" extraManifestPath: "<custom_manifest_folder>" extraManifests: filter: inclusionDefault: exclude include: - custom-sctp-machine-config-worker.yaml
clusters: - clusterName: "site1-sno-du" extraManifestPath: "<custom_manifest_folder>"
1 extraManifests: filter: inclusionDefault: exclude
2 include: - custom-sctp-machine-config-worker.yaml
- 1
- Remplacez
<custom_manifest_folder>
par le nom du dossier qui contient les CR de l'installation personnalisée, par exemple,user-custom-manifest/
. - 2
- Définissez
inclusionDefault
surexclude
pour éviter que le pipeline ZTP n'applique les fichiers contenus dans/source-crs/extra-manifest
lors de l'installation.
L'exemple suivant illustre la structure du dossier personnalisé :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow siteconfig ├── site1-sno-du.yaml └── user-custom-manifest └── custom-sctp-machine-config-worker.yaml
siteconfig ├── site1-sno-du.yaml └── user-custom-manifest └── custom-sctp-machine-config-worker.yaml