本文共 3118 字,大约阅读时间需要 10 分钟。
在开始部署 Kubernetes 生态系统之前,需要确保环境符合要求。首先,安装并配置 Kubernetes 集群(k8s)。您可以参考以下步骤进行操作:
安装 Kubernetes 集群:
根据官方文档,安装并配置 Kubernetes 集群。确保所有节点之间的通信正常,集群运行稳定。配置镜像:
在部署前,提前下载所需镜像以优化部署速度。执行以下命令:docker pull kubernetesui/dashboard:v2.0.1docker pull kubernetesui/metrics-scraper:v1.0.4
这些镜像将用于部署我们的 Kubernetes Dashboard 和 Metrics Scraper 组件。
本节将指导您如何在 Kubernetes 集群中部署 Kubernetes Dashboard using GitHub 提供的 YAML 模板文件。
GitHub 提供的 YAML 文件包含了所有必要的配置文件和排列组合,直接使用即可完成 Dashboard 的部署。以下是 YAML 文件的主要内容:
# Copyright 2017 The Kubernetes Authors.# Licensed under the Apache License, Version 2.0.# ...apiVersion: v1kind: Namespacemetadata: { name: kubernetes-dashboard }#other configurations 补充完整 在验证环境稳定且镜像下载完成后,执行以下命令直接应用 YAML 文件:
kubectl apply -f recommended.yaml
完成命令运行后,系统会开始部署。您可以通过以下命令查看部署进度及结果:
kubectl get pod,svc -n=kubernetes-dashboard
执行此命令会输出所有命名空间为 kubernetes-dashboard 的 pod 和服务状态。
部署完成后,确保以下资源正常运行:
Pods(节点):查看运行状态:
kubectl get pod -n=kubernetes-dashboard
Services(网络):确认服务 IP 和端口配置:
kubectl get svc -n=kubernetes-dashboard
部署完成后,以下是访问 Dashboard 的方法。
获取 Token:查看 Kubernetes 服务账户 token 信息,执行以下命令:
kubectl get secrets# 查看所有秘密信息kubectl get secrets -n=kubernetes-dashboard
找到对应的服务账户秘密,其数据格式为 base64 编码。将 token 部分取出并解密。
登录命令:使用 base64 解密 token,并通过浏览器访问 Dashboard:
kubectl get secrets-o jsonpath={.data.token} | base64 -d
复制解密后的 token,粘贴至 浏览器登录界面。
kubeconfig 文件配置:拥有root权限访问 /etc/kubernetes/config 目录,查找并编辑 kubeconfig 文件。
# 显示隐藏文件ls -l /etc/kubernetes/
打开 kubeconfig 文件,找到或添加 Required 信息,保存后重新载入配置。
使用 Kubieconfig 登录:使用生成的 kubeconfig 文件登录:
kubectl cluster-info
查看 cluster 信息,确保能够正常连接到 Kubernetes 集群。
编辑 /etc/kubernetes/basic_auth_file 文件,添加用户和对应的密码信息:
vim /etc/kubernetes/basic_auth_file
文件格式示例:
admin admin,1xiajun 1234@abc,2
编辑 kube-apiserver.yaml,添加基本认证配置选项:
vim /etc/kubernetes/manifests/kube-apiserver.yaml
添加以下内容到 arguments 段:
--basic-auth-file=/etc/kubernetes/basic_auth_file
完成配置后,重启 API 服务:
kubectl apply -f /etc/kubernetes/manifests/kube-apiserver.yaml
在 Deployment 配置中添加认证模式设置:
spec.template.spec.args: - --authentication-mode=basic
# Copyright 2017 The Kubernetes Authors.# Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software## distributed under the License is distributed on an "AS IS" BASIS,## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.## See the License for the specific language governing permissions and## limitations under the License.apiVersion: v1kind: Namespacemetadata: { name: kubernetes-dashboard }...# 其他配置文件补充完整 完成以上步骤后,可以通过任意节点访问 Kubernetes Dashboard:
kubectl get endpoints kubernetes-dashboard # 查看 Dashboard 服务端点
支持多种项目创建方式,键是工具包包含丰富的命令和模板,简化操作流程。
通过以上步骤,您可以顺利完成 Kubernetes 集群的部署与管理,并便捷登录 Kubernetes Dashboard。
转载地址:http://jzwhz.baihongyu.com/