Risorse OCI per l'Installer basato su agente per l'installazione manuale
Creare manualmente le risorse OCI necessarie per installare un cluster OpenShift Container Platform utilizzando l'Installer basato sull'agente.
Se si esegue il provisioning delle risorse con Terraform, come descritto nella sezione Installazione di un cluster con un programma di installazione basato su agente mediante Terraform, è possibile saltare questo argomento.
Il flusso di lavoro dell'Installer basato sull'agente per configurare l'infrastruttura inizia nella console Red Hat Hybrid Cloud, dove è possibile scaricare il file binario openshift-install
per creare un'immagine ISO di ricerca automatica necessaria per eseguire il provisioning delle istanze di computazione in OCI. Per scaricare il file binario, vedere la pagina OpenShift Installer and CLI Downloads.
Prima di poter generare l'immagine ISO di ricerca automatica (utilizzata per eseguire il provisioning delle istanze di computazione in OCI), è necessario eseguire il provisioning dell'infrastruttura OCI. Sono inclusi OCID, intervalli CIDR VCN, conteggio del piano di controllo e delle istanze di computazione e altri input necessari per creare i file di installazione basati sugli agenti agent-config.yaml
, install-config.yaml
e openshift/custom_manifest.yaml
.
Dopo aver generato l'immagine, passare a OCI Console per eseguire il provisioning dell'infrastruttura rimanente e continuare con la distribuzione del cluster.
Quando si utilizza l'Installer basato su agente, sono necessarie le risorse descritte nell'argomento Prerequisiti e i componenti dell'infrastruttura riportati di seguito.
- compartimento
- VCN
- Load balancer
- Record DNS per i load balancer
- Spazio di nomi tag e tag definite per i nodi di calcolo del cluster
- Gruppo dinamico IAM per i nodi di calcolo del cluster
- Criteri IAM per il gruppo dinamico
- Immagine personalizzata per il provisioning dell'istanza di computazione, creata dall'immagine ISO di ricerca automatica OpenShift.
È possibile creare la maggior parte di queste risorse prima di iniziare, ad eccezione dell'immagine di computazione personalizzata, che richiede l'immagine ISO di ricerca automatica.
compartimento
I compartimenti consentono di organizzare e isolare le risorse cloud. Si consiglia di creare un nuovo compartimento per il cluster OpenShift. Per ulteriori informazioni, vedere Creazione di un compartimento.
VCN e risorse di networking
OpenShift I nodi di calcolo, i load balancer e altre risorse utilizzano una rete cloud virtuale (VCN) OCI per connettersi. Per istruzioni sulla creazione di una VCN, vedere Creazione di una VCN.
È necessario disporre delle autorizzazioni IAM per gestire le VCN e le risorse di networking correlate nel tipo di risorsa aggregata virtual-network-family
. Per ulteriori informazioni, vedere Gestione dell'accesso alle risorse. Tenere presente che le autorizzazioni di networking sono descritte nella sezione Servizi principali.
Facoltativamente, puoi utilizzare i gruppi di sicurezza di rete (NSG) nella tua VCN per controllare l'accesso. Vedere Gruppi di sicurezza di rete per dettagli sull'uso dei gruppi NSG per controllare il traffico e l'accesso di rete. Tenere presente che il gruppo NSG deve trovarsi nello stesso compartimento delle altre risorse dell'infrastruttura OpenShfit.
Per i dettagli di configurazione della VCN e della subnet, consulta la pagina Risorse definite da Terraform per OpenShift su OCI in GitHub. Per definizioni di risorse specifiche, accedere alle cartelle pertinenti nella directory shared_modules e cercare le risorse seguenti: oci_core_vcn,
oci_core_internet_gateway
, oci_core_nat_gateway
, oci_core_route_table
, oci_core_subnet
e oci_core_network_security_group
.
Load balancer
Il cluster Red Hat OpenShift richiede due load balancer, uno per il traffico di rete interno e uno per il traffico esterno. Per istruzioni, vedere Creazione di un load balancer. Per i dettagli di alto livello sulle configurazioni del load balancer, fare riferimento alla pagina Risorse definite da Terraform per OpenShift su OCI in GitHub. Per definizioni di risorse specifiche, accedere alla cartella pertinente nella directory shared_modules e cercare le risorse seguenti: oci_load_balancer_load_balancer
, oci_load_balancer_backend_set
e oci_load_balancer_listener
.
Load balancer interno
Porta | Computer backend (membri pool) | Descrizione |
---|---|---|
6.443 | Bootstrap e piano di controllo | Server API Kubernetes |
22.623 | Bootstrap e piano di controllo | Server di configurazione computer |
22.624 | Bootstrap e piano di controllo | Server di configurazione computer |
Load balancer API
Utilizzato per il traffico del server API Kubernetes. Può essere pubblico o privato. Utilizzare le informazioni riportate di seguito per configurare il load balancer API
Porta | Computer backend (membri pool) | Descrizione |
---|---|---|
6.443 | Nodi bootstrap e piano di controllo | Traffico server API Kubernetes (HTTPS) |
22.624 | Nodi bootstrap e piano di controllo | Utilizzato dai nodi di lavoro per scaricare le configurazioni di accensione durante l'unione al cluster. |
Per aggiungere nuovi nodi di lavoro al cluster, è necessaria la porta 22624. Assicurati che sia aperto e instradato correttamente sul load balancer API esterno (non interno).
Load balancer applicazioni
Porta | Macchine back-end (membri del pool) | descrizione; |
---|---|---|
80 | Nodi che eseguono pod del controller in entrata (in genere nodi di calcolo o di lavoro) | Traffico HTTP |
443 | Nodi che eseguono pod del controller in entrata (in genere nodi di calcolo o di lavoro) | Traffico HTTPS |
È possibile configurare i load balancer in modo che siano pubblici o privati a seconda dei requisiti di rete e sicurezza.
Record DNS
Creare record DNS per l'instradamento del traffico di rete OpenShift interno ed esterno. A seconda dei requisiti di rete e sicurezza, crea una zona DNS pubblica, una zona DNS privata o entrambe. Una zona DNS privata può essere risolta solo all'interno delle reti Oracle (ad esempio, la VCN). Una zona DNS pubblica consente l'accesso esterno.
api.<cluster_name>.<base_domain>
api-int.<cluster_name>.<base_domain>
*.apps.<cluster_name>.<base_domain>
Ogni record DNS deve fare riferimento agli stessi ID del load balancer pubblico e privato.
Vedere Zone per istruzioni sulla creazione e la gestione delle zone DNS.
Per i dettagli di configurazione DNS di alto livello, vedere la pagina Risorse definite Terraform per OpenShift su OCI su GitHub. Per definizioni di risorse specifiche, accedere alla cartella pertinente nella directory shared_modules e cercare le risorse seguenti: oci_dns_zone
e oci_dns_rrset
.
Componente | Registra | Load balancer | Descrizione |
---|---|---|---|
API Kubernetes | api.<cluster_name>.<base_domain>. |
Usa IP load balancer API |
Un record A/AAAA o CNAME DNS e un record PTR DNS per identificare il load balancer API. Questi record devono essere risolvibili da client esterni al cluster e da tutti i nodi all'interno del cluster. |
API Kubernetes | api-int.<cluster_name>.<base_domain>. |
Usa IP load balancer interno |
Un record A/AAAA o CNAME DNS e un record PTR DNS per identificare internamente il load balancer API. Questi record devono essere risolvibili da tutti i nodi all'interno del cluster. |
Ingresso applicazione | *.apps.<cluster_name>.<base_domain>. |
Usa IP load balancer applicazioni |
Record A/AAAA o CNAME DNS con caratteri jolly che fa riferimento al load balancer di entrata dell'applicazione. Il load balancer in entrata dell'applicazione si rivolge ai computer che eseguono i pod del controller in entrata. Per impostazione predefinita, i pod del controller in entrata vengono eseguiti sui computer di calcolo. Questi record devono essere risolvibili da client esterni al cluster e da tutti i nodi all'interno del cluster. Ad esempio, |
Tag definite
Le tag definite sono necessarie per raggruppare e identificare tutti i nodi del piano di controllo e di calcolo.
Utilizzando il servizio Applicazione tag, creare due spazi di nomi tag e definire le tag richieste nel compartimento in uso per creare il cluster OpenShift:
- Spazio di nomi tag:
openshift-tags
eopenshift-{cluster_name}
- Nomi e valori tag definiti:
-
- Per
openshift-tags
:openshift-resource
- Per
openshift-{cluster_name}
:instance-role
:control_plane
ocompute
(a seconda del tipo di nodo)boot-volume-type
:PARAVIRTUALIZED
oISCSI
- Per
Queste tag devono essere applicate a tutte le risorse rilevanti durante il provisioning. Per ulteriori informazioni, vedere Tag attribuzione risorsa.
Per ulteriori informazioni, vedere Concetti dello spazio di nomi tag e tag.
Per istruzioni di alto livello specifiche di OpenShift su OCI, vedere la pagina Risorse definite da Terraform per OpenShift su OCI su GitHub. Per definizioni di risorse specifiche, accedere alla cartella pertinente nella directory shared_modules e cercare le risorse seguenti: oci_identity_tag_namespace
e oci_identity_tag
.
Gruppi dinamici
I gruppi dinamici consentono di raggruppare le istanze di computazione Oracle Cloud Infrastructure (OCI) come elementi "principali" (simili ai gruppi di utenti) per concedere l'accesso tramite i criteri IAM.
È possibile creare criteri IAM (discussi nella sezione seguente) che fanno riferimento a questi gruppi dinamici per controllare l'accesso alle risorse OCI. Per istruzioni, vedere Gestione dei gruppi dinamici. Per i dettagli di alto livello sulla configurazione dei gruppi dinamici, vedere la pagina Risorse definite Terraform per OpenShift su OCI in GitHub . Per definizioni di risorse specifiche, accedere alla cartella pertinente nella directory shared_modules e cercare la risorsa seguente: oci_identity_dynamic_group
.
- Nome gruppo dinamico:
${var.cluster_name}_control_plane_nodes
- Compartimento: compartimento cluster
- Regola di corrispondenza:
all { instance.compartment.id = "${var.compartment_ocid}", tag.${var.op_openshift_tag_namespace}.${var.op_openshift_tag_instance_role}.value = "control_plane" }
Criteri del gruppo dinamico
Per consentire al gruppo dinamico del piano di controllo OpenShift di accedere e gestire le risorse OCI durante la creazione del cluster sono necessari tre criteri IAM. Questi criteri IAM sono necessari per il gruppo dinamico master
. Per istruzioni, vedere Gestione dei gruppi dinamici e Panoramica dei criteri IAM. Per i dettagli di alto livello sulle configurazioni dei criteri dei gruppi dinamici, vedere la pagina Risorse definite Terraform per OpenShift su OCI all'indirizzo GitHub. Per definizioni di risorse specifiche, accedere alla cartella pertinente nella directory shared_modules e cercare la risorsa seguente: oci_identity_policy
.
- Criterio di accesso alle risorse del piano di controllo: questo criterio consente ai numeri del piano di controllo di gestire le risorse dell'infrastruttura di base. Il gruppo dinamico per i nodi del piano di controllo è denominato
${var.cluster_name}_control_plane_nodes
- Nome criterio:
${var.cluster_name}_control_plane_nodes
- Compartimento: compartimento cluster
- Istruzioni criteri:
Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage volume-family in compartment id ${var.compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage instance-family in compartment id ${var.compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage security-lists in compartment id ${var.compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to use virtual-network-family in compartment id ${var.compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage load-balancers in compartment id ${var.compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage objects in compartment id ${var.compartment_ocid}
- Nome criterio:
- Criterio di accesso per l'applicazione di tag alle risorse cluster: questo criterio concede l'accesso ai nodi del piano di controllo per utilizzare lo spazio di nomi
openshift-tags
per contrassegnare le risorse cluster.- Nome criterio: $
{var.cluster_name}_control_plane_nodes_tags
- Compartimento: compartimento radice
- Istruzione criteri:
Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to use tag-namespaces in tenancy
- Nome criterio: $
- (Facoltativo) Criterio di accesso alla rete: questo criterio è necessario solo se i componenti di rete si trovano in un compartimento diverso da quello delle istanze del cluster.
-
Nome criterio:
${var.cluster_name}_control_plane_nodes_networking_access_policy
- Compartimento: compartimento di rete
- Istruzioni criteri:
Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage security-lists in compartment id ${var.networking_compartment_ocid} Allow dynamic-group ${oci_identity_dynamic_group.openshift_control_plane_nodes.name} to manage virtual-network-family in compartment id ${var.networking_compartment_ocid}
-
Immagine personalizzata per le istanze della piattaforma contenitore OpenShift
Per creare nodi cluster per OpenShift Container Platform utilizzando l'Installer basato su agente, è necessario disporre di un'immagine personalizzata del servizio di computazione contenente il software Red Hat necessario per eseguire i nodi del cluster. Per creare questa immagine, è necessario effettuare le operazioni riportate di seguito.
- Crea un'immagine ISO di ricerca automatica localmente, utilizzando il file binario
openshift-install
, disponibile da Red Hat Hybrid Cloud Console. Per istruzioni, vedere Creazione di file di configurazione per l'installazione di un cluster in OCI (documentazione di Red Hat) (documentazione di Red Hat). - Caricare l'immagine ISO di ricerca automatica nello storage degli oggetti OCI. Per istruzioni, consulta la sezione relativa alla creazione di un bucket di storage degli oggetti e al caricamento di un oggetto di storage degli oggetti in un bucket.
- Crea un'immagine personalizzata in un servizio di computazione in base all'ISO di ricerca automatica. Per istruzioni, vedere Gestione delle immagini personalizzate.
Quando si crea un'immagine personalizzata, è necessario cancellare la funzionalità 'BIOS' in modo che questa opzione non sia abilitata per l'immagine. Per ulteriori informazioni, vedere Configurazione delle funzionalità delle immagini personalizzate nella documentazione relativa alla gestione delle immagini personalizzate.
File di configurazione dell'agente
L'Installer basato su agente richiede due file di configurazione che devono essere modificati in modo da poter utilizzare l'Installer basato su agente per generare l'immagine ISO di ricerca automatica. Questi sono i file agent-config.yaml
e install-config.yaml
. Per informazioni dettagliate, vedere Creazione di file di configurazione per l'installazione di un cluster in OCI (documentazione di Red Hat).
Dopo aver creato i file agent-config.yaml
e install-config.yaml
, salvarli localmente. La struttura di directory locale deve essere la seguente:
.
└── local_machine_work_directory/
├── agent-config.yaml
├── install-config.yaml
└── openshift /
├── manifest.yml
Configurazione firewall
Assicurarsi che il firewall sia configurato in modo da concedere l'accesso ai siti richiesti da OpenShift Container Platform. Vedere Configurazione del firewall per OpenShift Container Platform (documentazione di Red Hat) per i dettagli sull'impostazione della lista di inclusione del firewall per OpenShift Container Platform.
URL | Porta | Funzione |
---|---|---|
ghcr.io | 443 | Fornisce l'immagine del contenitore per Oracle Cloud Control Manager (CCM) e l'interfaccia CSI (Container Storage Interface). |
Registro di sistema.k8s.io | 443 | Fornisce le immagini dei container kubernetes di supporto per CCM e CSI. |