داشبورد کوبرنیتز

داشبورد کوبرنیتز چیست؟

داشبورد کوبرنیتز چیست؟

داشبورد Kubernetes یک رابط کاربری مبتنی بر وب برای کلاستر Kubernetes است که جزئیات کلاستر Kubernetes را نشان می دهد. این جزئیات، شامل Node های موجود در کلاستر، namespaces، نقش های کلاستر، جزئیات شغل و موارد دیگر است. می توانید تنها با چند کلیک یک برنامه کانتینری شده را از طریق داشبورد Kubernetes پیاده سازی کرده و همه منابع کلاستر را به سهولت مدیریت کنید.

پیش نیاز

قبل از راه اندازی داشبورد Kubernetes، باید کلاستر آن را در حال اجرا داشته باشید. برای آشنایی با نحوه راه اندازی Kubernetes این مقاله را بخوانید.

پیاده سازی داشبود Kubernetes

جهت نصب داشبورد Kubernetes، دستور kubectl را در Node اصلی اجرا کنید

geekflare@kubernetes-master:~$ sudo kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml

namespace/kubernetes-dashboard created

serviceaccount/kubernetes-dashboard created

service/kubernetes-dashboard created

secret/kubernetes-dashboard-certs created

secret/kubernetes-dashboard-csrf created

secret/kubernetes-dashboard-key-holder created

configmap/kubernetes-dashboard-settings created

role.rbac.authorization.k8s.io/kubernetes-dashboard created

clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created

rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created

clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created

deployment.apps/kubernetes-dashboard created

service/dashboard-metrics-scraper created

deployment.apps/dashboard-metrics-scraper created

مشاهده می کنید که نقاط تحویل یا Pods(point of delivery) داشبورد اکنون در حالت اجرا هستند.

geekflare@kubernetes-master:~$ kubectl get pods –all-namespaces

NAMESPACE NAME READY STATUS RESTARTS AGE

kube-system coredns-6955765f44-hwxdq 1/1 Running 0 6m35s

kube-system coredns-6955765f44-z2tdg 1/1 Running 0 6m35s

kube-system etcd-kubernetes-master 1/1 Running 0 6m45s

kube-system kube-apiserver-kubernetes-master 1/1 Running 0 6m45s

kube-system kube-controller-manager-kubernetes-master 1/1 Running 0 6m45s

kube-system kube-proxy-4b5jz 1/1 Running 0 6m35s

kube-system kube-proxy-v26wn 1/1 Running 0 26s

kube-system kube-scheduler-kubernetes-master 1/1 Running 0 6m45s

kubernetes-dashboard dashboard-metrics-scraper-76585494d8-czrtf 1/1 Running 0 2m37s

kubernetes-dashboard kubernetes-dashboard-5996555fd8-5mhxm 1/1 Running 0 2m37s

دسترسی به داشبورد Kubernetes

دستور زیر را برای دسترسی به داشبورد Kubernetes در 192.168.0.107:8001 اجرا کنید(این را به IP خود تغییر هید)

geekflare@kubernetes-master:~$ kubectl proxy –port=8001 –address=’192.168.0.107′ –accept-hosts=”^*$”

Starting to serve on 192.168.0.107:8001

مرورگر خود را باز کرده وبرای ورود به داشبورد Kubernetes به لینک زیر بروید.

http://192.168.0.107:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login

دو راه برای ورود به داشبورد Kubernetes وجود دارد:

توکن(Token)

Kubeconfig

برای ورود، توکن ایجاد کنید

در namespace پیش فرض، یک حساب خدماتی(Service Account) ایجاد کنید.

geekflare@kubernetes-master:~$ kubectl create serviceaccount geekflare -n default

serviceaccount/geekflare created

برای حساب ایجاد شده، قوانین الزام آوری تعیین کنید.

geekflare@kubernetes-master:~$ kubectl create clusterrolebinding geekflare-admin -n default –clusterrole=cluster-admin –serviceaccount=default:geekflare

clusterrolebinding.rbac.authorization.k8s.io/geekflare-admin created

دستور kubectl زیر را برای ایجاد توکن اجرا کنید

geekflare@kubernetes-master:~$ kubectl get secret $(kubectl get serviceaccount geekflare -o jsonpath=”{.secrets[0].name}”) -o jsonpath=”{.data.token}” | base64 –decode

eyJhbGciOiJSUzI1NiIsImtpZCI6ImZxeUhfd0ROdE1qOWxqcFhQODR2NDVFaTJSQU85VHhyUnRneVRCZzBJVUkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRhc2hib2FyZC10b2tlbi02ajhyNSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJkYXNoYm9hcmQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJhNzBiNzZmZC1iMzI1LTRiNTUtYTc5YS0wZDRmNjAwNTI4MTAiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDpkYXNoYm9hcmQifQ.KtOGDMp_llQ1_V5OpJGsXzPlDkKw2y4y9TowlTH7WnU84LZHZLPar65cVOh20kPkRGJZmKkmkjuXKc1VcmBJQQCLSJgXb3G-7-OSC8LvC-3ROA0cjsGqDuFtXvA4bjlRJ1wGmAmaCgO8oeXVHqciEjw9wcH5tPRKGlvXAESmDlxH_rVu_TJpqSAb2pp3V0_fpD7VxU34mSfLEoMImixHbCILt0YGS9VyEJUgzcOdfj2ZvECOEbD_Y5LPLcTe0fkBJvwIiIgwxCttFRXktdExo7Z17WlekZJLcCBzRWTfrWte8Ugf6vfpN7IfJVWqQLpDZ9XtgHavpXXeJbp2FljIFw

برای ورود به داشبورد می توانید از توکن ایجاد شده(همانطور که در بالا نشان داده شده است) استفاده کنید.

Kubeconfig

راه دیگر ورود به سیستم استفاده از فایل پیکربندی Kubernetes است

گزینه Kubeconfig را انتخاب کرده و روی ” Choose Kubeconfig file” کلیک کنید.

از فیل admin.conf، موجود در مسیر $HOME/.kube/config/ استفاده کنید و با موفقیت وارد داشبورد شوید.

رابط داشبود

رابط داشبورد به این شکل خواهد بود

جزئیاتNodeها، حجم های مداوم، namespaces، نقش های کلاستری را که کلاستر Kubernetes اجرا می شوند را مشاهده می کنید.

با استفاده از داشبورد، می توانید کد YAML را در ویرایشگر بنویسید تا منابع جدیدی به کلاستر اضافه شود.

هنگامی که کلاستر، در حال اجرای چندین کار است، گزینه های بصری بیشتری خواهید داشت که به شما می گوید کدام کارها شکست خورده یا به پایان رسیده است. اگر مشکلی در کلاستر وجود دارد، می توانید آن را به راحتی در داشبورد مشاهده کنید

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بستن