Instalando Migrate to Containers
En este tema, se describe cómo instalar Migrate to Containers en un clúster de procesamiento.
Un clúster de procesamiento es un clúster de Google Kubernetes Engine (GKE) o GKE Enterprise con componentes de Migrate to Containers instalados que usas para migrar VMs antes de implementarlas en tu clúster de producción.
En los pasos de este tema, usarás la herramienta de línea de comandos de
migctl
o la consola de Google Cloud para instalar los componentes necesarios de
Migrate to Containers en un clúster de GKE que ya creaste.
Después de haber implementado tus VM migradas como imágenes en un clúster de producción (suponiendo que el clúster de procesamiento ya no es necesario para realizar migraciones nuevas), puedes borrar el clúster de procesamiento.
Acerca de migctl
Además de la asistencia en la consola de Google Cloud, Migrate to Containers incluye la herramienta de línea de comandos de migctl
que puedes usar para realizar todas las partes de una migración:
Cuando uses un clúster de procesamiento de Google Kubernetes Engine (GKE) o de GKE Enterprise en Google Cloud, ejecuta
migctl
en Cloud Shell.Cuando usas un clúster de procesamiento de Google Distributed Cloud para Bare Metal, puedes instalar y ejecutar
migctl
en tu estación de trabajo de administrador.
Para obtener información sobre cómo descargar migctl
, consulta Descargas de Migrate to Containers.
Antes de comenzar
Completa los requisitos de migración para tu entorno de migración:
- Requisitos previos para migrar VMs de Linux con clústeres de procesamiento de Google Cloud.
- Prerrequisitos para migrar aplicaciones de Windows IIS con clústeres de procesamiento de Google Cloud.
Configura tu entorno como se describe en Habilita servicios de Google y configura cuentas de servicio.
Configura un clúster de procesamiento.
Este es un clúster de Google Kubernetes Engine (GKE) o GKE Enterprise creado específicamente para migrar VMs con Migrate to Containers.
Para ejecutar los comandos de instalación o desinstalación con
migctl
, te recomendamos que tengas permisos de administrador para el clúster en el que se realizará la instalación.
Instala Migrate to Containers
Migctl en Google Cloud
Usa comandos migctl
a fin de instalar Migrate for Containers y configurarlo con los elementos básicos que necesitas para migrar.
Asegúrate de haber creado una cuenta de servicio para acceder a Container Registry y Cloud Storage y de haber descargado el archivo de claves JSON, como se describe en Configura una cuenta de servicio.
Visita el menú de GKE en la consola de Google Cloud.
En la lista de clústeres, ubica el que usarás como clúster de procesamiento y haz clic en el botón Conectar.
En el diálogo Conéctate al clúster, en Acceso a la línea de comandos, haz clic en Ejecutar en Cloud Shell para ejecutar el comando de conexión en Cloud Shell.
gcloud container clusters get-credentials my-cluster --zone us-central1-c --project my-project
Configura los componentes de Migrate to Containers en tu clúster de procesamiento mediante la ejecución del comando
migctl setup install
en Cloud Shell y especifica la cuenta de servicio de instalación:migctl setup install --json-key=m4a-install.json
Para validar la instalación de Migrate to Containers, ejecuta el comando
migctl doctor
.Antes de que se complete la instalación, es posible que veas un mensaje como el siguiente. Si es así, espera unos minutos para que finalice la instalación antes de ejecutar
migctl doctor
.migctl doctor [!] Deployment Validation checks failed.
En el siguiente resultado de ejemplo, la marca de verificación indica que Migrate to Containers se implementó correctamente y que se configuraron los repositorios de datos necesarios.
migctl doctor [✓] Deployment [✓] Docker registry [✓] Artifacts repo [!] Source Status
Consulta Define repositorios de datos si hay un error asociado con el registro de Docker o el repositorio de artefactos.
migctl en Google Distributed Cloud Virtual para Bare Metal
- Establece tu ID del proyecto predeterminado:
gcloud config set project project-id
- Implementa migctl en tu estación de trabajo de administrador:
wget https://modernize-release.storage.googleapis.com/v1.15.0/linux/amd64/migctl
sudo cp migctl /usr/local/bin/
sudo chmod +x /usr/local/bin/migctl
. <(migctl completion bash)
- Configura los componentes Migrate to Containers en tu clúster de procesamiento mediante la ejecución del comando migctl setup install:
migctl setup install --anthos-bm --gcp-project myproject --gcp-region us-central1 --json-key m4a-install.json
Cuando se le otorguen todos los argumentos, incluidos--gcp-project
,--gcp-region
y--json-key
,migctl
creará un registro de Docker y repositorios de artefactos predeterminados en Container Registry y Cloud Storage, respectivamente. Esto significa que las imágenes y los artefactos de migración se subirán a Google Cloud. Es posible definir otros registros de Docker y configurarlos como predeterminados para la migración o configurarlos para que se usen en una migración específica. - Para validar la instalación de Migrate to Containers, ejecuta el comando migctl doctor.
Antes de que se complete la instalación, es posible que veas un mensaje como el siguiente. Si es así, espera unos minutos para que finalice la instalación antes de ejecutar
migctl doctor
.migctl doctor [!] Deployment Validation checks failed.
En el siguiente resultado de ejemplo, la marca de verificación indica que Migrate to Containers se implementó correctamente, pero aún no configuraste los repositorios de datos necesarios:migctl doctor [✓] Deployment [!] Docker registry [!] Artifacts repo [!] Source Status
- Configura los repositorios de datos que requiere el clúster como se describe en Define repositorios de datos.
- Si es necesario, configura un proxy HTTPS para el acceso saliente a Internet como se describe en Configura un proxy HTTPS.
Consola
Abre la página Migrate to Containers en la consola de Google Cloud.
Haz clic en la pestaña Clústeres de procesamiento para mostrar una tabla con los clústeres disponibles.
Haz clic en Agregar clúster de procesamiento.
Selecciona el tipo de carga de trabajo que se migrará como Linux o Windows y, luego, selecciona Siguiente.
Selecciona el clúster en la lista desplegable y, luego, elige Siguiente.
Selecciona el bucket del repositorio de artefactos.
De forma predeterminada, Migrate to Containers usa Cloud Storage con el nombre del bucket especificado. De forma opcional, puedes establecer el nombre del bucket aquí. Asegúrate de haber revisado los requisitos descritos en Definición de repositorios de datos.
Selecciona el nombre del proyecto del repositorio de imágenes.
De forma predeterminada, Migrate to Containers usa el proyecto actual para Container Registry. De manera opcional, puedes cambiar el nombre del proyecto aquí. Asegúrate de haber revisado los requisitos descritos en Definición de repositorios de datos.
Haga clic en Continuar.
Especifica la cuenta de servicio del repositorio de artefactos que se usa para acceder a Cloud Storage. Puedes crear una cuenta de servicio nueva o seleccionar una existente. Consulta Configura cuentas de servicio para obtener más información.
Haz clic en Continuar para revisar la configuración y, luego, en Implementar a fin de instalar Migrate to Containers en tu clúster.
Cuando se complete la instalación, verás el nombre del clúster en la pestaña Clústeres de procesamiento con el estado Listo.
Opciones de instalación
Puedes crear clústeres de varios tamaños y opciones de configuración. Por ejemplo, puedes tener un clúster con varios grupos de nodos. Luego, se usa un grupo de nodos para procesar migraciones, un grupo de nodos para ejecutar cargas de trabajo y otro grupo de nodos para otras operaciones.
De forma predeterminada, Migrate to Containers se instala en todos los nodos del clúster. Para controlar qué nodos usa Migrate to Containers, puedes usar las opciones --node-selectors
y --tolerations
para el comando migctl setup install
:
--node-selectors LABEL1=VALUE1,LABEL2=VALUE2,...
Especifica una lista separada por comas de pares etiqueta-valor que determinan los nodos que usa Migrate to Containers. Consulta Crea y administra etiquetas para obtener más información sobre el uso de etiquetas.
--tolerations KEY1=VALUE1:EFFECT1,KEY2=VALUE2:EFFECT2,...
Especifica una lista separada por comas de pares clave-valor asociados a un efecto que, en conjunto, especifican un taint de nodo. Una tolerancia significa que los pods pueden ejecutarse en el taint de nodo especificado por el par clave-valor y el efecto.
Si omites EFFECT o VALUE, las tolerancias coinciden con taints con KEY,VALUE (para cualquier EFFECT) o con KEY (para cualquier VALUE:EFFECT).
Consulta Controla la programación con taints de nodo para obtener más información sobre los taints de nodo.
¿Qué sigue?
- Obtén más información sobre cómo actualizar a la versión más reciente.
- Obtén más información sobre cómo definir repositorios de datos.
- Obtén más información para configurar un proxy HTTPS.