|
|
k8s(kubernetes) 部署dashboard可视化界面及相关操作5 D# h3 E3 L7 y# V
2 E7 J/ {. _% k- t
9 E4 ~3 d* Z% t+ E5 \
5 d, H, s# O; \; nkubernetes相关部署详见:https://www.bbs168x.cn/forum.php ... ge=1&extra=#pid5461
! M( b& X* h& ^! \
# G1 a7 s& m0 u#创建danshboard# l( k3 ~, A# x# D
kubectl create -f recommended.yaml
. }; H p7 b2 u# N9 j9 E
' k# {8 M1 ]2 p8 q1 Z[root@kubernetes-master ~]# kubectl create -f recommended.yaml+ M L9 p) i( \4 x# @* s( L& D/ i
namespace/kubernetes-dashboard created
1 q T% C# O3 H" M& Z" Zserviceaccount/kubernetes-dashboard created
6 l- d* _1 D8 P% Oservice/kubernetes-dashboard created
* k, m0 e( C7 ^6 c& v' S0 I3 V7 nsecret/kubernetes-dashboard-certs created
# P9 E3 R5 V8 Rsecret/kubernetes-dashboard-csrf created
5 _6 h0 i# F' U0 O. Esecret/kubernetes-dashboard-key-holder created) k- q: t g t
configmap/kubernetes-dashboard-settings created, B- e7 P. }6 u8 M ^' i% [
role.rbac.authorization.k8s.io/kubernetes-dashboard created
: ?* c; E( G+ E" ]. n4 ~. E0 ?clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created7 o3 @0 N1 r1 N! t! B+ X
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created: g4 Q! r# k, E+ g' I8 A
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created/ F" V% C/ V% A, i$ J0 L+ g# X. t7 M
deployment.apps/kubernetes-dashboard created! M2 p/ q! G1 r8 c1 _$ p
service/dashboard-metrics-scraper created
/ I& Y: @+ q. v& p' Wdeployment.apps/dashboard-metrics-scraper created
: _' e( W6 Q* \1 X( e) Y9 N: p2 P7 S! v6 x7 d3 `" t
- u/ v3 z+ y& n) x. E8 ~( @9 Y' ?% H* K+ y n0 b9 @3 k) A
dashboard安装后% E2 W8 M( O/ @: ~2 o. S1 [( o0 \- L# f
查看pod的状态确保dashboard已经部署成功8 @$ i% M+ ^- V- p5 T9 E4 l# p3 |3 Y: g
3 Z& t1 Q% ^6 I
0 M8 y; v5 S+ A% n) a& u
[root@kubernetes-master ~]# kubectl get pod -n kubernetes-dashboard . H; L2 F3 ~8 K$ ^2 y: \
NAME READY STATUS RESTARTS AGE
+ t- k) }% }4 ^- R- Udashboard-metrics-scraper-5657497c4c-vf2hz 1/1 Running 0 18h
7 K: W$ C. g& b, f" @kubernetes-dashboard-78f87ddfc-b65kc 1/1 Running 0 18h; q4 X: b# t4 |9 k; p
5 I2 O% D K1 J8 B4 W) @
6 I0 a: i7 \% L) m$ X访问dashboard1)查看service,访问端口为32333 - V$ z8 N8 e' n
$ K& E( e, {6 I' A9 y n[root@kubernetes-master ~]# kubectl get service -n kubernetes-dashboard# x H% {% Z9 w( I: X
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
& ?/ ?1 q: `8 J# f* ~( Ndashboard-metrics-scraper ClusterIP 100.184.128.141 <none> 8000/TCP 18h4 \" h4 \5 K+ Z- X: T
kubernetes-dashboard NodePort 100.186.249.64 <none> 443:32333/TCP 18h: Y+ J1 U! _1 H6 J P
6 C6 C6 v/ H% M/ |" ?9 \4 r# M$ |# o
9 w F- f+ A2 X2 o, @. U, X
2)浏览器输入https://masterIP:端口号访问即可;我的是https://172.24.110.182:32333,然后选择token登录
' e6 V0 @5 ^- K ]9 }3 z [url=]kubernetes-dashboard.jpg[/url]
! e6 f5 u- C2 \' Z" f1 w% h0 b- w7 d0 k3 t! j9 h
8 V4 v5 w5 _" [1 U3)编写 dashboard-adminuser.yaml文件并应用
7 ?& P+ @, P! m* Z0 n8 h
! m& Q T. N7 `! q( Q, a9 l+ scat> dashboard-adminuser.yaml <<EOF
8 @0 \5 M. n# W, k4 d9 RapiVersion: v1
( L) }5 w* C6 r/ x: Dkind: ServiceAccount- z1 w6 P7 q2 h" ?
metadata:. K' W; {+ G) n, j& [
name: admin-user E+ q' q. f, i o- z
namespace: kube-system* U. U3 y5 |1 o8 C
---% \ ?4 D6 G2 K' [4 J1 ?6 F6 \
apiVersion: rbac.authorization.k8s.io/v1$ Z2 H& d$ T# F) V }
kind: ClusterRoleBinding% B4 S8 k" b+ W5 E8 c3 M A% U
metadata:
! I; `# s Y7 _( d/ p% b name: admin-user
$ Y3 g; s1 u. }0 m# groleRef:6 R8 A# r% T, y
apiGroup: rbac.authorization.k8s.io
* v; v; Y- f! v kind: ClusterRole
) K0 ^' m) n% ]: W! k! p name: cluster-admin
) x: h+ W: ~% Y0 asubjects:" E% B9 S: K! e, E- g
- kind: ServiceAccount
?( a# A+ R4 ]4 _ name: admin-user
4 w8 ^8 F# [& j' c6 n3 u namespace: kube-system
$ t, j8 O5 s# rEOF
; F! p7 S t% A u# e: }2 y+ a6 S& ^ h6 Z" u9 j' A) J
& O! d0 [$ q" ^: m5 u* o1 g( d( r
, D4 [7 Z- Y6 p7 r; x4 f[root@kubernetes-master ~]# kubectl apply -f dashboard-adminuser.yaml ( E* b; Y$ {) L7 ]; ? ^
serviceaccount/admin-user created
- T8 }8 f3 N1 t% X \5 ?/ hclusterrolebinding.rbac.authorization.k8s.io/admin-user created9 F$ P) q. {! J+ Y! m
4 ?8 ^) c0 O) t j! n+ l* |% U- S( i) n0 X; h
* ?" T8 O( b' k, Q0 [+ z
4)获取token并登录
4 `, B3 Y3 k% R, ~" d* J0 x
; l5 W1 K- o9 w. H* h( ~3 Q/ u$ {: O- q9 d4 m& ^
[root@kubernetes-master ~]# kubectl create token admin-user --namespace kube-system
( _+ x8 o9 ~# z/ LeyJhbGciOiJSUzI1NiIsImtpZCI6IktWTDdRU29nYkJ6R2dFMU1SeDRJOGhWUjlSdE9VZE5Eck9CNkk0cThVUlkifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNzI2NzE5MTcxLCJpYXQiOjE3MjY3MTU1NzEsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJhZG1pbi11c2VyIiwidWlkIjoiNzJiOGY3ODMtZjY1MC00MTBjLTk1YTktN2MxYTIyZjRlYjkzIn19LCJuYmYiOjE3MjY3MTU1NzEsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlLXN5c3RlbTphZG1pbi11c2VyIn0.DkFFYdUTzbBUhn6uNbIKpuf9CLnU1CKBSUoLiTssg8uyHgmgk6Z_G_elfOIdVHwP8xlnF7ZmAOCzBC6Mgr9keNoXOm5ttZ3wLXIoo_9LKYn3i_UrR6ucj4N2mxiQWpxqjrmpHcKsmPnmKdvzaW653opkP2s2VPcGHU73XSZ9eRit82hUnEQcxdWGsA0shkbTV_ICUzbMVs4vUNbPVENnRYivkYAzKBwakoPTK3mYiQQKdrWiqRbd9e-ag3t9MtGL2oU8hzzXoyvuqAUbGtzRandOjb3_t8v6e5ftt460oW_LM86uJVZ0OU-GbqlvoJSa1dJfrQBD2rkDkOOise-FFA
- e. X( `$ T" L$ z1 V& z( w[root@kubernetes-master ~]#
! W6 D6 r# E- e. X3 G
& E$ p {! v/ }* l- ^
+ E( x1 X; L6 P h7 u/ ?7 k9 N输入token到浏览器中,点击登录即可:
1 ]8 Y$ `2 x6 ^, j$ }4 P[url=]微信图片_20240919111611.p ...[/url]5 \4 ?, u# n. _% V( T7 B
& d1 E1 c% _8 A: T. t
|
|