mac kubernetes 安装
安装docker
1.下载k8s
这个没啥好讲的直接下载就行了
2.开启k8s环境
3.验证下
- 查看集群信息
kubectl cluster-info
- 或取节点
luwei@luweideMacBook-Pro-2 ~ % kubectl get nodes NAME STATUS ROLES AGE VERSION docker-desktop Ready control-plane,master 3d12h v1.21.5 luwei@luweideMacBook-Pro-2 ~ %
- 输出指定的一个/多个资源的详细信息
kubectl describe node
K8S部署 Dashboard UI
1.以官方yaml部署Dashboard U
luwei@luweideMacBook-Pro-2 ~ % kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml namespace/kubernetes-dashboard unchanged serviceaccount/kubernetes-dashboard unchanged service/kubernetes-dashboard configured secret/kubernetes-dashboard-certs unchanged secret/kubernetes-dashboard-csrf unchanged secret/kubernetes-dashboard-key-holder unchanged configmap/kubernetes-dashboard-settings unchanged role.rbac.authorization.k8s.io/kubernetes-dashboard unchanged clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard unchanged rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard unchanged clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard unchanged deployment.apps/kubernetes-dashboard configured service/dashboard-metrics-scraper unchanged kind: ServiceAccount deployment.apps/dashboard-metrics-scraper configured luwei@luweideMacBook-Pro-2 ~ %
2.查看dashboard运行状态,以deployment方式部署,运行2个pod及2个service:
luwei@luweideMacBook-Pro-2 ~ % kubectl -n kubernetes-dashboard get pods NAME READY STATUS RESTARTS AGE dashboard-metrics-scraper-5594697f48-w57fx 0/1 ContainerCreating 0 18s dashboard-metrics-scraper-c45b7869d-m46ld 1/1 Running 0 4h8m kubernetes-dashboard-57c9bfc8c8-45qmv 0/1 ContainerCreating 0 18s kubernetes-dashboard-79b5779bf4-6qr4z 1/1 Running 0 4h8m luwei@luweideMacBook-Pro-2 ~ %
指定Dashboard公网暴露的端口
luwei@luweideMacBook-Pro-2 ~ % kubectl patch svc kubernetes-dashboard -n kubernetes-dashboard -p '{"spec":{"type":"NodePort","ports":[{"port":443,"targetPort":8443,"nodePort":30443}]}}' service/kubernetes-dashboard patched luwei@luweideMacBook-Pro-2 ~ %
修改yaml文件
- vim recommended.yaml
---
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
type: NodePort
ports:
- port: 443
targetPort: 8443
nodePort: 30443
selector:
k8s-app: kubernetes-dashboard
---
执行
luwei@luweideMacBook-Pro-2 ~ % kubectl apply -f recommended.yaml
service/kubernetes-dashboard configured
luwei@luweideMacBook-Pro-2 ~ %
设置Token登陆
1.vim dashboard-adminuser.yaml
kind: ServiceAccount
apiVersion: v1
metadata:
name: admin-user
namespace: kubernetes-dashboard
---
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
执行
luwei@luweideMacBook-Pro-2 ~ % kubectl apply -f dashboard-adminuser.yaml
serviceaccount/admin-user created
clusterrolebinding.rbac.authorization.k8s.io/admin-user created
luwei@luweideMacBook-Pro-2 ~ %
查看token
luwei@luweideMacBook-Pro-2 ~ % kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
Name: admin-user-token-tkmh6
Namespace: kubernetes-dashboard
Labels: <none>
Annotations: kubernetes.io/service-account.name: admin-user
kubernetes.io/service-account.uid: 7eec3f89-cfeb-4a2a-b312-fdb722523bdb
Type: kubernetes.io/service-account-token
Data
====
token: eyJhbGciOiJSUzI1NiIsImtpZCI6ImluV0Vodm9zZWhHVkctZE5ZcU8wQmNJSzJ1QU5sVG1Damg4M0dzVG1BVkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLXRrbWg2Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI3ZWVjM2Y4OS1jZmViLTRhMmEtYjMxMi1mZGI3MjI1MjNiZGIiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.clWxPejcMxGBKU9ekPPWf8hSfCIlTBDav6juMa9hcD1Acspe_p2kMSS-9hYAUCmwKvV_qJCPcvSDPjXIon9A9PH_78Q96V-cFSGhdTHlPOwccspkJim0U3WApRVluSioINMtfCJT-Zw9__BUFFL0MyCEwGtGlPkMP2SPa-HLyOuYRSFNl_TGLKvc0vkNNZ_MQF_oGrf8P18W-VLInnfZXNobsWEv7fi3lbQdCCdHeTazePnQ7C2h5pLFrXS6QHKdZ57LbE6koie5ztkXc5ba7JyfxNtwBXggfHCqpQ89eh53fzc5vo75JBGS4NDvhtYOLEs22kTaeBjMzi_vXxnIJQ
ca.crt: 1066 bytes
namespace: 20 bytes
luwei@luweideMacBook-Pro-2 ~ %
查看
本作品采用《CC 协议》,转载必须注明作者和本文链接