您現在的位置是:首頁 > 藝術

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

由 充滿元氣的java愛好者 發表于 藝術2021-11-29
簡介yaml檢視Dashboard映象是否正常執行kubectl get pods ——all-namespaces7、訪問Kubernetes Dashboard使用 kubectl proxy 命令訪問kubectl proxy開啟瀏覽器輸

論文最後參考文獻怎麼弄

前言

我們之前搭建了第一個docker專案:

windows環境30分鐘從0開始快速搭建第一個docker專案(帶資料庫互動):https://www。cnblogs。com/xiongze520/p/15069441。html

然而我們知道,docker和k8s(Kubernetes)是配套使用的,我們今天就開啟k8s並登入儀表盤。

注意:沒有安裝docker的可以先進行docker的搭建,接下來都是基於安裝好docker的基礎上進行的。

Docker:Docker Desktop for Window

Kubernetes版本:1。21。2

演示電腦系統版本:Windows 10 專業版

拉取Kubernetes映象

方式一:使用下面命令拉取(不建議使用,github比較慢,會導致git失敗)

命令1(拉取映象分支):git clone https://github。com/AliyunContainerService/k8s-for-docker-desktop。git

命令2(進入拉取的分支目錄):cd k8s-for-docker-desktop

命令3(切換到指定版本)git checkout v1。21。2

方式二:強烈建議使用

點選下面地址連結進入Kubernetes主頁,選擇指定的版本下載程式碼,點選下載zip後解壓,後續操作在解壓目錄。

注意:如果顯示無法訪問,可以多訪問幾次,網路問題導致,這個連結地址是正確的。

https://github.com/AliyunContainerService/k8s-for-docker-desktop

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

下載後解壓到自己的指定目錄,檔名可以自定義。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

安裝Kubernetes映象

以管理員身份執行PowerShell,如果執行失敗,執行x86的版本也可以。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

進入我們下載安裝的目錄,如果路徑不正確的自行跳轉,如下:

cd。。 返回上一級

cd 進入指定目錄

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

進入解壓目錄後,執行下面語句安裝,靜待安裝完成。

。\load_images。ps1

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

安裝完成後可以 使用docker images命令檢視。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

開啟Kubernetes

1、修改host地址

將C:\ProgramData\DockerDesktop\tmp-d4w的host。docker。internal內容修改。

修改後內容指向本機,後續k8s儀表盤地址可自行修改。

# Kubernetes127。0。0。1 kubernetes。docker。internal

2、配置映象加速

配置完後點擊

Apply&Restart

儲存。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

{ “registry-mirrors”: [ “https://dockerhub。azk8s。cn”, “https://registry。docker-cn。com”, “https://xxx。mirror。aliyuncs。com” ], “insecure-registries”: [], “debug”: true, “experimental”: true, “features”: { “buildkit”: true }, “builder”: { “gc”: { “enabled”: true, “defaultKeepStorage”: “20GB” } }}

https://xxx。mirror。aliyuncs。com是阿里雲映象,

檢視阿里雲的映象加速器地址,https://cr。console。aliyun。com/cn-hangzhou/instances/mirrors,需要登入阿里雲才能檢視,將 xxx 字元替換為你獲取到的地址,下面打碼遮擋的部分。注:這裡的加速地址大家除了這幾個,還可以去百度很多個進來。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

3、啟動映象加速

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

4、設定k8s上下文

首先獲取所有上下文,執行如下命令,得到NAME名稱:

kubectl config get-contexts

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

設定上下文(注意,後面的名稱是檢視上下文時的NAME,也就是docker-desktop,如果有docker-for-desktop的話也可以)

kubectl config use-context docker-desktop

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

5、驗證叢集狀態

kubectl cluster-info

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

6、安裝k8s管理頁面Dashboard

#方式1kubectl apply -f https://raw。githubusercontent。com/kubernetes/dashboard/v1。10。1/src/deploy/recommended/kubernetes-dashboard。yaml#方式2(推薦)kubectl create -f kubernetes-dashboard。yaml

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

使用命令重新安裝

kubectl delete -f kubernetes-dashboard。yamlkubectl create -f kubernetes-dashboard。yaml

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

檢視Dashboard映象是否正常執行

kubectl get pods ——all-namespaces

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

7、訪問Kubernetes Dashboard

使用 kubectl proxy 命令訪問

kubectl proxy

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

開啟瀏覽器輸入以下地址訪問(注意,PowerShell視窗不要關閉,關閉後無法訪問)

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

配置Token並登入

1、建立服務賬號

首先建立一個叫admin-user的服務賬號,並放在kubernetes-dashboard名稱空間下。

注意:這裡需要重新開啟一個PowerShell,原來開啟的不要動。

New-Item admin-user。yaml

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

建立成功後這是一個空檔案,用記事本或者其他方式開啟檔案, 複製如下內容儲存。

# admin-user。yamlapiVersion: v1kind: ServiceAccountmetadata: name: admin-user namespace: kubernetes-dashboard

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

儲存後執行kubectl create命令

kubectl create -f admin-user。yaml

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

2、繫結角色

預設情況下,kubeadm建立叢集時已經建立了admin角色,我們直接繫結即可:

使用命令

New-Item admin-user-role-binding。yaml

同樣的,建立成功後這是一個空檔案,用記事本或者其他方式開啟檔案, 複製如下內容儲存。

# admin-user-role-binding。yamlapiVersion: rbac。authorization。k8s。io/v1beta1kind: ClusterRoleBindingmetadata: name: admin-userroleRef: apiGroup: rbac。authorization。k8s。io kind: ClusterRole name: cluster-adminsubjects:- kind: ServiceAccount name: admin-user namespace: kubernetes-dashboard

儲存後執行kubectl create命令

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

3、獲取Token並登入

執行如下命令即可獲得。

$TOKEN=((kubectl -n kube-system describe secret default | Select-String “token:”) -split “ +”)[1]kubectl config set-credentials docker-for-desktop ——token=“${TOKEN}”echo $TOKEN

由於我已經獲取過了,所以這裡顯示有問題,這個是永久的,獲取後可以放到記事本儲存起來。

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

獲取到Token後,直接複製token進行登入剛剛的面板,如下

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

30分鐘學會Docker裡面開啟k8s(Kubernetes)登入儀表盤(圖文講解)

這樣我們就在Docker裡面開啟k8s(Kubernetes)儀表盤並登入成功了。

原文連結:https://www。cnblogs。com/xiongze520/p/15268520。html#_label1

推薦文章