Eliminando a Barreira do SO: vSphere Kubernetes Service 3.6 Agora Suporta RHEL 9

Para muitas equipes de plataforma corporativas, a adoção não é impedida pelos recursos do Kubernetes — é impedida pelo sistema operacional (OS). Você pode desejar o gerenciamento automatizado do ciclo de vida do vSphere Kubernetes Service (VKS), mas não pode abandonar os padrões do Red Hat Enterprise Linux (RHEL) que sustentam sua conformidade de segurança, modelos de licenciamento e cadeias de ferramentas operacionais. Historicamente, isso forçava uma escolha difícil: adotar uma plataforma gerenciada e reconstruir todo o seu stack operacional em um novo OS (como Ubuntu ou Photon), ou permanecer na infraestrutura legada apenas para manter seu OS. Com o lançamento do VKS 3.6, estamos removendo essa fricção. Temos o prazer de anunciar o suporte a Build Your Own Image (BYOI) para RHEL 9. Isso não se trata apenas de adicionar mais uma opção ao menu; trata-se de reconhecer que a melhor plataforma é aquela que se integra perfeitamente ao seu ambiente existente, sem forçar você a reconstruir sua base.
O "Imposto UBI" e Por Que o OS Importa
Por que o OS subjacente do node é um fator tão decisivo? Para muitos, a questão se resume a suporte e eficiência de licenciamento. Quando as organizações constroem seu stack de aplicações sobre Red Hat Universal Base Images (UBI) e esses contêineres UBI rodam em um host RHEL, eles herdam automaticamente o status de suporte do host. Isso proporciona suporte de ponta a ponta da Red Hat para todo o stack. O VKS 3.6 permite que você mantenha esse suporte de ponta a ponta da Red Hat ao integrar nodes RHEL 9 diretamente ao gerenciamento do ciclo de vida do VKS, preservando sua cadeia de suporte e postura de conformidade sem sacrificar a automação moderna da plataforma.
Como Funciona: O Workflow do Image Baker
Não queríamos apenas dar suporte ao RHEL; queríamos dar a você controle sobre como ele é construído. O VKS 3.6 introduz a ferramenta Image Baker através do VCF CLI. O Image Baker é uma ferramenta especializada projetada para criar imagens de VM personalizáveis através de um processo de construção declarativo e sistemático para o VKS. Ao contrário das abordagens tradicionais que tiram snapshots de VMs em execução, o Image Baker utiliza um backend BuildKit baseado em OCI para organizar sistematicamente o sistema de arquivos. Isso ajuda a garantir que suas imagens sejam limpas, compatíveis e contenham os componentes exatos do Kubernetes exigidos pelo VKS.
Passo 1: Definir a Especificação da Imagem
Primeiro, certifique-se de seguir os pré-requisitos aqui [blocked]. Uma vez concluído, podemos definir um arquivo de configuração (por exemplo, rhel-9.yaml) que especifica a versão do OS e a distribuição do Kubernetes. Para RHEL, você aponta explicitamente para a Red Hat Universal Base Image (UBI). Você também pode personalizar profundamente o node nesta etapa — aumentando o tamanho do disco, instalando ferramentas operacionais ou endurecendo o OS desabilitando serviços. Para este exemplo, construiremos uma imagem simples, mas se você estiver procurando por mais opções de personalização, consulte a Documentação Técnica [blocked].
apiVersion: imageconfiguration.vmware.com/v1alpha1
kind: Image
metadata:
# name format: {os}-{os-version}-{arch}-{kubernetes-version}---{vmware-version}
name: rhel-9-amd64-v1.35.0---vmware.2-vkr.4
spec:
osSpec:
name: rhel
version: "9"
# Reference the official Red Hat UBI image.
image: registry.access.redhat.com/ubi9/ubi
kubernetesSpec:
# Reference the VKS Kubernetes distribution image
image: projects.packages.broadcom.com/vsphere/iaas/kubernetes-release/1.35.0/kubernetes-distribution-image:v1.35.0_vmware.2-vkr.4
# Optional: Customize Node Configuration
diskSize: 20Gi
apiVersion: imageconfiguration.vmware.com/v1alpha1
kind: Image
metadata:
# name format: {os}-{os-version}-{arch}-{kubernetes-version}---{vmware-version}
name: rhel-9-amd64-v1.35.0---vmware.2-vkr.4
spec:
osSpec:
name: rhel
version: "9"
# Reference the official Red Hat UBI image.
image: registry.access.redhat.com/ubi9/ubi
kubernetesSpec:
# Reference the VKS Kubernetes distribution image
image: projects.packages.broadcom.com/vsphere/iaas/kubernetes-release/1.35.0/kubernetes-distribution-image:v1.35.0_vmware.2-vkr.4
# Optional: Customize Node Configuration
diskSize: 20Gi
Passo 2: Definir Credenciais e "Bake"
Como este processo puxa de registros da Red Hat, você deve exportar suas credenciais de assinatura como variáveis de ambiente. Em seguida, use o comando vcf kr bake do VCF CLI para gerar a imagem.
# Set your Red Hat credentials
export RH_USERNAME="your-username"
export RH_PASSWORD="your-password"
# Ensure you have the VCF kubernetes-release plugin version 3.6 installed
vcf plugin list
# If "kubernetes-release" is missing install it
sudo -E vcf plugin install kubernetes-release --version 3.6
# Bake the image using VCF CLI
sudo -E vcf kr bake -f rhel-9.yaml
# If any issues, add `--log-level DEBUG` at the end of the vcf kr bake command
# Set your Red Hat credentials
export RH_USERNAME="your-username"
export RH_PASSWORD="your-password"
# Ensure you have the VCF kubernetes-release plugin version 3.6 installed
vcf plugin list
# If "kubernetes-release" is missing install it
sudo -E vcf plugin install kubernetes-release --version 3.6
# Bake the image using VCF CLI
sudo -E vcf kr bake -f rhel-9.yaml
# If any issues, add `--log-level DEBUG` at the end of the vcf kr bake command
A ferramenta cuida do trabalho pesado: ela puxa a UBI base, instala os componentes do Kubernetes (kubelet, kubeadm, CNI), aplica configurações de segurança e empacota tudo em um arquivo OVA padronizado localizado no diretório artifacts/.
Implantação de Clusters RHEL: Zero Fricção
Uma vez que a imagem é "assada" (baked), usá-la é incrivelmente simples. O workflow operacional permanece idêntico à implantação de clusters VKS padrão, preservando a experiência de "painel único" no VCF.
- Importar: Faça o upload do seu OVA RHEL 9 gerado para a Content Library.
- Anotar: Na sua definição YAML de cluster, você especifica a anotação de resolução de OS. Você pode aplicar isso em dois lugares — o Control Plane e os pools de Worker Node — para garantir que o cluster inteiro rode em RHEL (ou aplicar apenas aos worker nodes para um cluster de OS misto).
apiVersion: cluster.x-k8s.io/v1beta2
kind: Cluster
metadata:
name: rhel-cluster
namespace: rhel-ns
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
spec:
clusterNetwork:
pods:
cidrBlocks:
- 193.0.0.0/16
serviceDomain: managedcluster1.local
services:
cidrBlocks:
- 198.201.0.0/16
topology:
classRef:
name: builtin-generic-v3.6.0
controlPlane:
metadata:
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
replicas: 1
version: v1.35.0---vmware.2-vkr.4
workers:
machineDeployments:
- class: node-pool
metadata:
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
name: node-pool-1
replicas: 2
variables:
- name: vmClass
value: best-effort-medium
- name: storageClass
value: wcpglobal-storage-profile
apiVersion: cluster.x-k8s.io/v1beta2
kind: Cluster
metadata:
name: rhel-cluster
namespace: rhel-ns
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
spec:
clusterNetwork:
pods:
cidrBlocks:
- 193.0.0.0/16
serviceDomain: managedcluster1.local
services:
cidrBlocks:
- 198.201.0.0/16
topology:
classRef:
name: builtin-generic-v3.6.0
controlPlane:
metadata:
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
replicas: 1
version: v1.35.0---vmware.2-vkr.4
workers:
machineDeployments:
- class: node-pool
metadata:
annotations:
run.tanzu.vmware.com/resolve-os-image: os-name=rhel
name: node-pool-1
replicas: 2
variables:
- name: vmClass
value: best-effort-medium
- name: storageClass
value: wcpglobal-storage-profile
- Implantar: Aplique a configuração (
kubectl apply -f cluster.yaml), e o VKS cuida do resto — provisionando control planes, worker nodes e configurando a rede. Você pode verificar o status do cluster usandokubectl get cluster rhel-cluster -n rhel-ns. Uma vez que o cluster esteja pronto, obtenha okubeconfigcom o VCF CLI oukubectl, e então verifique se os nodes estão rodando RHEL 9 com sucesso usando comandoskubectlpadrão:
$ kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION OS-IMAGE
rhel-control-plane-9x4q2 Ready control-plane 5m22s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
rhel-worker-pool-1-5d697f8d-8k2j4 Ready <none> 4m10s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
rhel-worker-pool-1-5d697f8d-m9n2p Ready <none> 4m05s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
$ kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION OS-IMAGE
rhel-control-plane-9x4q2 Ready control-plane 5m22s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
rhel-worker-pool-1-5d697f8d-8k2j4 Ready <none> 4m10s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
rhel-worker-pool-1-5d697f8d-m9n2p Ready <none> 4m05s v1.35.0+vmware.2 Red Hat Enterprise Linux 9.7
Flexibilidade Avançada: Clusters Mistos e Upgrades
Flexibilidade é o tema central do VKS 3.6. Sabemos que as migrações nem sempre são "tudo ou nada".
- Clusters de Nodes Mistos: Agora você pode executar clusters com sistemas operacionais mistos. Por exemplo, você pode manter seus nodes de Control Plane em Ubuntu ou Photon OS, enquanto executa seus pools de Worker Node em RHEL 9 para suportar suas necessidades específicas de licenciamento de aplicações.
- Upgrades Sem Interrupção (Seamless Upgrades): Mesmo que você esteja construindo sua própria imagem, o VKS ainda orquestra o processo de upgrade. Ao fazer upgrade de um cluster RHEL existente, basta fornecer o OVA RHEL mais recente, e o VKS gerencia o rolling upgrade dos nodes, ajudando a garantir zero tempo de inatividade.
Atendendo Você Onde Você Está
O VKS 3.6 representa uma mudança na forma como abordamos o Kubernetes corporativo. Estamos passando de padrões rígidos para escolhas mais seguras e adaptáveis. Seja você uma empresa otimizando o licenciamento da Red Hat ou um cliente procurando um caminho de migração suave, o VKS 3.6 está pronto para você. Comece a planejar sua migração hoje — construa sua imagem, mantenha seus padrões e deixe o VKS cuidar do resto.
Descubra mais no Blog VMware Cloud Foundation (VCF) Assine para receber as últimas postagens em seu e-mail. Digite seu e-mail… Assinar
Precisa de ajuda com suas soluções de TI?
A VirtuAllIT Solutions oferece consultoria especializada em virtualização, cloud computing e infraestrutura tecnológica.

