K8S Dashboard on Rancher Desktop

จากบทความก่อนหน้านี้ที่เราได้ลองดูภาพรวมแบบกว้างๆ ของ Rancher Desktop กันไปแล้วนั้น ต่อไปเราจะมาลอง Deploy Kubernetes Dashboard เพื่อให้การใช้งานง่ายขึ้นกันดีกว่าครับ

Rancher desktop logo

เริ่มแรกเราก็จะใช้ WSL ในการกำหนด version ของ dashboard config กันก่อน เพื่อเป็นการกำหนดตัวแปรสำหรับเรียกใช้งาน git repository

**สำหรับในที่นี้ผมจะใช้งานเป็น Debian Linux ครับ

$> DASHBOARD_GITHUB_URL=https://github.com/kubernetes/dashboard/releases

หลังจากนั้นเราก็จะมากำหนดตัวแปรเพื่อใช้ระบุ version ล่าสุดของ Dashboard ที่เราจะใช้งาน หากใครต้องการจะใช้ version ก่อนหน้าหรือ version อื่นให้ข้ามไปคำสั่งต่อไปเลยครับ

$> VERSION_KUBE_DASHBOARD=$(curl -w '%{url_effective}' -I -L -s -S ${DASHBOARD_GITHUB_URL}/latest -o /dev/null | sed -e 's|.*/||')

หลังจากที่เราได้ตัวแปรของ Version ที่เราจะใช้งานแล้ว เราก็จะทำการ สร้าง pods ของ dashboard กันต่อด้วยคำสั่ง

$> kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/${VERSION_KUBE_DASHBOARD}/aio/deploy/recommended.yaml

หรือถ้าหากใครต้องการระบุ version ที่ต้องการจะใช้งานสามารถแทนที่ตัวแปร ${VERSION_KUBE_DASHBOARD} ด้วยตัว version ที่ต้องการได้เลย เช่น

$> kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml

หลังจากนั้นเราก็จะทำการ config admin user ของ Dashboard กัน

สำหรับขั้นตอนแรก เราก็จะทำการสร้างไฟล์ dashboard.admin-user.yaml กันก่อน เพื่อกำหนด admin โดยคำสั่งก็จะมี ดังนี้

จากนั้นเราก็จะมากำหนด role ของ admin กันต่อ โดยการสร้างไฟล์ชื่อ dashboard.admin-user-role.yaml โดยคำสั่งมี ดังนี้

หลังจากนั้นเราก็จะสั่งให้ k3s ใช้งาน config ที่เราสร้างขึ้น ด้วยคำสั่ง

$> kubectl apply -f dashboard.admin-user.yaml -f dashboard.admin-user-role.yaml

สำหรับขั้นตอนต่อไป เราก็จะมาเอา token เพื่อใช้สำหรับ login เข้าหน้า dashboard กันต่อ โดยใช้คำสั่ง

$> kubectl -n kubernetes-dashboard describe secret admin-user-token | grep '^token'

เมื่อได้ token สำหรับเข้าใช้งานมาแล้ว ขั้นตอนต่อไป เราก็จะทำการสั่งให้ k3s รันหน้า Dashboard เพื่อเข้าใช้งานกัน โดยใช้คำสั่ง ดังนี้

$> kubectl proxy

หลังจากนั้นให้เข้า url นี้ผ่านทาง browser ก็จะเจอหน้า login
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

จากนั้นให้ใส่ token ที่ได้เข้าไป และกดที่ Sign in เพื่อ login เข้าหน้า Dashboard ได้ตามรูป

สำหรับบทนี้ก็มีเพียงเท่านี้ครับ หวังว่าจะพอมีประโยชน์สำหรับผู้ที่สนใจใช้งาน k3s บ้างไม่มากก็น้อยครับ และหากมีข้อผิดพลาดประการใดต้องขออภัยมา ณ ที่นี้ด้วยครับ

ขอบคุณครับ

--

--