- 积分
- 16843
在线时间 小时
最后登录1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
查看相关命令+ e4 d& ^! I3 h2 G9 j7 T8 L. n; u
#查看kubeadm生成的token
4 T$ N; ` f3 J1 x5 [+ h2 S4 T3 u$ ykubeadm token list6 o# u; F/ ^/ x* p# r) [
* K( {$ A0 ]$ G6 y/ P8 Ykubectl get nodes #查看节点的状态:
' K/ u8 ]8 P+ K4 V. Zkubectl get pod --all-namespaces #查看pod的状态0 G6 ?6 g' v% r; x8 G/ V S$ F
#–all-namespaces #查看全部namespaces的pod
! x6 K2 i9 m0 L2 |- |" D8 J# Skubectl get pod --all-namespaces -o wide #查看pod在各个node上面的分布
& @1 P9 S- O8 h y- Z) h#-o wide #查看pod的分布情况: S; X! b% L9 X$ X- E! ]3 f/ R
kubectl get deployment [nginx-deployment] #查看部署状态3 R' Q6 u8 f6 Z5 p" C8 C- d
kubectl get deployment --namespace=kube-system #查看系统namespa中的kube-dns组件& A6 Y1 G" @# U2 M6 s$ k' A
kubectl get replicaset #查看部署状态, p* Y1 E2 C; D5 T- L7 I% L( f1 J
kubectl get daemonset --namespace=kube-system #查看用daemonset运行的系统组件
8 S" f+ ~8 q2 P5 d/ Z. R( Ckubectl get node --show-labels #查看node的label
0 S7 Q& ?. [( ?0 v8 X. N+ N# Gkubectl get job --show-all #查看job任务
% t. B* W+ y1 c5 Ykubectl get cronjob #查看cronjob任务
6 t3 h3 q4 w4 y9 O( R/ skubectl get namespace #查看运行中的namespace' z6 O9 i: X0 U
kubectl get pv #查看pv
* w4 p) i- ^5 C/ P0 B1 e+ a; W. Xkubectl get pvc #查看pvc1 Z9 f! s6 D# {: s
kubectl get secret [mysecret] #查看存在的secret
4 k. P' e3 f: K$ A, p+ J' skubectl get configmap [myconfigmap] #查看存在的configmap
- F; \0 J5 Q0 P( H! [' v1 j; `) p1 U3 A ^6 _
kubectl describe pod [–namespace=kube-system] #查看pod的具体运行情况,或者启动日志
9 a' e$ w) l- r# [9 V1 Ukubectl describe deployment #了解deployment的详细信息( d! m5 X0 s* w0 d$ n
kubectl describe replicaset #了解replicaset的详细信息
. w* E$ H) K- O% Z+ S& Rkubectl describe secret [mysecret] #查看secret条目的key
0 m) m2 e- {% c7 v/ O" B+ Dkubectl describe configmap [myconfigmap] #查看configmap; K" u$ W2 Y1 T2 \7 P3 a+ O/ ?
- b4 L) K( C4 K8 [kubectl logs myjob-nfkxk #查看job执行的结果
" ?& y0 U9 K$ `- x" B1 Y6 L$ W/ P. s
) k( F& u. Q) T2 N- Y创建相关命令: M4 u% I# T f; T4 i9 Y6 U2 T& Y0 b6 y
#创建token
7 J; P2 H d3 z& b+ U; @; Ekubeadm token create A$ S6 P1 U, E1 C: I1 d
#获取ca证书sha256编码hash值
" x; E* a; e- A/ u" ]7 v) wopenssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed ‘s/^.* //’6 C$ U5 m R# V6 i- u
4 o) P$ t6 L5 N' @kubectl run httpd-app --image=httpd --replicas=2 #运行俩个pod
' i" g9 L( W8 U5 ~ q#httpd-app #命名为httpd-app( V7 `* C+ h3 I
#–image=httpd #镜像名2 T Y% g3 {! U# R* I6 C) _+ }6 x
#replicas=2 #启动俩个pod K& i+ w0 z T% d% u: {& N7 d
# ?' K. m& ?0 P% u' F; h# L#通过配置文件启动9 G3 U8 w. b- x T
kubectl apply -f nginx.yaml2 x4 I3 z- D/ `* g! T0 g
4 @: P5 n) i4 w7 X W) f) Y
kubectl apply -f httpd.v1.yml --record# ^. @) `3 ^+ u5 S, i* q' C: I
#–record 作用是将当前命令记录到revision记录中,这样就知道每个revison对应的那个配置文件。8 F% w6 \9 Q% R- y$ J
#可以通过kubectl rollout history deployment httpd来查看revison历史记录% [6 `/ I" p" j; n2 m+ c
#创建namespace:1 m2 W3 A \/ z+ y7 a: j
kubectl create namespace weave! \2 Y0 V7 Y* f, C5 W; W8 o
& `# X- b# n" \% a X, F4 c9 \- V
kubectl create configmap myconfigmap --from-file=./logging.conf #通过–from-file方式创建configmap( h7 L- |8 `$ t' A
kubectl create secret generic mysecret --from-literal=username=admin --from-literal=password=12345 #通过–from-literal方式创建secret) }* ~0 d" ?- @2 y8 J
/ b) t% O: C. O# T删除相关命令% V2 y0 p4 b0 Y0 ]) c1 Y" [* f
kubectl delete deployment nginx-deployment #删除deployment任务( c7 {, M( K7 P2 ~1 e2 I0 X+ x
kubectl delete -f nginx.yml #删除deployment任务* {/ J& s, V3 A$ b0 @) l
8 E+ U' z% H/ H- ^ I! A9 g
kubectl delete pods --grace-period=0 --force #删除pod
) U* M) K! h" `4 I1 i6 h5 ?& V' I7 q, R
kubectl delete pvc mypvc1 #删除pvc中的mypvc1! J' V5 w) ]# N" A$ u& {
, k" V! L9 M0 @6 t2 S! W( i- |用label控制Pod的位置
& j) C; L5 @& q- V- vkubectl label node k8s-node1 disktype=ssd #标注node1的磁盘类型是ssd
1 e; K. A" @4 y5 h M, }* Mkubectl get node --show-labels #查看node的label
1 b3 [" V t5 U$ v( nkubectl lable node k8s-node1 disktype-
4 f ], _. r' E9 D& k
& {" k! Q7 e4 }, x6 e( p8 T. a# fedit命令& b! e4 k6 w6 D3 F- k2 B
kubectl edit daemonset kube-proxy --namespace=kube-system #查看kube-proxy的yml文件" l6 w- ?2 \: g; g, C
6 m. y9 `+ u% h2 c
kubectl edit secret mysecret #查看value
" L) g5 \- Y) U3 y, |! R: q4 F5 p f% _% V d& S: g& e
update rollout命令, l& ^4 [* P. u" o% N
kubectl apply -f httpd.v1.yml --record" B1 a1 r! Z |$ s- W S
#–record 作用是将当前命令记录到revision记录中,这样就知道每个revison对应的那个配置文件。
* N& c5 [6 t( D) D' G# n2 w$ W- X#可以通过kubectl rollout history deployment httpd来查看revison历史记录
6 A& g) f. v' ^- R! L. w: K0 L4 M! R9 ?& _) \$ f
kubectl rollout history history deployment #查看revison历史记录
: ^- i' U& X+ r
: I3 N' p; ^( p: p2 ~3 K$ c& lkubectl rollout undo deployment httpd --to-revision=1 #指定一个版本,回滚$ H# D I$ ]( K
2 U# E) }% c/ I4 _
其他命令
4 F% R2 U! N$ J* ]2 v# o8 R) Fecho -n root | base64 #base64加密
' i8 w8 z! D3 l! vecho -n MSDF32D | base64 --decode #反解码
# p0 F2 e4 X; g2 r% B
& s9 R2 T9 I Z3 e#自动补全功能! b! r5 F* t+ `
echo “source <(kubectl completion bash)” >> ~/.bashrc) z6 j3 s3 d3 x! \
#helm自动补全功能
0 A* @# d# r3 ~( K. j5 }6 `7 F, fhelm completion bash > .helmrc echo “source .helmrc” >> .bashrc
& ?2 o* Y6 ]# t! k. t8 z9 B
4 j3 C/ ?# M/ a8 |' N2 a#查看集群信息
( A x) J" E4 f3 F. @4 T7 gkubectl cluster-info
. o4 ~. y( G7 V# d1 g. C#查看apiserver的版本,和已经使用的api+ c- q) q7 j1 E4 V
kubectl api-versions
. q! W0 v* T! E# M
# }' Y3 L3 f" k: ?#将master当做node使用
3 d5 Q$ `" f- A: J1 I; ^kubectl taint node master node-role.kubernetes.io/master-
6 M% T( |- A& r* H#取消master当做node
% z8 i3 h% d& u& N. L' d8 O8 [kubectl taint node master node-role.kubernetes.io/master="":NoSchedule
& f/ e7 c" y9 h. @% w
' N2 I4 T0 h8 W6 \4 s#踢出节点
- U6 J6 F8 ~- K+ o. Okubectl drain nodeName --delete-local-data --force --ignore-daemonsets
/ A# D0 h; M# C0 ukubectl delete node nodeName
8 l) ?+ T( [" _8 ^ N r* R7 M( i$ F* {: v- G/ \# Y9 t7 \
#kubectl top查看k8s pod的cpu , memory使用率情况
7 M# O9 m y; ?7 p2 \1 f5 b; fkubectl top pod --all-namespaces' h1 `6 Y+ ?6 i# W0 }3 R
" R: ^' i/ \# p0 d, S, f! {+ m
2 j9 S* [+ z# ]( x2 D! u; s% f |
|