|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Instalando SUSE Rancher Prime en un clúster de Google Kubernetes Engine
En esta sección, aprenderás a instalar Rancher utilizando Google Kubernetes Engine.
Si ya tienes un clúster de Kubernetes GKE, salta al paso sobre instalar un ingress. Luego instala el chart de Helm de Rancher siguiendo las instrucciones en esta página.
Requisitos previos
-
Necesitarás una cuenta de Google.
-
Necesitarás una cuenta de facturación de Google Cloud. Puedes gestionar tus cuentas de facturación en la consola de Google Cloud. Para más información sobre la consola de Cloud, visita Guía general de la consola.
-
Necesitarás una cuota de nube para al menos una dirección IP en uso y al menos 2 CPU. Para más detalles sobre los requisitos de hardware para el servidor Rancher, consulta esta sección.
1. Habilita la API de Kubernetes Engine
Sigue los siguientes pasos para habilitar la API de Kubernetes Engine:
-
Visita la página de Kubernetes Engine en la consola de Google Cloud.
-
Crea o selecciona un proyecto.
-
Abre el proyecto y habilita la API de Kubernetes Engine para el proyecto. Espera a que la API y los servicios relacionados sean habilitados. Esto puede tardar varios minutos.
-
Asegúrate de que la facturación esté habilitada para tu proyecto en la nube. Para información sobre cómo habilitar la facturación para tu proyecto, consulta la documentación de Google Cloud.
2. Abre el Cloud Shell
Cloud Shell es un entorno de shell para gestionar recursos alojados en Google Cloud. Cloud Shell viene preinstalado con la herramienta de línea de comandos gcloud y la herramienta de línea de comandos kubectl. La herramienta gcloud proporciona la interfaz de línea de comandos principal para Google Cloud, y kubectl proporciona la interfaz de línea de comandos principal para ejecutar comandos contra clústeres de Kubernetes.
Las siguientes secciones describen cómo lanzar el Cloud Shell desde la Consola de Google Cloud o desde tu estación de trabajo local.
Cloud Shell
Para lanzar el shell desde la Consola de Google Cloud,, ve a la esquina superior derecha de la consola y haz clic en el botón de terminal. Al pasar el ratón sobre el botón, se etiqueta como Activar Cloud Shell.
Shell Local
Para instalar gcloud y kubectl, realiza los siguientes pasos:
-
Instala el Cloud SDK siguiendo estos pasos. El Cloud SDK incluye la herramienta de línea de comandos
gcloud. Los pasos varían según tu sistema operativo. -
Después de instalar el Cloud SDK, instala la herramienta de línea de comandos
kubectlejecutando el siguiente comando:gcloud components install kubectl
En un paso posterior,
kubectlse configurará para usar el nuevo clúster GKE. -
Instala Helm 3 si no está ya instalado.
-
Habilita el soporte experimental de Helm para imágenes OCI con la variable
HELM_EXPERIMENTAL_OCI. Añade la siguiente línea a~/.bashrc(o~/.bash_profileen macOS, o donde sea que tu shell almacene las variables de entorno):export HELM_EXPERIMENTAL_OCI=1
-
Ejecuta el siguiente comando para cargar tu archivo
.bashrcactualizado:source ~/.bashrc
Si estás ejecutando macOS, usa este comando:
source ~/.bash_profile
3. Configura el CLI de gcloud
Configura la configuración predeterminada de gcloud utilizando uno de los siguientes métodos:
-
Usando gcloud init, si deseas que te guíen para establecer los valores predeterminados.
-
Usando gcloud config, para establecer individualmente tu ID de proyecto, zona y región.
-
Usando gcloud init
-
Usando gcloud config
-
Ejecuta gcloud init y sigue las instrucciones:
gcloud init
Si estás utilizando SSH en un servidor remoto, utiliza la opción --console-only para evitar que el comando inicie un navegador:
gcloud init --console-only
-
Sigue las instrucciones para autorizar a gcloud a utilizar tu cuenta de Google Cloud y selecciona el nuevo proyecto que has creado.
4. Confirma que gcloud está configurado correctamente
Ejecutar:
gcloud config list
La salida debería parecerse a lo siguiente:
[compute] region = us-west1 # Your chosen region zone = us-west1-b # Your chosen zone [core] account = <Your email> disable_usage_reporting = True project = <Your project ID> Your active configuration is: [default]
5. Crea un clúster GKE
El siguiente comando crea un clúster de tres nodos.
Reemplaza cluster-name con el nombre de tu nuevo clúster.
Al elegir una versión de Kubernetes, asegúrate de consultar primero la matriz de soporte para encontrar la versión más alta de Kubernetes que ha sido validada para tu versión de Rancher.
Para crear con éxito un clúster GKE con Rancher, tu GKE debe estar en modo Estándar. GKE tiene dos modos de operación al crear un clúster de Kubernetes, Modo Autopilot y Modo Estándar. La configuración del clúster para el modo Autopilot tiene restricciones sobre la edición del espacio de nombres kube-system. Sin embargo, Rancher necesita crear recursos en el espacio de nombres kube-system durante la instalación. Como resultado, no podrás instalar Rancher en un clúster GKE creado en modo Autopilot. Para más información sobre la diferencia entre el modo Autopilot de GKE y el modo Estándar, visita Compara GKE Autopilot y Estándar.
gcloud container clusters create cluster-name --num-nodes=3 --cluster-version=<VERSION>
6. Obtén credenciales de autenticación
Después de crear tu clúster, necesitas obtener credenciales de autenticación para interactuar con el clúster:
gcloud container clusters get-credentials cluster-name
Este comando configura kubectl para utilizar el clúster que has creado.
7. Instala un Ingress
El clúster necesita un Ingress para que Rancher pueda ser accedido desde fuera del clúster. Instalar un Ingress requiere asignar una dirección IP pública. Asegúrate de tener suficiente cuota, de lo contrario, no se podrá asignar la dirección IP. Los límites para las direcciones IP públicas son aplicables a nivel regional por cada suscripción. Puedes utilizar un controlador de Ingress gestionado proporcionado por GCP o un controlador de Ingress de terceros como Traefik.
|
No se recomienda instalar un controlador de Ingress de terceros, como Traefik, si ya se está utilizando un controlador de Ingress gestionado. |
|
Ingress-NGINX EOL: El controlador de la comunidad |
Traefik incluye un proveedor nativo de Ingress NGINX. Esto te permite migrar de NGINX sin reescribir tus objetos de Ingress existentes, ya que Traefik interpretará automáticamente las anotaciones nginx.ingress.kubernetes.io. Si estás actualizando un clúster que ya está utilizando ingress-nginx, sigue esta guía para más información.
Para instalar Traefik, te recomendamos encarecidamente utilizar la aplicación Traefik en la Colección de aplicaciones Rancher Prime. Consulta su documentación para integrarte con Rancher Manager.
8. Obtener IP del Balanceador de Carga
Para obtener la dirección del balanceador de carga, ejecuta:
kubectl get service traefik --namespace=traefik
El resultado debe ser similar al siguiente:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE traefik LoadBalancer 10.0.116.18 40.31.180.83 80:31229/TCP,443:31050/TCP 27m
Guarda el EXTERNAL-IP.
9. Configurar DNS
El tráfico externo al servidor Rancher deberá dirigirse al balanceador de carga que creaste.
Configura el DNS para apuntar a la IP externa que guardaste. Este DNS se usará como la URL del servidor Rancher.
Existen muchas maneras válidas de configurar el DNS. Para obtener ayuda, consulta la documentación de Google Cloud sobre gestionar registros DNS.
10. Instala el chart de Helm de Rancher
A continuación, instala el chart de Helm de Rancher siguiendo las instrucciones en esta página. Las instrucciones de Helm son las mismas para instalar Rancher en cualquier distribución de Kubernetes.
Utiliza el nombre de DNS del paso anterior como la URL del servidor Rancher cuando instales Rancher. Se puede pasar como una opción de Helm. Por ejemplo, si el nombre de DNS es rancher.my.org, podrías ejecutar el comando de instalación de Helm con la opción --set hostname=rancher.my.org.
Al instalar Rancher sobre esta configuración, también necesitarás establecer el nombre del controlador de Ingress que se utilizará con el recurso de Ingress de Rancher:
--set ingress.ingressClassName=traefik
Consulta aquí para el comando de instalación de Helm para tu opción de certificado elegida.
En Rancher v2.7.5, si pretendes utilizar el Ingress GKE predeterminado en tu clúster sin habilitar el modo de clúster nativo de VPC, necesitas establecer la siguiente bandera:
--set service.type=NodePort
Esto es necesario debido a problemas de compatibilidad entre esta configuración y ClusterIP, el tipo predeterminado para cattle-system/rancher.