Suscríbase al feed

Introducción

Si desea reducir los costos en la gestión de los planos de control o disminuir la carga de llevar a cabo este proceso, los planos de control alojados (también conocidos como HyperShift) para Red Hat OpenShift permiten alojar clústeres tenant de OpenShift en Amazon Web Services (AWS) según sea necesario. Con cada clúster de OpenShift independiente, el plano de control se programa en tres nodos de máquina. Sin embargo, con los planos de control alojados, el plano se programa como pods en los nodos de trabajo disponibles, como cualquier otra carga de trabajo. Esto permite que se creen muchos de ellos y se ejecuten en menos nodos, lo que hace que los clústeres sean más asequibles mientras se reutilizan los elementos básicos de los tenants de OpenShift, como proyectos, políticas, etc. Si bien el uso de los planos de control alojados disminuye los costos, se puede ahorrar más si se alojan en ARM.

Los planos de control alojados en ARM se pueden instalar en entornos de clústeres de OpenShift Container Platform (OCP) de ARM de 64 bits, lo que permite implementar rápidamente varios de ellos con conjuntos de nodos x86 de 64 bits. Todo esto se puede hacer en la plataforma de AWS, lo que genera la oportunidad de reducir los costos mediante el uso de planos de control alojados en ARM. En esta publicación, se analizarán las ventajas que brinda un plano de control alojado en ARM y los pasos para instalarlo.

Tenga en cuenta que el soporte actual de esta función se encuentra en la etapa de versión de prueba y se lanzará oficialmente en una versión futura.

Reduce Costs with ARM Hosted Control Planes on AWS-es

 

Ventajas

El uso de los planos de control alojados en ARM, en lugar de los clústeres estándares de OpenShift Container Platform, ofrece estas ventajas adicionales:

  • Se reducen los costos en aproximadamente un 20 % en comparación con un plano de control equivalente alojado en x86. El ahorro se relaciona con el costo por hora de m6i.xlarge (basado en x86) frente a m6g.xlarge (basado en ARM).
  • Se disminuye el mantenimiento.
  • Los límites de seguridad entre la gestión y las cargas de trabajo son más estrictos.
  • Se pueden ejecutar muchos planos de control en menos nodos para que los clústeres sean más asequibles.
  • Los tiempos de inicio de los planos de control son más rápidos.
  • La gestión de varios clústeres es más concentrada y sencilla.

Puede encontrar más información sobre estas ventajas en la documentación de la descripción general del plano de control alojado.

Preparación del clúster

OpenShift Container Platform 4.13.0 se ejecuta como la base fundamental para un clúster de OpenShift Container Platform de ARM de 64 bits alojado en AWS.

  1. Instale la versión 2.2.4 del operador del motor de varios clústeres o una posterior. Puede encontrar las instrucciones para la instalación aquí.
  2. Luego, siga los pasos que aparecen en 1.7.1.2. Creating the Amazon Web Services S3 bucket and S3 OIDC secret para configurar un bucket de AWS S3 y un secreto de S3 OIDC.
    1. Después del primer paso, ejecute este comando:
       

      aws s3api put-bucket-ownership-controls --bucket $BUCKET_NAME --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerPreferred}]"
  3. Siga las instrucciones de 1.7.1.6. Enabling the hosted control planes feature para habilitar los planos de control alojados.
  4. Descargue la interfaz de línea de comandos (CLI) de HyperShift, 1.7.1.7. Installing the hosted control planes CLI.

 

Demostración

En las siguientes secciones, se encuentran las instrucciones para que usted:

  1. Configure las variables del entorno.
  2. Cree un plano de control alojado en ARM y un clúster guest x86 de 64 bits.
  3. Agregue un clúster guest x86 de 64 bits al plano de control alojado en ARM que ya posee.
  4. Elimine un plano de control alojado en ARM.

Configure las variables del entorno

Primero, configure algunas variables del entorno que la herramienta de línea de comandos necesita para instalar el operador ARM de HyperShift y crear el clúster de plano de control alojado. Esto es similar al primer paso de 1.7.2.3. Deploying a hosted cluster on AWS.

Obtenga la imagen pull secret from the 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

 

Establezca la variable de entorno KUBECONFIG para que haga referencia a su clúster de gestión de ARM de OpenShift de 64 bits.

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

 

Cree un plano de control alojado en ARM y un clúster guest x86 de 64 bits

1) Cree un plano de control alojado con un clúster guest inicial con dos nodos mientras anula la imagen de la versión estándar para utilizar una de varias arquitecturas, ya que el clúster de gestión es de ARM de 64 bits y los clústeres guest del plano de control alojado serán de 64-bit x86. Esto garantiza que se use la configuración de arranque adecuada cuando se creen el clúster alojado y el clúster guest.

Esto es similar al cuarto paso de 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) Compruebe que se haya creado correctamente el clúster guest con la herramienta de línea de comandos de 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) Compruebe que el plano de control alojado se haya creado correctamente.

$ 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) Una vez que el clúster guest y el plano de control alojado se hayan creado con éxito, genere una variable de entorno KUBECONFIG para explorar el nuevo clúster guest y comprobar que las máquinas de AWS se encuentren dentro de él.

$ 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

 

Agregue un clúster guest x86 de 64 bits al plano de control alojado en ARM que ya posee

También puede agregar clústeres guest al plano de control alojado con la herramienta de línea de comandos HyperShift según sea necesario.

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

 

Use el comando de la herramienta de línea de comandos de OpenShift para comprobar que el nuevo clúster guest se haya iniciado correctamente.

$ 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

 

Elimine un plano de control alojado en ARM

Para eliminar el plano de control alojado en ARM, ejecute el comando que aparece a continuación. Esto es similar al primer paso de 1.7.2.6. Destroying a hosted cluster on AWS.

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

 

Resumen

Demostramos los pasos que se deben seguir para instalar y comprobar un plano de control alojado en ARM con un clúster tenant x86 de 64 bits. También explicamos la forma de usar la herramienta de línea de comandos para instalar el operador de ARM de HyperShift, creamos un clúster tenant x86 de 64 bits adicional con el mismo plano de control alojado de ARM, comprobamos la creación exitosa de los clústeres tenant x86 de 64 bits, verificamos que el plano de control alojado en ARM se haya creado correctamente y mostramos la manera de eliminarlo.

Trabajos futuros

Los trabajos futuros ampliarán las funciones de CPU de varias arquitecturas de los planos de control alojados. Próximamente, se habilitará la creación de grupos de nodos de ARM de 64 bits en AWS, con lo cual podrá ejecutar grupos de nodos x86 de 64 bits y de ARM de 64 bits desde el mismo plano de control alojado (tenga en cuenta que no podrá combinar las arquitecturas de CPU dentro del mismo grupo).

Después de esto, expandiremos los planos de control alojados y los grupos de nodos de ARM de 64 bits a otros proveedores locales y de nube.


Sobre el autor

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

Navegar por canal

automation icon

Automatización

Las últimas novedades en la automatización de la TI para los equipos, la tecnología y los entornos

AI icon

Inteligencia artificial

Descubra las actualizaciones en las plataformas que permiten a los clientes ejecutar cargas de trabajo de inteligecia artificial en cualquier lugar

open hybrid cloud icon

Nube híbrida abierta

Vea como construimos un futuro flexible con la nube híbrida

security icon

Seguridad

Vea las últimas novedades sobre cómo reducimos los riesgos en entornos y tecnologías

edge icon

Edge computing

Conozca las actualizaciones en las plataformas que simplifican las operaciones en el edge

Infrastructure icon

Infraestructura

Vea las últimas novedades sobre la plataforma Linux empresarial líder en el mundo

application development icon

Aplicaciones

Conozca nuestras soluciones para abordar los desafíos más complejos de las aplicaciones

Original series icon

Programas originales

Vea historias divertidas de creadores y líderes en tecnología empresarial