Terraform VMware Cloud Director Provider v3.12.0 está disponible e introduce muchas funciones y mejoras nuevas.
Presentamos el recurso y la fuente de datos del clúster Kubernetes de Container Service Extension (CSE)
Durante las versiones anteriores del proveedor, recibimos una gran cantidad de comentarios de la comunidad y comprendimos que crear, desplegar y configurar un clúster de Kubernetes usando Entidades definidas en tiempo de ejecución a veces era un desafío y no trivial, ya que requería un profundo entendimiento del funcionamiento interno del CSE.
Este lanzamiento representa un gran avance para los usuarios de CSE al proporcionar un nuevo recurso y una fuente de datos vcd_cse_kubernetes_cluster que simplifica a los usuarios la creación de clústeres de Kubernetes sin tener que lidiar con la complejidad de los métodos genéricos proporcionados en la ya obsoleta Guía de gestión del clúster de Kubernetes.
El nuevo recurso vcd_cse_kubernetes_cluster se ve así:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 dieciséis 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
recurso "vcd_cse_kubernetes_cluster" "mi_clúster" { versión_cse = "4.2.0″ nombre = "mi-clúster" kubernetes_template_id = datos.vcd_catalog_vapp_template.tkg_ova.identificación estructura = datos.vcd_org_vdc.vcc.estructura vdc_id = datos.vcd_org_vdc.vcc.identificación Identificación de red = datos.vcd_network_routed_v2.enrutado.identificación archivo_token_api = vcd_api_token.simbólico.Nombre del archivo plano de control { recuento_máquina = 3 tamaño_disco_gi = 20 tamaño_policy_id = datos.vcd_vm_sizing_policy.tkg_small.identificación id_perfil_almacenamiento = datos.vcd_almacenamiento_perfil.sp.identificación } grupo_trabajador { nombre = "grupo-de-trabajadores-1″ recuento_máquina = 10 tamaño_disco_gi = 100 tamaño_policy_id = datos.vcd_vm_sizing_policy.tkg_small.identificación id_perfil_almacenamiento = datos.vcd_almacenamiento_perfil.sp.identificación |
Los lectores notarán que los parámetros disponibles en este archivo son bastante similares a las opciones que se encuentran en la interfaz de usuario al crear un clúster de Kubernetes con la asistencia. Ya no se usan explícitamente los esquemas RDE, tipos RDE y archivos YAML.
Además, los usuarios experimentarán una forma más sencilla de configurar sus clústeres, ya que ya no necesitarán manipular archivos JSON. Este archivo admite todos los elementos configurables que también se pueden acceder a través de la interfaz de usuario: modificar el tamaño del plano de control, los grupos de nodos de trabajo, habilitar/deshabilitar la visualización del estado del nodo y desactivar la función de "reparación cibernética" (solo 4.1.0).
Este nuevo archivo es compatible con las versiones CSE 4.2.1, 4.2.0, 4.1.1(a) y 4.1.0. También permite la importación de clústeres existentes, para aquellos que utilizan el enfoque genérico para migrar los existentes, y los usuarios pueden explorar los clústeres existentes con la fuente de datos.
Agregar soporte para la Extensión del Servicio de Contenedores (CSE) 4.2.0 y 4.2.1
Esta actualización del proveedor actualiza la guía de instalación para admitir las versiones más recientes de CSE, 4.2.0 y 4.2.1.
Como se mencionó en la sección anterior, la Guía de gestión del clúster de Kubernetes ahora está obsoleta en favor del nuevo archivo y la fuente de datos vcd_cse_kubernetes_cluster.
El repositorio del proveedor ahora incluye todos los esquemas de tipo RDE necesarios para CSE 4.2.x y algunas configuraciones de ejemplo para 4.2.0 y 4.2.1 (ya que difieren en los nombres de configuración, como CAPVCD translation, CPI translation y CSI translation).
Otros cambios y mejoras importantes
Consolidación de discos de VM en la creación para admitir la anulación de discos de plantilla
Un usuario habitual solicitó una característica faltante: anular los tamaños de disco en VDC de aprovisionamiento rápido. El proveedor Terraform v3.12.0 agrega un nuevo campo consolidate_disks_on_create en ambos recursos vcd_vapp_vm y vcd_vm. Cuando se habilita, consolidará los discos durante la creación de la VM. Esto puede ser útil por sí solo, pero también permite anular discos de plantilla al crear máquinas virtuales en VDC de aprovisionamiento rápido.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
expediente "vcd_vapp_vm" "redimensionado" { nombre_vapp = vcd_vapp.web.nombre nombre = "VM de disco OS redimensionado" vapp_template_id = datos.vcd_catalog_vapp_template.mancha.identificación memoria = 2048 CPU = 2 núcleos_cpu = 1 # Los VDC de aprovisionamiento rápido requieren que los discos se consoliden # si se va a cambiar su tamaño consolidar_discos_en_create = definitivo override_template_disk { tipo_bus = "paravirtual" tamaño_en_mb = "22384″ Número de autobús = 0 mecanismo numérica = 0 |
yops = 0
perfil_almacenamiento = "*"
}
}
Soporte de copia de VM
Entre ambos recursos de VM vcd_vapp_vm y vcd_vm, se ha agregado un nuevo campo llamado copy_from_vm_id que permite crear una máquina virtual a partir de una ya existente en lugar de depender de una plantilla de catálogo o una máquina virtual vacía.
datos "vcd_vapp_vm" "existente" { nombre_vapp = datos.vcd_vapp.web.nombre nombre = "web1″ } expediente "vcd_vapp_vm" "vm-copia" { estructura = "org" vcc = "vcc" copiar_de_vm_id = datos.vcd_vapp_vm.existente.identificación # ID de máquina virtual de origen nombre_vapp = datos.vcd_vapp_vm.existente.nombre_vapp nombre = "Copia de máquina virtual" encendido = FALSO } |
Crear plantillas de vApp a partir de vApps o máquinas virtuales independientes
La última característica que mejora el control de VM es este expediente. vcd_catalog_vapp_template presenta una opción para capturar plantillas de vApp desde vApps existentes o máquinas virtuales independientes. Se puede utilizar un nuevo campo capture_vapp que acepta el ID de la vApp de origen. Además, los recursos vcd_vapp_vm y vcd_vm, así como las fuentes de datos, exponen atributos vapp_id que se pueden especificar como fuente en capture_vapp.source_id. Esto es especialmente útil para máquinas virtuales independientes que tienen vApps ocultas.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
datos "vcd_catalogo" "micifuz" { estructura = "v51″ nombre = "catálogo de demostración" } expediente "vcd_catalog_vapp_template" "desde-vapp" { estructura = "v51″ id_catálogo = datos.vcd_catalogo.micifuz.identificación nombre = "desde-vapp" captura_vapp { fuente_id = vapp_vcd.web.idpersonalizar_al_instanciar = FALSE } contrato { contrato_almacenamiento_en_seg = 3600 * 24 * 3 } # Usar dependencia para asegurar que todas las máquinas virtuales estén presentes en la vApp que # se está capturando depende_de = [vapp_vcd_vm.VM vacía) } |
Configuración de anuncios de ruta para redes Org VDC enrutadas
Campo de sucesión de publicidad de ruta route_advertisement_enabled en el expediente vcd_network_routed_v2 que permite a los usuarios habilitar la publicidad de ruta por red enrutada, que funciona anejo con IP Space anuncio de ruta
Tira de nuevos bienes y fuentes de datos
- 1 nuevo expediente:
- 2 nuevas fuentes de datos:
Hay más funciones y mejoras, que puedes ver en la registro de cambios del proyecto. Y, como siempre, estamos esperando sus comentarios y sugerencias en Problemas de GitHub y #vcd-terraform-dev Canal Slack (vmwarecode.slack.com).