在 Windows 上安装 Kubernetes(K8s)

由于 Docker Desktop 自带 Kubernetes 选项,对于新手来说安装 Kubernetes 省心不少。 在安装过程中容易出问题的地方是 Windows 版本不满足最低要求,比如 Windows 10 家庭版很可能安装 Docker Desktop 不成功,对于系统是 Win7/Win8/Win10 家庭版的用户可尝试通过 Docker Toolbox 安装 Docker Desktop。

安装 WSL2/Hyper-V

对于不同的 Windows 版本,需要安装 WSL2 或者 Hyper-V。请结合实际的 Windows 版本,搜索对应的教程安装 WSL2 或者 Hyper-V,比如可以参考以下教程:

下载 Docker Desktop for windows

可以通过点击 链接 进入 Docker 官方安装指南页面下载安装包。

安装 Docker Desktop

双击下载完成的 "Docker Desktop Installer.exe" 去安装 Docker Desktop。

备注:如果在安装确认中提示 "Use WSL 2 instead of Hyper-V" 选项, 请根据步骤 "安装 WSL2/Hyper-V" 使用的方式选择。

安装 Kubernetes

勾上 "Enable Kubernetes" 然后点击 "Apply & restart" 安装 Kubernetes。

部署 Kubernetes 仪表盘

默认情况下不会部署 Dashboard,可以通过以下命令部署。

bash 复制代码
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

如果上述命令执行出错,可以在浏览器打开网址 recommended.yaml 并另存到本地,然后执行以下命令。

复制代码
kubectl apply -f 替换成实际的文件路径

创建示例用户

新建文件保存下方创建 ServiceAccount 的内容,假设该文件的名称是 dashboard-service-account-adminuser.yaml。

yaml 复制代码
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard

执行以下命令生效上述 dashboard-service-account-adminuser.yaml 配置。

复制代码
kubectl apply -f dashboard-service-account-adminuser.yaml

新建文件保存下方创建 ClusterRoleBinding 的内容,假设该文件的名称是 dashboard-cluster-role-binging-adminuser.yaml。

yaml 复制代码
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kubernetes-dashboard

执行以下命令生效上述 dashboard-cluster-role-binging-adminuser.yaml 配置。

复制代码
kubectl apply -f dashboard-cluster-role-binging-adminuser.yaml

新建文件保存下方创建 Secret 的内容,假设该文件的名称是 dashboard-secret-adminuser.yaml。(用于获取长期访问令牌 long-lived Bearer Token)

yaml 复制代码
apiVersion: v1
kind: Secret
metadata:
  name: admin-user
  namespace: kubernetes-dashboard
  annotations:
    kubernetes.io/service-account.name: "admin-user"   
type: kubernetes.io/service-account-token  

执行以下命令生效上述 dashboard-secret-adminuser.yaml 配置。

复制代码
kubectl apply -f dashboard-secret-adminuser.yaml

启用 Kubernetes 仪表盘

执行以下命令启用 Dashboard。

复制代码
kubectl proxy

访问 Kubernetes 仪表盘

点击 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 打开仪表盘。

可以通过以下命令获取 Token。

sql 复制代码
kubectl -n kubernetes-dashboard create token admin-user

或者通过以下命令获取长期访问 token。(以下命令在 PowerShell 下执行可能会出错,可使用 Git Bash 执行)

ini 复制代码
kubectl get secret admin-user -n kubernetes-dashboard -o jsonpath={".data.token"} | base64 -d

通过上述获取的 token 登录进入仪表盘。

参考资料

相关推荐
无人生还别怕15 小时前
如何搭建k8s服务(containerd部署)
linux·云原生·容器·kubernetes·openanolisos
fb_1234517 小时前
从探针到权限:一篇吃透 Kubernetes 健康检查、RBAC 认证授权与 Dashboard 可视化管理
云原生·容器·kubernetes
mengge.cloud17 小时前
10-28-Kubernetes健康检查认证授权与Dashboard
云原生·容器·kubernetes
SatanII21 小时前
Kubernetes 认证与授权详解:守护集群API访问安全
安全·贪心算法·kubernetes
闲云野鹤在人间1 天前
头秃修炼手册:StorageClass+StatefulSet+ETCD 全套渡劫笔记
linux·数据库·笔记·云原生·kubernetes·etcd
艾伦_耶格宇1 天前
【kubernetes - 1.28版本】-7 K8S命令
云原生·容器·kubernetes
L0208241 天前
Kubernetes Ingress|CNI 网络模型|Calico 网络策略|Pod 调度器完整实战教程
运维·网络·云原生·容器·kubernetes
吴声子夜歌2 天前
Kubernetes权威指南——Kubernetes安装配置指南(网络配置)
网络·容器·kubernetes
闲云野鹤在人间2 天前
Kubernetes Pod Scheduler 详解
云原生·容器·kubernetes