Iscriviti al feed

Introduzione

Vuoi ridurre i costi di gestione dei piani di controllo e gli oneri legati alla gestione di più piani? Hosted Control Planes (anche noto come HyperShift) per Red Hat OpenShift consente di ospitare cluster tenant OpenShift su larga scala in Amazon Web Services (AWS). Con ogni cluster OpenShift standalone, il piano di controllo è pianificato su tre nodi macchina. Tuttavia, con Hosted Control Planes, il piano di controllo viene pianificato come pod sui nodi di lavoro disponibili, come qualsiasi altro carico di lavoro. In questo modo è possibile creare ed eseguire molti piani di controllo su un numero inferiore di nodi, rendendo i cluster più sostenibili e continuando a riutilizzare i concetti di base di tenancy OpenShift come progetti, policy e così via. L'utilizzo dei piani di controllo in hosting consente di ridurre i costi, ma i piani di controllo in hosting Arm possono contribuire ad aumentare i risparmi.

I piani di controllo in hosting Arm possono essere installati negli ambienti cluster OpenShift Container Platform (OCP) Arm a 64 bit esistenti, consentendo di distribuire rapidamente più piani di controllo in hosting Arm con NodePool x86 a 64 bit. Tutto questo può essere fatto sulla piattaforma AWS e consente di risparmiare sui costi utilizzando i piani di controllo in hosting Arm. Questo articolo del blog esaminerà i vantaggi e la procedura di installazione di un piano di controllo in hosting Arm.

Tieni presente che l'attuale stato del supporto di questa funzionalità è in modalità di anteprima tecnica (Technical Preview, TP) e sarà ufficialmente supportato in una delle prossime versioni.

Reduce Costs with ARM Hosted Control Planes on AWS-it

 

Vantaggi

Rispetto ai cluster OCP standard, l'utilizzo dei piani di controllo in hosting Arm offre i seguenti vantaggi aggiuntivi:

  • I piani di controllo in hosting Arm possono ridurre i costi del 20% circa rispetto a un piano di controllo in hosting x86 equivalente. Risparmio in base al costo orario di m6i.xlarge (basato su x86) rispetto a m6g.xlarge (basato su Arm)
  • Esigenze di manutenzione ridotte
  • Limiti di sicurezza più rigorosi tra gestione e carichi di lavoro
  • Esecuzione di molti piani di controllo su meno nodi, che rende i cluster più sostenibili
  • Tempi di avvio più rapidi per i piani di controllo
  • Gestione dei multicluster più centralizzata e semplice

Per ulteriori informazioni sui vantaggi dei cluster in hosting, consulta la documentazione della panoramica del piano di controllo in hosting.

Preparazione del cluster

OCP 4.13.0 viene eseguito come base per un cluster Arm OCP a 64 bit in hosting su AWS.

  1. Installa l'operatore del motore multicluster (versione 2.2.4 o successiva). Le istruzioni per l'installazione di questo operatore sono disponibili qui.
  2. Segui i passaggi illustrati al paragrafo 1.7.1.2. Creating the Amazon Web Services S3 bucket and S3 OIDC secret, per configurare un bucket S3 AWS e un segreto OIDC S3.
    1. Dopo il passaggio 1, esegui il comando seguente:
       

      aws s3api put-bucket-ownership-controls --bucket $BUCKET_NAME --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerPreferred}]"
  3. Segui i passaggi illustrati al paragrafo 1.7.1.6. Enabling the hosted control planes feature, per abilitare i piani di controllo in hosting.
  4. Scarica il CLI hypershift, al paragrafo 1.7.1.7 Installing the Hosted Control Plane CLI

 

Dimostrazione

Le sezioni seguenti illustrano le fasi di:

  1. Configurazione delle variabili di ambiente
  2. Creazione di un piano di controllo in hosting Arm e di un cluster guest x86 a 64 bit
  3. Aggiunta di un cluster guest x86 a 64 bit aggiuntivo al piano di controllo in hosting Arm esistente
  4. Eliminazione di un piano di controllo in hosting Arm

Configurazione delle variabili di ambiente

Innanzitutto, imposta alcune variabili di ambiente necessarie allo strumento a riga di comando HyperShift per installare l'operatore HyperShift Arm e creare il cluster del piano di controllo in hosting. Questo step è immediatamente successivo al passaggio 1, illustrato al paragrafo 1.7.2.3. Deploying a hosted cluster on AWS.

Puoi ottenere il segreto di pull dell'immagine da Red Hat OpenShift Cluster Manager.

REGION=us-east-1
AWS_CREDS=~/.aws/credentials
BASE_DOMAIN=my.base.domain.com
PULL_SECRET=~/all-the-pull-secrets.json
BUCKET_NAME=my-s3-bucket
CLUSTER_NAME=my-hypershift-arm-cluster
NODEPOOL_NAME=my-additional-x86-guest-cluster
NODEPOOL_REPLICAS=2

 

Imposta la variabile di ambiente KUBECONFIG in modo che punti al cluster di gestione Arm a 64 bit di OpenShift.

$ hypershift % export KUBECONFIG=/Users/user/aws-oc-nightly/auth/kubeconfig

 

Creazione di un piano di controllo in hosting Arm e di un cluster guest x86 a 64 bit

1) Crea un piano di controllo in hosting con un cluster guest iniziale con 2 nodi, sovrascrivendo l'immagine di rilascio standard per utilizzare un'immagine multiarchitettura, poiché il cluster di gestione è Arm a 64 bit e i cluster guest del piano di controllo in hosting saranno x86 a 64 bit. In questo modo, durante la creazione del cluster in hosting e del relativo cluster guest viene utilizzata la configurazione di bootstrapping corretta.

Questo step è immediatamente successivo al passaggio 4, illustrato al paragrafo 1.7.2.3. Deploying a hosted cluster on AWS.

$ hypershift create cluster aws \ 
--name $CLUSTER_NAME \
--node-pool-replicas=$NODEPOOL_REPLICAS \
--base-domain $BASE_DOMAIN \
--pull-secret $PULL_SECRET \
--aws-creds $AWS_CREDS \
--region $REGION \
--release-image quay.io/openshift-release-dev/ocp-release:4.13.0-multi

 

2) Verifica la riuscita della creazione del cluster guest utilizzando lo strumento a riga di comando di OpenShift.

$ oc get nodepools --namespace clusters
NAME                                   CLUSTER                     DESIRED NODES   CURRENT NODES   AUTOSCALING   AUTOREPAIR   VERSION       UPDATINGVERSION   UPDATINGCONFIG   MESSAGE
my-hypershift-arm-cluster-us-east-1a   my-hypershift-arm-cluster   2               2               False         False        4.13.0

 

3) Verifica la creazione corretta del piano di controllo in hosting.

$ oc get --namespace clusters hostedclusters
NAME                        VERSION       KUBECONFIG                                   PROGRESS    AVAILABLE   PROGRESSING   MESSAGE
my-hypershift-arm-cluster   4.13.0   my-hypershift-arm-cluster-admin-kubeconfig   Completed   True        False         The hosted control plane is available

 

4) Dopo aver creato il cluster guest e il piano di controllo in hosting, crea un KUBECONFIG per passare al nuovo cluster guest e verificare che le macchine AWS si trovino nel cluster guest.

$ hypershift create kubeconfig > temp_kubeconfig
2023/03/21 11:12:32 selected 1 of 1 hostedclusters for the kubeconfig
2023/03/21 11:12:32 adding clusters/my-hypershift-arm-cluster to kubeconfig
2023/03/21 11:12:32 added clusters-my-hypershift-arm-cluster to kubeconfig
2023/03/21 11:12:32 created kubeconfig with 1 contexts
$ hypershift % export KUBECONFIG=/Users/user/hypershift/temp_kubeconfig
$ hypershift % oc get nodes
NAME                           STATUS   ROLES    AGE   VERSION
ip-10-0-142-149.ec2.internal   Ready    worker   10m   v1.26.2+06e8c46
ip-10-0-143-86.ec2.internal    Ready    worker   10m   v1.26.2+06e8c46

 

Aggiunta di un cluster guest x86 a 64 bit aggiuntivo al piano di controllo in hosting Arm esistente

Inoltre, puoi aggiungere ulteriori cluster guest al piano di controllo in hosting utilizzando lo strumento a riga di comando HyperShift, se necessario.

$ hypershift create nodepool aws \
--cluster-name $CLUSTER_NAME \
--name $NODEPOOL_NAME \
--node-count=$NODEPOOL_REPLICAS
NodePool my-additional-x86-guest-cluster created

 

Utilizza il comando dello strumento a riga di comando di OpenShift per verificare che il nuovo cluster guest sia stato inizializzato correttamente.

$ oc get nodepools --namespace clusters
NAME                                   CLUSTER                     DESIRED NODES   CURRENT NODES   AUTOSCALING   AUTOREPAIR   VERSION       UPDATINGVERSION   UPDATINGCONFIG   MESSAGE
my-additional-x86-guest-cluster        my-hypershift-arm-cluster   2               2               False         False        4.13.0
my-hypershift-arm-cluster-us-east-1a   my-hypershift-arm-cluster   2               2               False         False        4.13.0

 

Eliminazione di un piano di controllo in hosting Arm

Per eliminare il piano di controllo in hosting Arm, esegui il comando seguente. Questo step è immediatamente successivo al passaggio 1, illustrato al paragrafo 1.7.2.6. Destroying a hosted cluster on AWS.

$ hypershift destroy cluster aws \
--name $CLUSTER_NAME \ 
--aws-creds $AWS_CREDS

 

Riepilogo

Abbiamo illustrato i passaggi necessari per installare e verificare un piano di controllo in hosting Arm con un cluster tenant x86 a 64 bit. Inoltre, abbiamo dimostrato come utilizzare lo strumento a riga di comando HyperShift per installare l'operatore HyperShift Arm, creato un cluster tenant x86 a 64 bit aggiuntivo utilizzando lo stesso piano di controllo in hosting Arm, verificato la corretta creazione dei cluster tenant x86 a 64 bit e del piano di controllo in hosting Arm ed eliminato il piano di controllo.

Prossimi passi

In futuro verranno ampliate le funzionalità della CPU multiarchitettura dei piani di controllo in hosting, come quella per la creazione di NodePool Arm a 64 bit su AWS. Questa funzionalità consente di eseguire NodePool Arm x86 a 64 bit e Arm NodePool a 64 bit dallo stesso piano di controllo in hosting (nota: non sarà possibile combinare architetture CPU all'interno dello stesso NodePool).

Dopo i NodePool Arm a 64 bit su AWS, in futuro espanderemo i piani di controllo in hosting Arm a 64 bit e i NodePool Arm a 64 bit ad altri provider cloud e on premise.


Sull'autore

Senior software engineer with over 10 years of industry experience in the full software development cycle. Bryan’s work in Red Hat over the past few years has primarily focused on expanding Arm offerings in Red Hat OpenShift and development on Hosted Control Planes.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Ricerca per canale

automation icon

Automazione

Novità sull'automazione IT di tecnologie, team e ambienti

AI icon

Intelligenza artificiale

Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque

open hybrid cloud icon

Hybrid cloud open source

Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido

security icon

Sicurezza

Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti

edge icon

Edge computing

Aggiornamenti sulle piattaforme che semplificano l'operatività edge

Infrastructure icon

Infrastruttura

Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale

application development icon

Applicazioni

Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili

Original series icon

Serie originali

Raccontiamo le interessanti storie di leader e creatori di tecnologie pensate per le aziende