找回密码
 注册
查看: 32|回复: 3

kubadmn init命令重新初始化kubernetes集群

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2025-1-3 08:00:00 | 显示全部楼层 |阅读模式
可以使用kubeadm init命令重新初始化Kubernetes集群。 但是,需要注意的是,重新初始化将删除原始集群的所有状态信息,包括所有部署的Pod和服务。因此,请在重新初始化之前确保您已备份所有必要的数据,并已准备好重新部署所有应用程序。
+ E# G9 f- ~$ C5 [4 J
# u# @" F9 e" v" K, x  _1 s+ R要使用kubeadm init命令重新初始化集群,请使用以下步骤:1 M3 d  _% o. z; D& v' R1 v0 {& t* o

+ M0 M& J- q# Q; P3 ^9 a5 s1.登录到主节点(也称为控制平面节点)上,并以root用户身份运行以下命令:) D7 v$ F: L$ [1 h
3 S- M7 D& u; R$ E
kubeadm reset* X8 Y6 {1 o8 e9 ]
此命令将删除当前集群的状态信息,并使其回到初始状态。1 H) {+ N* V, P3 |+ ?% U! k5 k9 M

$ T0 f! @2 {: M/ t0 v; r" y
. ?" L" [1 S+ m8 h7 S& D
* U* {  w& l- i. F2.使用新的配置文件重新初始化集群。您可以使用以下命令:* W; W+ g, z# z: d

! ?& t% W; l; M9 X( A: \5 E3 e" `sudo kubeadm init --config=kubeadm-config.yaml
: M" Z& U2 ^5 D此命令将使用新的配置文件初始化Kubernetes集群。您可以根据需要更改配置文件中的值,以满足您的特定需求。+ ]0 I# W0 _5 b# A$ y  e
! [5 `7 y  R5 Q9 [' Y) _6 s9 N, `

$ _. [: V3 D% r& `0 W0 a6 \* G1 Y0 j
3.如果需要,更新您的kubectl配置文件以访问新的Kubernetes API服务器。您可以使用以下命令:
2 a: O% o8 R& J) ~0 q( Q5 o* x' e' F9 o" q) A  [! X! I
mkdir -p $HOME/.kube" ?6 X* O( O; L; }4 p2 u1 Z
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config" @$ ?- J/ L9 V' [
sudo chown $(id -u):$(id -g) $HOME/.kube/config
$ c! a  m4 s& n; ~& i& t: ?- @. G7 x: w/ Z$ g6 b& }( J

* H1 O# I7 s' m+ C# ]" V' R4.等待集群初始化完成,并确保所有节点都已成功加入集群。
# s- X4 K. T1 [) ?
6 b0 l+ w7 ]; ]) q2 O, L$ s: E重新初始化Kubernetes集群后,您可以重新部署所有应用程序和服务。
( M5 Q6 U" P1 O/ S# _+ A; l3 s$ y4 k$ u& d

! s0 @9 p3 v7 [% E) a  ?$ Y
! _( s8 u' Z/ L

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2025-1-3 08:00:01 | 显示全部楼层
kubeadm-config.yaml5 T8 q5 p1 A9 O$ w* q/ c

$ A$ n* n( i$ W5 TapiVersion: kubeadm.k8s.io/v1beta1
4 ^6 b4 V& Q6 Fkind: ClusterConfiguration
0 [) D: L$ l0 T, U( k2 akubernetesVersion: v1.14.3 # change according to kubeadm supported version
2 T9 f" v; |; t! T! T, t: @8 {apiServer:
3 H6 u: ?- d1 Q/ O  certSANs:& n; P! j1 N* K8 L; Z2 A) b
  - 127.0.0.1
; l! e) J( [# w8 d* E5 t+ F  - cluster-api.example.com # change according to your requirements
9 E# ~; f# i' n8 ]" ]$ N  extraArgs:
: I2 ?  \: z7 n: i) Z3 e    authorization-mode: Node,RBAC& i. F9 W- d% f: `8 V$ K
    feature-gates: "TTLAfterFinished=true"
) y1 l  C$ [9 Z' y2 D- r( X- P' B" C9 R    audit-policy-file: "/etc/kubernetes/audit-policy.yaml"; U5 {$ T( U% k2 V7 P5 J- }
    audit-log-path: "/etc/kubernetes/audit/kube-apiserver-audit.log"
+ ]" a, c1 A7 O5 y7 @, ~# F4 x8 S    audit-log-maxage: "2"
$ n& F+ u1 ~% U! p3 {" t  extraVolumes:+ R3 g9 Q. R9 h7 x; J6 H4 g0 T; z- a
  - name: "audit-policy"
& x5 Q  y% g0 r: f" D5 b% }    hostPath: "/etc/kubernetes/audit-policy.yaml"4 [0 L! z7 c& k( V' o* a
    mountPath: "/etc/kubernetes/audit-policy.yaml"- P/ z$ o( _% E# }
    readOnly: false# S$ C! G6 ^1 l9 H
    pathType: File* R- C$ \1 T% [7 A! G
  - name: "audit-volume"" ?1 a% s+ I4 [
    hostPath: "/var/log/kubernetes/audit"0 v* m/ o) [+ O8 }! ?
    mountPath: "/etc/kubernetes/audit"0 r) U3 E( {& P
    readOnly: false
. a7 l9 @( @% A1 K. c$ T    pathType: DirectoryOrCreate
  z& p; o8 {0 e; k* L  timeoutForControlPlane: 4m0s! b1 g& O7 i0 f9 q: ?" C
certificatesDir: /etc/kubernetes/pki
3 B* F7 ?6 u0 [4 d) sclusterName: kubernetes* i7 u7 n! T7 A6 J' `
controlPlaneEndpoint: ""
: T% ?; i5 q* [3 j1 Y  v# qcontrollerManager:
/ c/ b) D, U5 f0 l0 M  n1 h  n  extraArgs:
4 M* C& y$ i" V0 u3 z    feature-gates: "TTLAfterFinished=true"
/ b2 o" l, V7 `( g    bind-address: 0.0.0.0! C# e6 F, I% p4 P( `& Z
dns:& ?1 u5 k$ ^8 f% J  V) j
  type: CoreDNS
+ }, t2 t# E/ P, r# q% ^etcd:
: @; d' m+ _3 T+ r. k4 p& }  local:
& S' x# {9 ~8 r7 U7 k    dataDir: /var/lib/etcd6 Y. g# k  L6 t; S, y
imageRepository: k8s.gcr.io4 y4 i. G5 g5 \
networking:4 X+ w  C# q& D) S+ s# g
  dnsDomain: cluster.local
' m4 f' a. g& `6 O  podSubnet: 192.168.0.0/16 # change according to your requirements8 e- b/ l5 K! \8 _9 y
  serviceSubnet: 10.96.0.0/12 # change according to your requirements
" x" t- c' [" a9 [scheduler:
# h+ t# J' v- Y! p  extraArgs:5 q% g, r9 J4 z' N" e2 s
    feature-gates: "TTLAfterFinished=true"- y9 o* x2 a7 j3 H: d
    bind-address: 0.0.0.0
/ l: u9 u: _7 N9 m  g---
% g( k1 S, g2 q# D8 ]" y# j/ H( YapiVersion: kubelet.config.k8s.io/v1beta1
; q3 Z6 R: P9 B, g# y5 s0 \kind: KubeletConfiguration' p- b2 x3 r9 `3 O9 {+ o- f7 I
FeatureGates:
4 h$ G) p6 w1 i6 U- r, D( c  TTLAfterFinished: true

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2025-1-3 08:00:02 | 显示全部楼层
# 导出kubeadm默认配置文件
5 m/ F; d5 r: P: bkubeadm config print init-defaults > kubeadm-init-config.yaml2 V1 F  l- r: v+ e& z+ L. P
  ?6 A% k9 o& i; p' E
$ G6 e) O0 g' D* g* T1 E( m. b: ^
# 生成节点的kubeadm-config.yaml文件,在node节点操作。. U: `/ B" E/ Y" q3 X; j1 P! ^
sudo kubeadm config print join-defaults > kubeadm-config.yaml
2 b" L* ]' r+ D8 W9 C" p% V8 w, g, z% G8 t
# 加入集群# W. v+ A. Z7 b- \  S) X, Y
sudo kubeadm join --config kubeadm-config.yaml
# d# ?1 O: z8 O/ I+ `3 q" l
- ~( Q, Q! p# `! q+ O9 i( @# _  N5 b$ h* R9 F
' v/ B1 G* s7 y
  c: B9 k% @. j1 h
# 配置kubeadm自动补全
( V6 t& m+ i/ T1 \0 [/ ~; Ksource /usr/share/bash-completion/bash_completion
( I. Y+ B( s0 g5 h, |% S2 dsource <(kubeadm completion bash)% F# h  \6 U0 b1 y7 D9 e6 m) y: ^+ s
echo 'source <(kubeadm completion bash)' >>~/.bashrc
! B' \" A# P" v) a- nkubeadm completion bash >/etc/bash_completion.d/kubeadm1 _' x: ]( q' _
) U. o8 H" z# B5 j+ J; c

' ]9 s7 w) L% v# R# r0 S/ }' s: b4 D- c! r# S1 _2 _

+ {+ u! z/ W) t3 o% e) \" Bkubeadm init
. |3 [0 J! M/ x' w# l
1 S7 n3 N! N: A/ N, S0 M# 通过yaml初始化6 U$ x7 E7 t5 E8 x7 b
kubeadm init --config kube-init.yaml
3 p* T" W2 q  g9 K' `' M7 d1 x  |( |

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2025-1-3 08:00:03 | 显示全部楼层
sed -i "s/pause_image = .*/pause_image = \"registry.cn-hangzhou.aliyuncs.com\/google_containers\/pause:3.1\"/g" /etc/crio/crio.conf
3 D( W/ r- W+ M  {* u
# d" @" D  {/ s* Udocker pull   google_containers/crio
4 _- W$ t9 ]) Y. U4 p: c  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-11 23:31 , Processed in 0.017109 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表