En Fusion 12.0, la utilidad vctl incorpora una mejora para la compatibilidad con KIND. Con esta mejora, KIND puede utilizar el contenedores vctl en lugar de contenedores Docker como nodos para ejecutar clústeres de Kubernetes locales.
Requisitos previos
De forma predeterminada, vctl asigna 2 GB de memoria para cada máquina virtual de CRX que aloja el nodo de contenedor de vctl. Asegúrese de que la máquina Mac tiene 2 GB de memoria libre cuando se ejecuta un clúster de un solo nodo y 4 GB de memoria libre cuando se ejecuta un clúster de dos nodos. Cuantos más nodos haya configurados en el clúster, se necesitará más memoria libre.
Procedimiento
- En el Mac, abra una ventana de terminal.
- Ejecute el comando vctl system start para iniciar el tiempo de ejecución del contenedor de vctl.
Este comando realiza las siguientes tareas:
- Crea una carpeta bin en la carpeta <carpeta de inicio del usuario>/.vctl.
- Descarga los archivos kubectl, kind y crx.vmdk y los guarda en la carpeta bin.
- Crea un archivo de vínculo de Docker que apunta a /Applications/VMware Fusion.app/Contents/Library/vkd/bin/vctl.
- Ejecute el comando vctl kind.
Este comando realiza las siguientes cuatro tareas:
- Crea una carpeta bin en la carpeta <carpeta de inicio del usuario>/.vctl.
- Descarga los archivos kubectl, kind y crx.vmdk y los guarda en la carpeta bin.
- Crea un archivo de vínculo de Docker que apunta a /Applications/VMware Fusion.app/Contents/Library/vkd/bin/vctl.
-
Crea un contexto de KIND basado en vctl agregando <carpeta de inicio del usuario>/.vctl/bin a la variable de entorno PATH y lo convierte en la primera ruta de acceso que se pueda buscar.
Por lo tanto, en la ventana de Terminal, las herramientas de CLI kubectl/kind/docker de la carpeta <carpeta inicial usuario>/.vctl/bin tendrán prioridad sobre otras versiones existentes de estas herramientas que puedan estar instaladas en otra ubicación.
- El contexto de KIND basado en vctl se perderá si se cierra la ventana de Terminal.
La próxima vez que desee interactuar con los clústeres de Kubernetes, ejecute el comando vctl kind.
Nota:
- vctl no es compatible con el comando kind build.
- De forma predeterminada, vctl asigna 2 GB de memoria y 2 núcleos de CPU para la máquina virtual de CRX que aloja el contenedor de nodos; puede utilizar las opciones --k8s-cpus y --k8s-mem del comando vctl system config para personalizar las configuraciones.
- Cada versión de Fusion solo es compatible con una versión específica de las herramientas de CLI kind y kubectl. Por ejemplo:
- Fusion 12.0.0 es compatible con kind versión 0.8.1 y kubectl versión 1.18.6.
- Fusion 12.1.0 es compatible con kind versión 0.9.0 y kubectl versión 1.19.1.
La utilidad vctl de Fusion 12.1.0 presenta una comprobación de versiones para las herramientas de CLI kind y kubectl. Cuando se ejecuta el comando vctl system start o vctl kind, si las herramientas de CLI kind y kubectl ya existen en la carpeta <carpeta inicial usuario>/.vctl/bin y sus versiones son compatibles con la versión actual de Fusion, el comando vctl no volverá a descargar las herramientas. Si sus versiones no son compatibles con la versión de Fusion actual, el comando vctl descargará las versiones compatibles de las herramientas y eliminará las que no son compatibles.