Você provisiona Tanzu Kubernetes clusters invocando a API declarativa Tanzu Kubernetes Grid Service usando kubectl e uma especificação de cluster definida usando YAML. Depois de provisionar um cluster, você o opera e implanta cargas de trabalho nele usando kubectl.
O fluxo de trabalho fornece um procedimento de ponta a ponta para o processo de provisionamento do cluster. Cada uma das etapas tem links para mais informações sobre a tarefa específica.
Pré-requisitos
Conclua os seguintes pré-requisitos:
Procedimento
- Baixe e instale o Kubernetes CLI Tools for vSphere. Consulte o Baixe e instale o Kubernetes CLI Tools for vSphere.
- Usando o vSphere Plugin for kubectl, autentique-se com o Supervisor Cluster. Consulte o Conecte-se ao Supervisor Cluster como um usuário do vCenter Single Sign-On.
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
- Usando kubectl, alterne o contexto para o vSphere Namespace no qual você planeja provisionar o cluster do Tanzu Kubernetes.
kubectl config get-contexts
kubectl config use-context SUPERVISOR-NAMESPACE
Por exemplo:
kubectl config use-context tkgs-cluster-ns
- Liste as associações de classe de máquina virtual disponíveis. Consulte o Classes de máquina virtual para Tanzu Kubernetes clusters.
Use o seguinte comando para listar todas as associações de classe de VM que estão disponíveis no
vSphere Namespace onde você implanta o cluster.
kubectl get virtualmachineclassbindings
Observação: O comando
kubectl get virtualmachineclasses
lista todas as classes de VM presentes no
Supervisor Cluster. Como você deve associar classes de VM ao
vSphere Namespace, só pode usar as classes de VM que estão vinculadas ao namespace de destino.
- Obtenha a classe de armazenamento padrão disponível descrevendo o namespace.
kubectl describe namespace SUPERVISOR-NAMESPACE
- Liste os Tanzu Kubernetes releases disponíveis.
kubectl get tanzukubernetesreleases
Observação: O comando
kubectl get virtualmachineimages
retorna informações genéricas sobre as máquinas virtuais.
- Construa o arquivo YAML para provisionar um cluster do Tanzu Kubernetes.
- Comece com um dos arquivos YAML de exemplo. Consulte o Exemplos para provisionamento de clusters Tanzu Kubernetes usando a API Tanzu Kubernetes Grid Service v1alpha1.
Por exemplo, o seguinte arquivo YAML provisiona um cluster mínimo usando todos os padrões disponíveis:
apiVersion: run.tanzu.vmware.com/v1alpha1 #TKGS API endpoint
kind: TanzuKubernetesCluster #required parameter
metadata:
name: tkgs-cluster-1 #cluster name, user defined
namespace: tgks-cluster-ns #vsphere namespace
spec:
distribution:
version: v1.19 #Resolves to latest TKR 1.19 version
topology:
controlPlane:
count: 1 #number of control plane nodes
class: best-effort-medium #vmclass for control plane nodes
storageClass: vwt-storage-policy #storageclass for control plane
workers:
count: 3 #number of worker nodes
class: best-effort-medium #vmclass for worker nodes
storageClass: vwt-storage-policy #storageclass for worker nodes
- Use as informações coletadas da saída dos comandos anteriores para preencher o YAML do cluster, incluindo o namespace, a classe de armazenamento e a classe de máquina virtual.
- Personalize o cluster conforme necessário, consultando a lista completa de parâmetros de configuração do cluster. Consulte o Parâmetros de configuração para Tanzu Kubernetes clusters usando a API Tanzu Kubernetes Grid Service v1alpha1.
- Salve o arquivo como
tkgs-cluster-1.yaml
ou semelhante.
- Provisione o cluster executando o seguinte comando kubectl.
kubectl apply -f CLUSTER-NAME.yaml
Por exemplo:
kubectl apply -f tkgs-cluster-1.yaml
Resultado esperado:
tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 created
- Monitore a implantação de nós do cluster usando kubectl. Consulte o Monitore o Tanzu Kubernetes status do cluster usando o kubectl.
kubectl get tanzukubernetesclusters
Resultado da amostra:
NAME CONTROL PLANE WORKER DISTRIBUTION AGE PHASE
tkgs-cluster-2 1 3 v1.19.7+vmware.1-tkg.1.c40d30d 7m59s running
- Monitore a implantação de nós do cluster usando o vSphere Client. Consulte o Monitore o status do Tanzu Kubernetes cluster usando o vSphere Client.
Por exemplo, no inventário do vSphere, você deve ver os nós da máquina virtual sendo implantados no namespace.
- Execute comandos adicionais para verificar o provisionamento do cluster. Consulte Usar comandos operacionais de cluster do Tanzu Kubernetes .
Por exemplo:
kubectl get tanzukubernetescluster,cluster-api,virtualmachinesetresourcepolicy,virtualmachineservice,virtualmachine
- Usando o vSphere Plugin for kubectl, faça login no cluster. Consulte o Conectar-se a um Tanzu Kubernetes cluster como um vCenter Single Sign-On usuário.
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME \
--tanzu-kubernetes-cluster-name CLUSTER-NAME --tanzu-kubernetes-cluster-namespace NAMESPACE-NAME
- Verifique o provisionamento do cluster usando os seguintes comandos kubectl.
kubectl cluster-info
kubectl get nodes
kubectl get namespaces
kubectl api-resources
- Implante uma carga de trabalho de exemplo e verifique a criação do cluster. Consulte o Implantar cargas de trabalho em Tanzu Kubernetes clusters.
- Operacionalize o cluster implantando extensões TKG. Consulte o Implantar extensões TKG em Tanzu Kubernetes clusters.