vSphere with Tanzu ve NSX ALB (AVI) Kurulum, Devreye Alma ve Uygulama-3

Evren Baycan
5 min readMar 16, 2023

--

İlk 2 serideki NSX ALB ve Supervisor kurulumu ve konfigürasyonuna aşağıdaki link üzerinden erişebilirsiniz.

vSphere with Tanzu ve NSX ALB (AVI) Kurulum, Devreye Alma ve Uygulama-1

vSphere with Tanzu ve NSX ALB (AVI) Kurulum, Devreye Alma ve Uygulama-2

Serinin son yazısında bir Tanzu Kubernetes Cluster oluşturacağız. Ve burada hem YAML hem de HELM üzerinden iki ayrı uygulama kurulumu yapacağız.

Namespace üzerinde Tanzu CLI ulaşabilirsiniz. Kullanmış olduğunuz terminale göre seçiminizi buradan yapabilirsiniz.

CMD ile Supervisor Cluster’a bağlanıyoruz.

kubectl vsphere login --server 80.80.80.11 --vsphere-username administrator@vsphere.local --insecure-skip-tls-verify
kubectl config use-context telco-k8s

Namespace üzerinde şöyle bir tur atalım.

kubectl get namespace
kubectl get sc
kubectl get virtualmachineclasses
kubectl get tanzukubernetesreleases

Tanzu Kubernetes Cluster için bir YAML hazırlıyoruz.

apiVersion: run.tanzu.vmware.com/v1alpha2
kind: TanzuKubernetesCluster
metadata:
name: telco-k8s-cluster
namespace: telco-k8s
spec:
topology:
controlPlane:
replicas: 1
vmClass: best-effort-small
storageClass: tanzu-storage-policy
tkr:
reference:
name: v1.21.6---vmware.1-tkg.1.b3d708a
nodePools:
- name: telco-k8s-pool
replicas: 2
vmClass: best-effort-small
storageClass: tanzu-storage-policy
tkr:
reference:
name: v1.21.6---vmware.1-tkg.1.b3d708a
kubectl apply -f telco-k8s-cluster.yaml

Tanzu Kubernetes Cluster’ın oluşturulması yaklaşık 20–30 dakika sürecek. Eğer süreci izlemek isterseniz aşağıdaki komutu kullanabilirsiniz.

kubectl get events -w

vCenter Inventory üzerinde Namespace üzerine gelerek oluşturulan Kubernetes Cluster VM’leri inceleyebilirsiniz.

NSX ALB üzerinde Tanzu Kubernetes Cluster tanımları otomatik olarak yapıldı.

Tekrar CLI üzerine gelerek yeni oluşturmuş olduğumuz Tanzu Kubernetes Cluster Login oluyoruz.

kubectl vsphere login --server 80.80.80.11 --vsphere-username administrator@vsphere.local --insecure-skip-tls-verify --tanzu-kubernetes-cluster-name telco-k8s-cluster --tanzu-kubernetes-cluster-namespace telco-k8s
kubectl config use-context telco-k8s-cluster

POD Security için erişim tanımı oluşturuyoruz.

kubectl create clusterrolebinding default-tkg-admin-privileged-binding --clusterrole=psp:vmware-system-privileged --group=system:authenticated

Bir Web Server deploy edelim.

kind: Service
apiVersion: v1
metadata:
name: web-server
spec:
selector:
app: hello
tier: frontend
ports:
- protocol: "TCP"
port: 80
targetPort: 80
type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: loadbalancer
spec:
replicas: 2
selector:
matchLabels:
app: hello
template:
metadata:
labels:
app: hello
tier: frontend
spec:
containers:
- name: nginx
image: "nginx"
kubectl get services

Web Server devreye girdi ve NSX ALB üzerinde Load Balancer IP’sini aldı.

Browser üzerinden artık Web Server Index sayfamız geliyor.

NSX ALB üzerinde servisi inceleyebilirsiniz.

Yeni bir uygula deploy edelim bu sefer HELM kullanalım. Benim favorim HELM :)

HELM indirip kubectl client’ın olduğu yere atıyoruz.

HELM repository olarak Bitnami’yi ekliyoruz. Bitnami VMware tarafından satın alındı ama Community tarafı halen kullanıma açık. Bu yüzden oldukça güvenilir.

helm repo add bitnami https://charts.bitnami.com/bitnami

Repository ekledikten sonra aşağıdaki komut ile Bitnami HELM Charts’ları listeleyebilirsiniz.

helm search repo bitnami

HELM parametrelerini kullanarak dağıtacağınız uygulamaları istediğiniz gibi özelleştirebilirsiniz.

Hadi RabbitMQ deploy edelim.

helm install rabbitmq --set auth.password=demo1234 --set persistence.storageClass=tanzu-storage-policy --set persistence.accessMode=ReadWriteMany --set persistence.size=1Gi --set service.type=LoadBalancer bitnami/rabbitmq

POD ayağa kalktı. PV ve PVC’lerimiz otomatik olarak oluştu ve servis IP olarak Load Balancer üzerinden IP ataması yapıldı. Artık RabbitMQ GUI’ye browser üzerinden erişebilirsiniz.

NSX ALB üzerinde servisi inceleyebilirsiniz.

vCenter üzerinden Namespaces kaynaklarınızı inceleyebilirsiniz.

Evet bu serinin sonuna geldik. vSphere 8 ile artık Tanzu iyice oturmuş durumda.

Teşekkürler.

--

--

No responses yet