В этой теме мы собираемся рассмотреть панель инструментов Kubernetes Webui. Интернет веб-пользователь позволяет просматривать нашу игровую площадку и выполнять административные задачи и такие вещи. Это дает хороший способ посмотреть, что вы сделали на своей детской площадке, не используя командную строку. Итак, давайте начнем!
Первое, что мы делаем, это использовать Kubectl Применить
Команда для приложения конфигурации к ресурсу по указанному имени файла. Имя ресурса должно быть указано, и если ресурс не существует, он будет создан. В нашем случае файл предоставляется Kubernetes Reppo:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc2/aio/deploy/recommended.yaml
После того, как мы применим рекомендуемый файл, он создаст пространство имен для приборной панели Kubernetes, которая включает в себя скребок и приборную панель Metriks. Если вы хотите приблизить, посмотрите, что это Ямл
Файл делает, вам нужно получить его в вашей локальной системе:
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc2/aio/deploy/recommended.yaml
И тогда вы можете посмотреть на контент конфигурации Kubernetes через образец Рекомендуется. YAML
файл:
less recommended.yaml
Мы можем видеть все отдельные объекты Kubernetes, которые были созданы Kubectl Применить
команда. Секреты, карта конфигурации, создание ролей, роль кластера вместе с привязкой. Посмотрев на этот образец и сам развертывание вы можете узнать много о Ямл
Формат, и вы можете увидеть, что на самом деле делает в нашей кластере детской площадки, чтобы установить приборную панель.
Двигаться вперед к следующей команде
kubectl get pods --all-namespaces
Мы увидим, что 2 стручка выпускаются — сама приборная панель и скруппер. Еще один способ посмотреть на это:
kubectl --namespace=kubernetes-dashboard get pods
Здесь нам нужно указать пространство имен . Далее нам нужно создать Ямл
Файл Чтобы создать пользователь администратора в приборной панели Kubernetes. Пожалуйста, вставьте следующее на admin.yaml
файл:
apiVersion: v1 kind: ServiceAccount metadata: name: admin namespace: kubernetes-dashboard
Этот файл создаст учетную запись службы под названием админ
в пространстве имен Kubernetes-Dashboard
Отказ Примените этот файл:
kubectl apply -f admin.yaml
Как только мы выполним файл, он создает учетную запись службы админ
. Далее нам нужно создать связывание роли кластера администратора. Пожалуйста, вставьте следующее на admin_cluster.yaml
файл:
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: admin roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin namespace: kubernetes-dashboard
Требуется сервисная учетная запись, которую мы только что создали, и она создает роль кластера под названием admin_cluster
Отказ Далее нам нужно применить это:
kubectl apply -f admin_cluster.yaml
Следующая команда, которую мы собираемся использовать, находится в пространстве имен Kubernetes-Dashboard
где мы рассмотрим секрет. Мы должны сделать трюк здесь, чтобы получить этот секрет:
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin | awk '{print $1}')
Когда мы сделаем это, мы увидим, что у нас есть зашифрованный токен. Дело в том, чтобы получить токен для Админ
Пользователь, который мы создали, скопируйте его и сохраните его, чтобы использовать, если для регистрации на приборной панели Kubernetes Webui. Пожалуйста, скопируйте токен в любом текстовом файле, который вы хотите, и сохраните его для будущего использования. Движение вперед, мы собираемся начать прокси, чтобы выставить панель инструментов на свой локальныйhost и запустить ее на фоне:
kubectl proxy &
Теперь, если вы начали свою приборную панель не на локальной машине, вам нужно включить туннель на панель инструментов Kubernetes, чтобы сделать его доступным от вашего localhost
Отказ Пожалуйста, откройте новое окно терминала и запустите следующую команду:
ssh -g -L 8001:localhost:8001 -f -N
После того, как вы запустите команду, вы можете использовать следующие localhost: 8001 ссылка Чтобы токен на приборную панель, пожалуйста, скопируйте токен из текстового файла и вставьте его, и нажмите Войти
Отказ Если вы новичок для этого, пожалуйста, проводите время, оглядываясь вокруг, чтобы понять меню и как это работает. Вот пример приборной панели Kubernetes:
Это может произойти, что ваши приборные устройства находятся в В ожидании штат. Обычно причина в том, что сеть Kubernetes не настроена. Вы можете заметить, что Coredns.
или Kube-DNS
застряли в В ожидании штат. Не волнуйтесь, это ожидаемая часть дизайна. Kubernetes — это сетевой провайдер Agnostic, поэтому вы должны установить сетевое решение POD на ваш выбор, например, Фланель или Калико . Вы должны установить сетевое решение POD до Coredns.
или Kube-DNS
может быть полностью развернут. В этой статье мы будем использовать Калико в качестве сетевого решения POD. Итак, пожалуйста, выполните следующую команду, чтобы инициализировать MASTER:
kubeadm init --pod-network-cidr=192.168.0.0/16
По желанию. Если вы не настроили свой kubectl
Тем не менее, пожалуйста, выполните следующие команды:
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
Последний шаг будет установить Калико :
kubectl apply -f https://docs.projectcalico.org/v3.9/manifests/calico.yaml
Теперь подтвердите, что все стручки работают и работают со следующей командой:
watch kubectl get pods --all-namespaces
Вот и все! Теперь вы готовы бежать Kubectl Proxy
Команда и доступ к вашим приборной панели, работающим на однобузневом кластере Kubernetes, оснащенным Calico Отказ
Для записи это может быть вариант, когда вам нужно удалить Taints на мастере, чтобы вы могли запланировать свои стручки на него. В этом случае, пожалуйста, выполните следующую команду:
kubectl taint nodes --all node-role.kubernetes.io/master-
Вы увидите результат, этот узел был незанятым. После этого подтвердите, что теперь у вас есть узел в вашем кластере со следующей командой:
kubectl get nodes -o wide
В результате у нас сейчас есть запущенная приборная панель Kubernetes, которая оснащена решением виртуального сетевого взаимодействия CALICO, и мы можем сделать вывод, что приборная панель Kubernetes является действительно отличным способом понять и визуализировать, что происходит в вашем кластере.
Оригинал: «https://dev.to/appfleet/kubernetes-dashboard-webui-3ii»