一、環(huán)境準備
? ?實驗環(huán)境使用 kubernetes v1.27.4? Centos8 && Centos7
yum install -y vim wget
? ?經(jīng)過測試,清華大學鏡像下載速度穩(wěn)定快速,可供國內用戶便捷使用。首先我們需要配置清華大學的EPEL安裝源。具體步驟如下:
dnf -y install wget
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
yum clean all
yum makecache
yum -y update
Kubernetes-Dashboard安裝
下載地址:參考?Kubernetes-Dashboard
mkdir -p /etc/kubernetes/dashboard
cd /etc/kubernetes/dashboard
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
?修改文件,增加nodeport參數(shù)便于訪問
vim recommended.yaml
如下:
# Adde by How
type: NodePort
-----------------------------------------------------------------------------------
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: 32641 #指定nodePort,這樣當集群重啟時端口不會變更了。
selector:
k8s-app: kubernetes-dashboard
執(zhí)行安裝
[root@master01 tools]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
[root@master01 tools]# kubectl apply -f recommended.yaml
-------------------output------------------------------------------------
namespace/kubernetes-dashboard created
serviceaccount/kubernetes-dashboard created
service/kubernetes-dashboard created
secret/kubernetes-dashboard-certs created
secret/kubernetes-dashboard-csrf created
secret/kubernetes-dashboard-key-holder created
configmap/kubernetes-dashboard-settings created
role.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
deployment.apps/kubernetes-dashboard created
service/dashboard-metrics-scraper created
deployment.apps/dashboard-metrics-scraper created
查看服務是否正常運行,以及自動選擇的nodeport端口
# kubectl -n kubernetes-dashboard get pod Sat Aug 12 14:39:42 2023
NAME READY STATUS RESTARTS AGE
dashboard-metrics-scraper-5cb4f4bb9c-4gtjc 1/1 Running 0 70m
kubernetes-dashboard-6967859bff-j26lp 1/1 Running 0 70m
-----------------------------------------------------------------------------------
[root@master01 tools]# kubectl -n kubernetes-dashboard get service kubernetes-dashboard
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard NodePort 10.106.206.69 <none> 443:32641/TCP 71m
用瀏覽器訪問控制臺
訪問?https://192.168.199.10:32641?即可進入控制臺界面
注意:Chrome如果提示不安全連接,并且高級選項也無法進入, 在頁面空白處鍵入 thisisunsafe 即可
訪問控制
有好幾種方式,這里只選擇了token方式
創(chuàng)建管理員用戶
1. 創(chuàng)建管理員服務帳號
首先創(chuàng)建一個叫admin-user的服務賬號,并放在kubernetes-dashboard名稱空間下:
mkdir -p /etc/kubernetes/dashboard
cd /etc/kubernetes/dashboard
vim admin-user.yaml
如下
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
kubectl apply -f admin-user.yaml
2. 綁定管理員集群角色
默認情況下,kubeadm創(chuàng)建集群時已經(jīng)創(chuàng)建了cluster-admin角色,我們直接綁定即可
cd /etc/kubernetes/dashboard
vim admin-user-role-binding.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
執(zhí)行此配置
kubectl apply -f admin-user-role-binding.yaml
3. 創(chuàng)建管理員Token
現(xiàn)在我們創(chuàng)建admin-user用戶的Token,以便用來登錄dashboard:
cd /etc/kubernetes/dashboard
kubectl -n kubernetes-dashboard create token admin-user
-------------------------------------------------------
此處略
4. 用管理員token登陸
????????把Token復制到登錄界面的Token輸入框中登陸?https://192.168.199.10:32641?正常登陸
5.Kubernetes Dashboard token失效時間設置
Dashboard的Token失效時間可以通過?token-ttl?參數(shù)來設置,這里我們有三種方式:【yaml、直接修改、通過Kubernetes Dashboard 】文章來源:http://www.zghlxwxcb.cn/news/detail-644071.html
我們這邊通過kubectl 直接修改文章來源地址http://www.zghlxwxcb.cn/news/detail-644071.html
#kubectl edit deployment kubernetes-dashboard -n kube-system
------------------------------------------------
spec:
containers:
- args:
- --auto-generate-certificates
- --token-ttl=43200
- --namespace=kubernetes-dashboard
image: kubernetesui/dashboard:v2.7.0
imagePullPolicy: Always
livenessProbe:
failureThreshold: 3
httpGet:
path: /
port: 8443
scheme: HTTPS
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 30
name: kubernetes-dashboard
ports:
到了這里,關于Kubernetes 1.27.4 安裝部署詳細教程的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!