OKD console#
OKD console — аналог инструмента администрирования kubectl в виде одностраничного веб-приложения.
Функции OKD console включают:
проксирование API DropApp в
/api/DropApp;предоставление дополнительных API для взаимодействия с кластером;
обслуживание всех статических ресурсов внешнего интерфейса;
аутентификацию.
OKD console работает как pod на узлах плоскости управления.
Получите доступ к информационной панели OKD, которая собирает высокоуровневую информацию о кластере, перейдя в раздел «Home» → «Dashboards» → «Overview».
Панель управления OKD console состоит из следующих вкладок: Details, Cluster Inventory, Cluster Capacity, Cluster Utilization, Events, Top Consumers.
Details предоставляет краткий обзор деталей кластера.
Статус включает в себя ok, error, warning, in progress, и unknown. Ресурсы могут добавлять собственные имена статусов.
Cluster Inventory содержит сведения о количестве ресурсов и связанных состояниях. Это полезно, когда требуется вмешательство для решения проблем, включая следующую информацию:
о количестве узлов;
о количестве pods;
о требованиях к постоянному объему хранилища;
об узлах Bare Metal в кластере.
Cluster Capacity позволяет отслеживать выделяемые ресурсы. Диаграмма содержит внутреннее кольцо, отображающее текущее потребление и внешнее кольцо — пороговые значения, настроенные для ресурса, включая следующую информацию:
о процессорном времени;
о выделении памяти;
об используемом объеме хранилища;
о потребляемых сетевых ресурсах.
Events — список сообщений, связанных с недавними действиями в кластере, такими как создание pods или миграция виртуальной машины на другой хост.
Top Consumers - список потребителей ресурсов кластера. Щелкните ресурс, чтобы перейти к подробной странице со списком pods и узлов, которые потребляют наибольший объем указанного ресурса кластера (ЦП, памяти или хранилища).
Сценарий установки OKD console#
Для установки OKD console следуйте шагам:
Создайте файл манифеста dapp-okd-console.yaml следующего содержания:
dapp-okd-console.yaml
--- apiVersion: v1 kind: ServiceAccount metadata: name: okd-console-acc namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: okd-console-role namespace: kube-system roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: okd-console-acc namespace: kube-system --- apiVersion: v1 kind: Secret metadata: name: okd-secret namespace: kube-system annotations: kubernetes.io/service-account.name: okd-console-acc type: kubernetes.io/service-account-token --- apiVersion: apps/v1 kind: Deployment metadata: name: okd-console-deployment namespace: kube-system labels: k8s-app: okd-console spec: replicas: 1 selector: matchLabels: k8s-app: okd-console template: metadata: labels: k8s-app: okd-console spec: containers: - name: okd-console-app image: /dapp-okd-console-2/console:4.12.0 # актуальный репозиторий с образами dropapp env: - name: BRIDGE_USER_AUTH value: disabled # no authentication required - name: BRIDGE_K8S_MODE value: off-cluster - name: BRIDGE_K8S_MODE_OFF_CLUSTER_ENDPOINT value: https://<IP-address>:6443 #актуальный IP адрес узла плоскости управления - name: BRIDGE_K8S_MODE_OFF_CLUSTER_SKIP_VERIFY_TLS value: "true" # no tls enabled - name: BRIDGE_K8S_AUTH value: bearer-token - name: BRIDGE_K8S_AUTH_BEARER_TOKEN valueFrom: secretKeyRef: name: okd-secret key: token --- kind: Service apiVersion: v1 metadata: name: okd-console-np-service namespace: kube-system spec: selector: k8s-app: okd-console type: NodePort ports: - name: http port: 9000 targetPort: 9000 nodePort: 30036 protocol: TCPВыполните команду:
kubectl apply -f ./dapp-okd-console.yamlВыполните команду:
kubectl rollout status deployment.apps/okd-console-deployment -n kube-systemПроверьте что в выводе команды шага 3 содержатся
deployment okd-console-deployment successfully rolled out.Сделайте port-forward для сервиса
okd-consoleнаlocalhost, выполнив команду:kubectl port-forward service/okd-console-np-service -n kube-system --address localhost 9099:9000Выполните команду:
Curl localhost:9099Убедитесь, что команда
curlвозвращает страницу с OKD console.