From 92f103172fdf51f23858835df81a632b65a2377e Mon Sep 17 00:00:00 2001 From: Jian Wang Date: Wed, 19 Aug 2026 14:55:21 +0200 Subject: [PATCH 1/2] Update the node removal with one known issue Signed-off-by: Jian Wang --- docs/host/host.md | 94 ++++++++++++++++-- .../v1.9/host/node-removal-node-draining.png | Bin 0 -> 73142 bytes .../node-removal-normally-uninstalled.png | Bin 0 -> 70979 bytes versioned_docs/version-v1.7/host/host.md | 94 ++++++++++++++++-- versioned_docs/version-v1.8/host/host.md | 94 ++++++++++++++++-- 5 files changed, 264 insertions(+), 18 deletions(-) create mode 100644 static/img/v1.9/host/node-removal-node-draining.png create mode 100644 static/img/v1.9/host/node-removal-normally-uninstalled.png diff --git a/docs/host/host.md b/docs/host/host.md index 85922e5a14..69273fad4b 100644 --- a/docs/host/host.md +++ b/docs/host/host.md @@ -142,26 +142,108 @@ Again, removing a control plane node in this situation is **not recommended** be ### 6. Delete RKE2 services and shut down the node. +:::warning + +1. **Target Node Only** + The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **MUST ONLY BE RUN DIRECTLY ON THE TARGET NODE BEING REMOVED**. Double-check your active hostname (`hostname`) before invoking it. + +1. **Immediate Destruction (No Confirmation Prompt):** + The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **does NOT ask for double confirmation or prompt `y/n`** before execution. Once invoked, it immediately stops services and tears down the node environment. + +::: + 1. Log in to the node using the root account. 1. Run the script `/opt/rke2/bin/rke2-uninstall.sh` to delete RKE2 services running on the node. 1. Shut down the node. +### 7. Remove the node. + +1. On the Harvester UI, go to the **Hosts** screen. + +1. Locate the node that you want to remove, and then click **⋮ > Delete**. + +![delete.png](/img/v1.2/host/delete-node.png) + +This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. + +:::important + +Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. + +Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. + +::: + +### 8. Known Issue: Node stuck in "Draining" state during removal + +**Symptom** + +During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. + +![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) + +When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. + +![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) + +In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. + +```sh +$ kubectl get pods -A -owide | grep fleet +cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 +cattle-fleet-local-system fleet-agent-747c7b5f98-44lq5 0/1 Pending 0 46s harv42 +cattle-fleet-system fleet-controller-6c5d89f545-q925w 3/3 Running 3 (126m ago) 3h10m 10.52.0.8 harv31 +``` + +**Cause** + +During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. + :::note -There's a [known issue](https://github.com/harvester/harvester/issues/1497) about node hard delete. -Once resolved, you can skip this step. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. ::: -### 7. Remove the node. +**Workaround** -1. On the Harvester UI, go to the **Hosts** screen. +The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. -1. Locate the node that you want to remove, and then click **⋮ > Delete**. +```yaml +spec: + affinity: + nodeAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - preference: + matchExpressions: + - key: fleet.cattle.io/agent + operator: In + values: + - "true" + weight: 1 +``` -![delete.png](/img/v1.2/host/delete-node.png) +You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. + +1. Temporarily pin fleet-agent to a healthy active node: + + ```sh + kubectl label node fleet.cattle.io/agent=true --overwrite + ``` + +1. Wait some time and check the node deletion status on the Harvester UI. + +1. Remove the temporary label after the node is successfully removed from the cluster: + + ```sh + kubectl label node fleet.cattle.io/agent- + ``` + +**Related Issue** + +[#11349](https://github.com/harvester/harvester/issues/11349) ## Role Management diff --git a/static/img/v1.9/host/node-removal-node-draining.png b/static/img/v1.9/host/node-removal-node-draining.png new file mode 100644 index 0000000000000000000000000000000000000000..4105fe8e94e4563b44e7e4c7aad6aab2260a6a27 GIT binary patch literal 73142 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

M$PadGHt6* z|1NVx|4DuPFbNl znk!o0In$-_v`~Ldkdgi!x#r7(f5iD<}4|+nZZ_2 zCaxwQHt{SbGYJ~*bXr>~yebYit8H8QoqDGo$B>rFbTGqC*iJw?7>NWwLU;bKHRe>Q z-+7Y24+SJduxkmNkxbV~5=!C2?NK>*#~r#;Ur?Uwt)4MHKOcWl`<3cX64B>O$2kdx z*O+BTguTIN6aFT4FPNiLoL@W!p*$E|HY`FO{oll~%QZa|0Wskv7H~4~y_&;1n-8B; zS^7PqHTG6#+H^@CFcBBh4pZ_7TDIYRx3yzq`sTeV;szKjbE26SdK+dx4`YCpt%s7}0a_X_BiQZtpGZ+l*?j3MIDBC(P11zbtl_S@o`Gsz z>oR-4L{pvv9`z?HmJpA42h(k7391fydC_B7g3e3|_No@EAIF~DUg8(_=UrIzMp)2s zfhW7REAd*6qoMq!wFro4vQAbcK7)E+wzv|eWEEQkhW;?h7oS=9a@2bENIeMsF*ki7 z)4z)!u@);=yJO>1_iHozuse-UV#)Z$l&dyjLe3}xgt`Gtfi>nceUpxhMVJ zmu3`(19375Eh@rB1m16tWW7Tn1fh`4#dP$9o?A~|olX#}f$~ObAh>Aw z%-{;_D!RS-6xQAf`^a~hf4-;aSM$C^P1;;(2z80p*Bcb7T;xH=82R^*&N~M9A6Pg?Sjwjb8ThpBU;Lf5btS zmT#L6?`HCK^_yyi*=03e8AG0rPx!jUwGELHhZ2=i?U_#+Ulc++{nTXh9~8;03y6)w z0sol*#4T*p@wQDI^z#R*^!6XKw+6k{6jkqOmidvUm0kJxiB+A3o&*%A7W}w`KzhA_+$dTp{=t0>j#AsM5&e(iX!>?f^JuoOd_^M^alm{vmfr#gkL|C#Tl)%f4SlA_x=r zxV%A=olKZzfSRJ(57BmlmzV^ka0!&|6=_{nvWLaFNu_e2?V8jH?uirA^K^qJx%4fZ zWH`0LE9rEVE!E#Ge4&VA;ihAG;huq;45IOoKDYD9l73Avrlktt=4=HEyYCkx2ey$o z6=2H|eMx6A{Cf`e$8ShssL~k!_C9?}!Sgikp+MUOd1})amJ*SS1OylzzZ(JDetXMh zMQz5Oud}uM`Q70fNnhfIN}$LCAp-d>h=kCu)1MUfx=>@ght>0h-sN#Ma3(6POwB7i zuwKkv*&3-0C5{usi#2?sTEs}WjahuXE~6vD01dz9bMoBQ_pdYu@2b4V<&0@V3V&3# zK4Icz%;5XdL*d@M?^I=f`&Z>PSCo5vnd|Dh{ZSGn^ZUDeNf~fP*hH2+TbksO+86Y32?8C9;^tM7h4TFnOnU{1Zh4(4>kf<*&tZxNx!|wHjDR7+j zU|P42I7k1Dhn{%wkNrNB`?~ioLYzgu#`f2@_hDGvRxkA%(amkN!L4)C&33uLb7~}H zF-5KP%%-i|TU+pRZ|c>iN_#1LLrX6}f=u`q~Ak~t+`H($2rUwU884%zxY94w*f zSH3CfLxuYDQpI5r6;Aki)(AfFuml1uvy{BC`g+J&?HxeXdiv;Xb4rt?9!(ROJ90)s zkh&d6xS`b9k`W|nFF_b^S4^%a^j%&l4HaXqUm7ngqf8*N8xqiWL}fkBr)}-|uXoGw zfY}xGvGlu6eK`%LCv9QAf^KCz&r69)Jd9w0@4Sqv;iBYYMoa&GV%?bBNR(pKawbP_ zw-y5yK}PI19o$8yJwhE8Wg7o0#~VWV#5a&A0iFFV5@8uV&+zo~-c5jE#(7+M_NUYQ z_v~5C5^mZ-Av*StuajQZ>s&reMA^{_wylxIX4ToY(e2fEH(>`unF@_YZ6cM}ThysH z(ec~>{tq#0Ow1PJ;i94N`lM=WDZHkKlkiDE(5FO?*Qe5iMnwqNkQ343(r@L|uvwhj zF>JXvSmV-K`06srgHp5D>u2^nQ0e_ez|99aeVt7wWNF0M3GV}@0KyFvBs=2tMP6Qg zT454e)KWbUUkxQs$o+~?XbCp)t8flyDTl6h=wuh*iQ9|b91-coa`Pw}|5Loe?i{A7G>g4-;B8xq7Gj8bTE^wOK_fe9C+ce`2#=K441Sa?_ZXJe8m)miyBNU4b}Rbp*NAWRm6b2{;t>|4g- zA&H@tJecT*%FtuH-sWpI>^gk_r6IzeC@B%(;HEE$hI9E%WZDxE<#;Y>=EOm9ZhBr; zz51KXXX7sm4hap_BX^}gbZUHl;R^pz#5d{6Q#5^wEG3;Iyb={iGcnD$_sCH&@H(g7 zn(4armevlp{?o^nilC&A}08`IP0a8J1* zOzud*!|A~MvHtcf_U}k31O+*9HR) zUV3Y(Vrd!?8A`xWJW|p%+*&6|D*?%QB~=r;~!NrgYhCyzI!0+nG=Q!X*oc zMA48Lli{=!WS2v2X|f)P|7#JVnO)6ZdLqu*bf1@ z5GfW!G=L?*W_NlT4@M4ms!gvzvFaHK+a{OW6aB0Sm2vmbGi7c=*wP$4d-5&JC^32P zZPy8Gq`&zLe%_+*NhB)oqzE*pIw+K zc`H_FGe8e$`g(scPU3p9v%GZ}wTC_9ADrbGg!$n|$=4Wt!G}ta-g}(28hK_L zHSh+wmPdRbBO(&IW`a~cI8xmD%U(>y7FHW>FYyr)7S?Yyt8~PExAgS*&9v(O35$tS zc1q!?U6@-M09_;)#t||+tY2_W#!Z#-ZrEaTDH9Qbvhv=8O|z!sM^5$9%Sj*};MDfL zRPtaR6hx_vV(iGWNAVK*^F~Ke{E8B>A5k)=GoPOUW0TUbm^RKfRC%Pj^0Y-*Vfn5t`LI zRMELNNH&->;r$tYaL(%R$XHJE=4%z7BbpyY9sq+83s$`AvA|#a{m%%D`1D*{OZrum zsx!vE{xvMYycqnSik8H}q`E6wfOFsg%WSfKduSNcfcRpnV|;NRfc-~@z)zLJmd?Lu zN2yzd?4=YGH3Id&I&2AIdBOQbT-svf=oG-9!u5Xq_30$J#~soENRuc#$opJFbZ$D~ zB+D3F%;KkP0-`2`j;?QxjO<=S5%!J_mm4drCj7CpJ>o{7kXXgoZeGQxSs8VO{`>49 zi6Za+cWuYny+$9`St6m%9r(Ui0+Euv0`@28iIk1^r`m#jIUa*6)~JpvxL@D+|8M~& zi9|Uj`E);jXWNdLm&s9Kh2XNM`?fp$Rw9o!zKflrv_Zt+c4v!!6H{ulWsK&zqvOk5 z)}MbHvhVAVb9{=Z->O-{`tpXvXm4l0b}Fu)U7oL5j$D&9>Oj3md-syL(2AA5$72jE z@#os3Snj2!@0d9CCuIjBkP!PukPnsK7E zVh`IakVzB0A_%)Go8|E#VEy?`=h-MErwPN1!U|*li$d|~Yn)c6+>i&Ps9241T z>oV=v<5E`iW}+hBk366mf%w+|9N0*@ZoY}#R|BZRUE}qwqiro+8B+33PNN@2RbAPp zHrRdsYPS1XPp-Rg;)h8PHYWPbvgcpVJH!HeS5|5`Y1{$4CAn@?PqlVBXt)Oh(BjXpTB~fNK=jCq07iKf zbeA$v%os3RuW^skC)=X~HNvY=sQW9l@Ia)+tIes?#522one7@0a{@r^;hCIz%@KR0 zl%2yoCh;+I4n$#4{`<*@se0Bz(gB_OOKb{;$lQ$;PN}%vD0`OsITjJFnEO>#Rh_;g z8=S_kOaNuR?cqnV?SAP>avk#(vO_v7Ov|BeAzVm~-IyBpYp)nine&gIN!63uj$cyT zPVVDXn*f1XBQ~w+Q2jE?69RTH{=$|@EOMev6J|0UPi(i$6~7fQ2OZ|f$*3#O=!#H} zHoxP4eM7qohvh^V64?yl8u{_VT3?J+-VMoQ@b!8hP7#|p6Nv!ru@DN-RBXPzDO>N6 z&pdD-s`RJ*xW~3VUixM3F7gu0Dmj9JzvZoZgTUDS8g@t{L4BK8a1 z-4YXU9Qy0-;SWH|1S@XNV8fx4YjZB?XaH#|_aiZQWX?xt@4J8z2ySWu#F6-&4w_r? zs^}i0)P}c;QtN~G15BzOU2}l9rsLylsm%5WI!JwtRCJQeY`3Rn_|-*)7lF#{uD{^< zEKL_t^TnmYg!QsUZWp*T9{O~9gC-6OcNmvXZ#Ax8(9egf-kOHw{@>gqw6`So|0N&( zgzlVVga=+>(O|=Ii{28yQ=3AHqKQi_gouKu^oecuP=Be#Itx9JA{M~`k&(@X_Y`N? zC07|j#$~~l^S*9EZ^)Rjm!ssdVRqWJp$+x^9#D;XX(=w#3whYcJEGx?4svG9}o>cXDwa0vc@FijBhL|z_SJ|0Z9P4`94ciB)LiKF1 z8BD`n?y$nzGz(w^>zNskEiQ>|*ijuVQMt1TD z-dq@L-anAxz0qS`z&R*JyzV_K!>>!w1YHilEF&?5CVl#e5pRr4l!%Uhe;Ufz6xW@I zY-OC4RARmZ&_gC>shL3;K?OktHQFmnLq=isP)*=pzT|q+wDRjyhycab2*h0{aoMZs z%gTo0ccV1LSl80}s0MSE> zS$R!Aoi+OOboOs8-{^}XpX2_;m%`}m-Wk48*9z$a!j18>$+xxo6dxNA-rog?vnP^9 zEsU>~8XLZrHl)WRqr`GPkTTgK8pQZ&tznJr4(kK1ATd#yn;EMr-e3i2^C$SHqG9Oc z19rSO)-(o}

9hSsh5q8Wr}df9X=%y}<-O7lfV$-mbJeSa6Fzm~cB5b^YLwpz$ym4xrpe(@*1s5iZce|wC+y#~lrdcWnm4|+z)eo{X5 zDHAkkZa%fd`r7?>9zvX7-^iI#;jPZ+SY^;+$zgUymb!CkFNc+ZP6Ziona%iXiU*`&(Lbk| zFiV#uD}S=Z;>oTww-`+D3Uvgq2&n1bcP1St1YZoDwT(_7{}v#K6dtmKSicgL%(TZ9 zl-H2laH;3k{#{yB7y;tfqU-D6Y>}v{r^nbO_C8B?)Tz4I}RX;)f` z(!L&0S&B{nDG~&ck0$ky^MSvu+H9Joa7-!Y+PV0g=XQipM9R|&8*0ZBsa zBVc2j^79`*?WyveJ#nzcbIJM!JYALoL=tI^KerPVmq@;`1EOffG-{qw(%GC)xw*z^ z`dpGXvkn&32pxk40ii%o?lV_OD&-l%3Hi5_Nx|{!cWBpNPbPh(A_K{wOE$b>_pSZ` z=r|>h2d<|~*lXPb;DSA-GdZcOS%0}?qO-!s*96iUzk!U#_hcdQPlSTAvcGlj_I6tt zF7(^n_58KQ=3$`)ovW-!tH02`@^V9AkN)B@IDPoDJ_xDkeo=(K@`1KrP1GZ7<27|~ zX_3n5^9>IvWyZi|S6&HR7({zt7#V_qhRlSu=2+PzJU>5r#}q}o5y=meY|8+aW|vC? z&U}QS^2m~2OWCJjRsLzmc|~4{DSa&>mWmn2bGBg5_DAgDQ-0oF{hn<=?~d2hErtj$ zC0c2{|KwpW@&-Mj=5a6tj&wE?9p^1MuVqo0ep(K{!m zLLVLScu#kV)|=}4rE^NDlXd1ux8J-6hJy?NW$BW{pO^69vl*ifSH=oNX#DS&U|m1u z0!YQJ@O=FPsiAFOf0V+GsfV|(&r1nc!1tmWH(^{7h9{z53)28{QvU#q11}DX|&1=Z8xe4g4H%Uo>-R zqGJs#-*M)aPig}5m+=wG`Nl>k26NSiu0n&~zYZI^q)Op(;n>+~x>bkR$tp_tmS(zhHacP{V8?2cItr zDJat6O^LSUl?}ze;x9e_KT`=dHU=0r!GGr%`#zY9hQcZWY}iaLiI|?Kqi_-OF|>59 zGM33BPq->xpGZ;?VEgm!aVt*vKHfg4J|p~n&vcmggUuNk{HMEo^m3bdW zvfd2#hJ1gb5T$;@bwS#$XZe2oLE~+?6}ZegKPm!O1goyDE~`Y zTCrV)yb~f~5WHIDOzSc#2xIV9!eUsZ@8Gn*Ob7Od{;|OuymJ!+tT!r#7a2v^pJ6 ztfgeB04*q`zD7*D*ViHBKz|1Solp6|wER8y?yx|AIds52f|vxD7g8tfY+ZdHwoI11T6AscyOu5i}8U$?hh6 zfP~2+&)plaBOTPPGrpffi`i?rId@MOEyfMsoJFx^f0z7gw3j>|0W4qlX0 zzXvLzv1X%TV&Ydq6Jeer(6S0Ah#q^1pthMJP+T$O!x%25C`{%Y0_9H%eTzwBPPG6F z2p&c=@Ld|B)JR{CkfJ2wm&zAPT9kOp$EUS!25X;3D919E^ca7;-)mA--sG^!01c?c z7CBq5A`t-8A`qFJoR#e~ien;SAmg>HyIeNG+sIx_~>1qeJJL#P0?4Yy%1vFPS zMB7s&(kx4nS&cbuG#Fy}XgIv{J8RgrUbcXA>i9@JTtds&h?Zap$ltVVmip4J1H3;o zPBNF7?QD^_o^hwgucHcRzo;#`KH_6iu5&TLw%k#al}l@=DN72=vTic6GJ+bqBKtJB zgNbdv$A`}YBcof}^nYmPjaZ-IrrWvqFmj<1fvv1G7|y%eZ)Y+9I~ zx$yNB$oFzGTAP|m#JYinr|Ki$HLshWA!fb{Zk3W`nv>hjSNyu&*uJkkeY&R3iX%V}{$Uu-NH zPx>HgO*SU3Yds7^j$Q=RtcD7ln@vaf+K7;2%7a`aVkpm9FUfDREiLWakLtzOf`c1! zh%IpW=p;b9`|Oc@fW&HA(9|?%H)GLLcmN&}7{$XpVhQyj6(D1Xt#?VHvl=N`ASmtj z`(>HCBErTZuifq*l|`go!^^<(&FEJ~OW>MGhaPsq%M7vY&ObK(@+Y`FFPZ0s|Hmkc zi<<(HPF(YkvG$ffqO&M7{dd}cuNYTI`l|A#JcQy6taPD6tgoe2etp-e(ojMtWenq% zcN$Ut{^?c~-Uk$d;T@oNqKgc^bA4>PYcj8B6p=7VyMpid5MsT~eX4U)U)**_L15vO zQDJ6b<_BkWG9+w;rhFJF-%r8_zLcScrh}l;62{ zGaDbNp}9ID-9^4-I;(~}WgquzXiLd-_StrW7!>%={8{=t&H)>GAte$^XyJ_5N`J|z z@W+D}M>Ily*o7?LfgiGXD7O2vt6<&Wrbk+EdQys#gAA=67X{EJ@L6l zoPA2@S3ZKjc7s9W)rC`G$B$y>mAc6uf0ae1Uf+F^scwMfU(QulUM?(;-tj>OgY>Xx zo7Mg?R9#BN^c^)qJ!VZyPSb8h9>BpDX1&?QVg&dTNx+l-Mu;$=^TM>f z$Ys}pPd(!KbtUQPTKmEKdjFgX89bm zBgFM>7bXxYmAWnqXMr5rn9E7Lr;;NfL3c^N^JyDaQIAD&xWvFw^QXHlQqW@6@lVZS zO8yX*5Q+Lx5rt(}eTyR8Ck$F76KNR z>xX0yBWW@=BTP!ajI#86*|Um;)i<~;uc${l?zp)sx>GPwCVeTNBOU-a<)fL7rn+Rp zCRlxhF#p7H+Dm(F_HlXus8J>~wg`c{e6APYy-mQLoq~#d&>{_5{6+-!Hqc*5_D|V} zA!7HU!CZ%RYDT)@B|qY8)2ib7dK3f0(`5=@gd`J_{B!6SSz;+heJh~Vpd3e7lAc2O zF}08>I6B?dIKZ7uFyHqKZ*)g~zfL`(Oso4~!a)h6WZdujIJ7&fj>4NuBstD4GYoaT z|M+1mI6^hJkqg{n(c;Mj-vbfHQRP1B5eQm5y3ki%!RhYbhB9YP3+F6~5f9vzZYQFs zgc{;%NzV8_PikwvhTp9h=7%@cQTULBH@i};`bRblBXIFpo3BqLlA%b^!SGEN6F;vV z_ROovOD4twWxk~b2%n&%_{M5K-(Q#BlNITze)l~q-!;{-dQ%QQ%WJCi{~Zz`#?L6! zX9#o8DZg-c?`eW~F6FM3aW1O(3u6!g5k8p-G8+GvyNPZ+=lA`${*ul4^6 zCgL>u)CZH_HWFLBGHKpaugj}PbFv+b)1cFlN(kTfM`UxMapRADju z)273T-4i%Wnc{Rfo^1HV%%IHU%U4EL{)Tl%(f+ePqQjiU&ac?PyJY7N$;R`t+Z6by zK#I;Ox#&w?@`dr@laSW&daP>Z!3DQSoaVPtsT#fyG1!JoE=#6iyB7?w8w`O)mD*!D zYwp>+@ld=pk4xfrCuPr%p^EP-+L59*ee1bk%0+c;xa}pAn*}X%-?#|)wje)&5grGB zZRLR-sBHp*$eE}+&uJ_^=9yigm~8d<`@G0$U8;8FCe!kZF8(TbULac})9)=}eGQaU zAdv<>=$*y7idcYAG&;Es*g`&>4!Ge*3pyz%Dn_hV>A^=)knWH+M6t6?3FLMC^%bUQ zENv4DM!bwZtbAKXjvXju78i@gw2vVy9$NDTt)v?*Dpn@`&XJCMziRRA+jg!TC>Z^W znvk)Z2UP6+{t+Or6W`K*W@PF?DtgCqo=8!Ii)^kyt^#hwuJGWwVH)#cpa{XhH4?(Z zf!)KIpm5gB8>6(1a!-M})6#=iCV7L^REQ4a#Mr6LCwZd%?BEeuKZnS!9qK z-^Lqi&HHn1(_cl^C)nKK86a_?0Bd-uFtZAFB;wZ@j|EeO z2~cW|`WRz{rL%!?#_S54t^`e+joO@utz$csZ%z`wz$p% zE^C5E$>XqO)9pUzy?Pfb5)PxMXB6>zS(%w2q*k=bS$gG2d1y)u7C~aoe|FpeH{AdT zW|IH>JNo%*Xt{i}T>TrAZ=A%ynzJ*z+8+w@)Nk-KWcf72$dpMkZ*vs0{3zhaQRlJ_ zSzocnf(I@hqborC4U=(Af|9lcUu7(!q851AB?T;IkJzFg7EvXl5CONpkgzUQ=4t>M z6w-!&FTO1<9otVH^@a`WZeDh11W>v*Q)Ke~F${HS5db8VI@Yi(a6Q`3X%I|#M z15N~e4mLi$ufG^sSjH*}hCaz2wtC^QQ)Nnfdq1y}=$HT#)@~6%*}zt3=1VKTC7T3g3*f-S;#M9%P)o?s0syvmz8# z?3y{`=S`smiP^X?i2_1Nh|>>5h|oRY4%wqhzwFMkB@}yQ_;eM0htbC{mbb?KlF)#^ zyy$Uw0M{F!;iHW=E<{_r4LApqwYmVFtn5<>Dc91rrc8V~uZj+3n`=^5+Pn;_L6gOL z7FGJkT~cRNu^d*2!U_J&nR56L@_iRrLeE=fib_*nNh_3Z5Ye5;2|qZ*bV%TF;)82ave!BYE_hV# z83Vx3MVZf&tBS^oh}~Uwx3CEH4K#RWXYJrK?U72e&g!?n*uOMx@D(xs#>dxcNQ^8;yCU%qw9!NU#GDUn zl^^_LQ&ivaO&KC)JbHa`Ko-wg4!BF|j5mDu164-TBpiFvTg2s3^!h*!KHj(Uj7bxT zO%FQESk0Z*TgM8ti}>Uw>SQpI?rneFPSsmq=?o63!9bOyyf=r2b9*570NF9$mskw& ztI+oTayiZjm4@$$tUV@qR~|yjdp0uD^{3%0#as5?H-^>|rn!ZA>D5k7`m3>4c=(0gjGC^bv^Lq3^K^rR zus$Nx9UaP`8bh}|ewg17+PM>og8=@1i8Se;q^#4ZAmZVYRy-kn`LLj{wpGZ!oVH@b zB2BEhkAb}U)3wg5szqT%A=lD7|2)K6Vy(^1grpN4*6TUML^&;Sg zn;QhlLYrqJ{|;V!tuK0A&*qe3G`@WAxXsq<-t{mita__uYgk$<*C0w}?<4B(^hp<+ zbvaxWP#)*Mk9?M5YBd@6drh(_od-2o#xqc)y2u@gdRkDtOgEc-MRi{jJBEy#YSae- z-pzB*Yf!E-MEy&Z<{QDpuaVgTU(~ft%M$EtpA<`XogGgp5a7Hl3FFo6VAnI?&PJ++ z@S(;BfN`-$hX#j31x%|SLKaXN_TlS8SJLAzd8(idzo!lckG)=AL%i5rJ3=KS4Ces5 zBB6`ek5>-=-3w6pz5}*Iz@PJR(^@wDnT>Q@a<>vy(E4^-5~g04ZOD%Jp6|hA^-2v& zK=EDuZz8?hF=m3&;^^+7&8>TBw1){o$uNdXgWdt#(-pVCZ=IjzqbZ@a*a{wx#C*`v z)-^r!rzmw_!;Sv3RODvh!XBc;%Y;U=uZCFYxw&l>FIOMUCpfprimwB+UU$5nyatFW zzd{E0qI3d_`@Fsb+-cNHzGwdeHF&-45pJHD)-Be1Hs8{2iB3lI{+b#hRk51Tlh`(O z*K%fW=I*l#d^FMOh`s}ZTJ>(Z!S6-D3OTdh33=9~qS&)DM!f1*WbEt<3`k4l`0Ic0 z%eBP%;SwcaO=;?En$P%lHlb+}Rll?5U~+g!-pQ1E{ppXw+6iU815q_@0_5SFdIt?r zv*rHH5QgU_nO_DK!cojLuizLGH%)ni{v85^)eQ6yg4E6lmaOeFH@7MMTiA5hrf|yo zZ-*D@=X^lbu9!Njj$d6Q{!$KzG96659SXHfbTu%TmswV;p%CMh=Ybtp)#h*ggpiwq zPbr+N=!Mkbcv=2GZ?{8;zvx5_f6{fSOGr#SN_n2RMWX07&{RNX$wGHRM(Mxjs^P|1 z9bHa0E4aiVl7W;Dk1b7a>B%2cwX%58GV&ddyJ#ZLN2W2H7Nl}erz*N@#l5 z1O*DnSzSu|auSV&4!SPqU z#QS(Ugf5|>z!vvd^W3}>g<6jqoj-jXEH~}pZ3T_0A_&2w91Z{RUU@aU@}#&S4C#Cr%*-qUQCpU z+8`EPkL(tnSeU7JlZkJskFQN1&sN;`OI@-jQ{}KVnBS9V7?Ekui`uXD0Gb3E-Nr{O z9zcG-YJGtFwDS|>Swh8ZJi?#DX3&hUjCI(w-vg>rSUc*a^{GqDu5*cZezD@Y#28BN{8d^k(DqC;)Izdpr%Z5|@uC~2 z{C3S}L;5Yto!MIe6;ixshe*`Ym(xGDP#*vg*Ze;BUPW++$W3RSqJQ z3teR=b==CLJ#V`a>>F=SiiHFuw<$DveX-XtV6-0Y@+04KMALxpFQ_rdeIc`-+*To;yJX=&QiKK{b#xPPTXPu%F)z}a^z9X2%*jFE?8 zcYAX^o`3Od(C0sJ9h>v}hMd9yOEuOI{rcM17EEKx!v z(tYZ@+s%>gKj|3d`SvxAw0`AJdEr%i(A?1v$Km6~ z%#QvUD(z52y8Ig9&v#Gl*9~=r^qLDg3H>EDol^2!Qdb?;ur9nz&?V~ug`Bw>bgOmm zhFhBMg;rb2z|qW(l}^0X2Im{g(S{p8Vo64Fz2SH54&T9{*^ZByP~FOF+^;v+^awS; z>wV%Mok0Xu*}e4jD`6`C;aQQRtHX}g9nGcd@oT1Bm^Dz4h9-u?Uz!A*oAz{y#+yS- z%~0Ysq6!4~8qXNlUR{ZoKb;6TZNL2}N4mcn_bIl0U7X0~3ilwwh4O7Ei?rJA8aIjX z*0YhJxY{1&(?oV6f4q=Yh$OnYllE-x1UZI~>1t}*{|-2|P{Ncle2Nr*2!EuQ0V$sw ztGmolt2L#ua5mZJLD472e#c=kWO$a57AzY*7>_w_*o~}HE*;nC7_oVO zfs7|$$N#A%kV8j#Gje0crk<7h{qrOpF70cG+q11Kw<^1NuBRBH#;}5C$cl4%Z>XK9 z@9=^6X>f9;!yCra|j-|-M-5(ucfklyfaUmvq9x62cB&wT3 z$RL*AE7zQYiF4QvXbHPrn6^rMi1WEQx916blix3u4v9W~LAb>fWKWJC$tOF6#_dxw z*{ShU>dYt5P2H?J%E$S{9@3>WSZ>O|`t)A&6XpN(n=N?TD_LkTy>yniz-rq|7~QIm z{c1?If1JRP!rO$4@Bty7SBsl$`y;7VYmfHx&`MA(`UtkZ9u6CK8KLZz7|MRlyt|^w zKDp~2mEBD-)$8#PUIKBLzXwl?0~XP8{~SV6t@EBqc?oU0>n!hPM&t9{lLE?QW1wpO zZO`P6bmkzaoOU7ksNUt?oKL;h-w?q{5W$}&QQU=Zh`ry?jAmt!|MQ8)V~oJ$>CZ9h z5qwL`;{t>VRI-*k0ReY4x zPWV?V4>86N=W@EDEVtsp%zhK|4{vPp?@x1MTiv84SmA>652X&r1{FG4tYW29C4fRY zo-=s<%dd+Z>xhZ!{zSR8S6I7)Jxo^xG+3<_>sajFoJV2Q<1 z{mXaa7+d`lala@+^8<|#Ns1)drqYGNf#Z;tKMV`4TFAe?f9@7OiBb0C_Ae>*_(ck7 zWJ$DhfXfS^LMZ+E-8G|RDJX#cs{_EQ>)BZpCu7toI}iHN)ax)UH+Bw>aI zJ+IC`vyY{c;c(mZy6+|&yZ24E`!|s+gU{Fe*X`_))+;LgPD@82POOA$jz~h9OZP zh=QP%Lhy+yiUSPJJvnp%f%t)lc1Cu#oq@Mi0XZd}uw8dp2m3N>XA(NBR~c&$W8wYw zgmi3wK_|ty)|mc74)kBV=iXScj;NsK>l(YDL@P~=VR5AcM*feJ2SkiTgS%$Wo{oXk z5}^j`o_CTptPeUs`|};u2J={iat%)(5fcr< z>mG$wjOOd_GrL?eefX%N)7Exs1IG1;1VxpzZoP(Hv&#(O1H}(VUyUxuvhjq^S=-xb zFFeYNn-05tFrWhnvEZ`4C9aB4G+`Q&TH+)YhqWA)2qFFa?miE?dS3>jKk)C?Dxw}G z=p@m_<$1o+%*$wSXP+K+7Aeq(WC3mC8 zWk%9IEZuHzkL%(Ph?hRmM7$3_-c)3lx=t;Ab5|c**>p$E=4J6b><_Oxn0oH1;ewjA zBynGRKyflixjx2KBvDT?*eLWw!hB5!mhg=o0Kz)w<+fPRJQEjE(^h? zZx0-5m``Oof-mMgI*8&3O(I&QBf9UUG)pXfOa$Y`os z9&j$3c4Ym+HFqO1MEi}45@o|a+b{!((UxxxbJrSqf8H{#4zyi#gn!v4S+wj&pO?Pr9G02r8Wg$QMUn>@k4!di_eQtn3={f9{~7)* z?$C6&#@%w6{>?+zJ^5H?(`N~doI*Ula5>>$FhEHE-VU~BuWJ8!{P*`X6MIDR|K8c4 zAn*R~jeOGY|DRcpnDKw$06&_;|9?O0Oy)JDSiB=&Aa)oDs*o>8gOB(eM77M9HeI8V z#OQGyy&pCiN${x}*IOES=jT#%RFJ}$n}s;EA2Jz|1tM#*8$j<0inCklp9onlo24 z$E9zvnelGIere%-$&$oq+QzfvW}r1o@papB&9`rm0VtPxV)IRf#c9F!|CFd+^*EBc z>_V_-6@A&5Ao^Uvkb^Lb`u1xk_~C_YwM7b3ck^vz1GHeBnLi zfEYLS3}W@p&gVxZ0};=*^gm2wm)S-y-c}fdjj&JAN%A+~+q$!sj5&wTl$E(g(-l)> zisLP?N|x((t6HGch}Kp~z|nMevJskyrY>%-N4Y_zqAvRk7?1?9*aQsw6vH0JN+VV~U z_@jENPVy|IfL`B34vykMHiMRvF-38#u3b~V9dIXL<>CCd$NtIOYkI&aLDA_4v4(I( zfGd=1##z$QK(37}q*q&8n|c%rq~p6?RXB07&-Aa zHFjw@ywp@Sgai7~@27JtD?1$cWvhbbjN64vVsrRGdPQXa6c-5852x{o23*_Hv4!`v z#REfUf#CUnWGJ)^6xMcJ27ZtZL{-(N6fO%xd#5A-Wke28B^B>zRbiWBI-Zt_xTA~fy>W15(3SuN<9#cG>^GoOZ|JBw0 z39Bf6YeixTFM2_eCSwj0Sb!yf+dw@pIcd@?l6+FWYVq10$Yxm3|40u-**WELJ50Qz z&ZBm7p0a%7(kV0fDJlz24Clk^#x;eD2S*uuJez3a-1Enabr7(I|Dq(HvVu-&{9fF> zpghUCzHX*$Nus;gP;3sONM)#E9FI$+`xSQcE+S)rSUf#P0k#uu@gFvT{+A6DXo7CT z4@D?CnIFAmn_()}+pEdi>m}wW3|P|SIMnL94wQ%J-ZB9+r~b`t^+JtCK)lRB^a3T$ zaa2Q{uXb0rO=9j>i3;VuvVHfhK-V>u6lF!m47E5{w>eE^HU3&6u@{ey(_&d6oW_-h zN(xf;wJ}g#m<|04VXU>b-g89xTl|(BWdh88QdE)=Uw+@&9ZObkLSe+l*%|DnQNmEY z#!pARZVVA}?O2H^e6HGU3BrF+hWro8iYio8Qc~16EA=Ge8Em~ccV|Am4x}p)g(cdKSo77>@xY<+RUhD>?H5ZR#8=5?Ka^ovi#)uy=gSj z>y^O`BN5MG@Urs_*hasK{eLh_J^5noOD$3Y2%2+t~{u-BK8!r!o<@MmeGf(6B~)VA~q6&hv2trnHB1dx`7|7au|Y6=q-)nu3o zx_RAr)Sm4GiMA2^&tDgAFM}3A)fqERXnkWW%-~G6@s8h8qa%_url(ha;KZC#qV?Gm z2cEb{iQg+C`4D|q8lMOD_u4oA!W3&%DSz{lmbdOL;MH&|0bt{{lAgbI{>wo7rZI+$PHx$ z6LkG(CU{(E@1tyY3mH1YwxbBSl|&?&V^@ue`x8oGT+^^{^}rAcR5f^{ktFlJE=A}- znxsB!@^pGKR_MTQ!S)&d_2L~yiwKV|6?f~e`1957{uVYKUo37lQicb_I&v!`g*E)H z6AlkBr*_$H`MoU}L*R&4*)A{hs}H&ZS_=h72O|Xo_qKH0e=+BvKUFWNIxt|8L6Rd$ zubNG&uz`!3V;<~D%bu}ys#-Kal>xCuG#}i*CU#(W8M|$P1!!G~;3i|Ahk|$AT)*_8 zH&96nr1`F@$_}y8QCxy15xlNVA>V~??awKpj=2@aYdFaWp%E^B5*k{BZs7Kt@oUEQ zyseSsMA2J$eW1M*A-@Q)?(Ns<-?VkVt-^p;!^Y7uq|&gNTwNLWl+4FkaJt=v{m_bjm&nJlu$7lRV)agDMGoO*!OuL0my2^a?`iS0m!Dt zyZ5bx`*Wx*?Kn5B#cqA-tUEz`_f-lb$L)g0r3!#CqoC_wE81tjTnOJBhQH)l3pCsw z@r5R|;B>E4043P2^jOKqGeZ$F&>P68nig4-gMpm!B0IFCnq?(vsc5baQd%l-x>dY~ zPUhQ#=E$JSK_gqf4W|EX>m0=3VPJ+)Bc_V*j<8wJrJE{Yz#r{e@OXe~@q z)yzS@Q!r4nsSE!QkT<&X;9C?m=y}7eQ+3LnJLFcLz=Y%%nI3~5Yh5UQbi!)Qg&)aG zUKd6l8?xqya=htd5PBrGQmH@`l2+m|K@}&UyzZ|x*A{!tpAVXi56AR5%D!EisB`fm zub}kNyj4=vvRCp~7!UmQk#UZ~?St{MXMtI9{%w^FSs-a*iKdvPCYJgkvU@CNXf z0!qq(j=F`|j{^Iz%SxLmCtIF(bsMZnN=GWISr5hJ#NZc~?KU_8ykMYJ&}j z(}PxB?dvbGWt@1I*KlR{j0xtK*!P#+hqbsSod|62>VRR5|3ge|S1pom@u$RSB2<8w z`HN-w`y01|g~>333|bBGPem&SFAUD?$fFlP58FR}vME3LOS^&_6O-jEsXqt)ybH`_{T& z=6;9P$wPi6OK*dSQhHGygtcULsa$rrPjYw3qpvIGN!q9-qvvu8Ft}2Ka1I=3H?~qE zu9ey?+qlh&SLd~#ip#Np)KX#9J>ypKwPL=VU9cr~d9Q`s%EqmRiAx^y(*WpSxw<=N zBe$?Nb#VSBoJ8wVgvDs#Xnfa#=1KK{j%ywcrf-;ENnqWkCGc3voZfBH!6IFUc2s&= z=<_bVzPG<}D@=C6y4S%$y_Te34i-!Ayqew5#)jTl{M*3|-nA<0x|a$A?f1+9W?gu* z{ITXNt*X6EfW|FUn8#9`R3b4PBcb0h)oE*(nLV5#TnNFp1`muunf{`26|IEqDrxEJ zVHv&APf+W#)I3dey3UFQy^)T)g@)!KIlO%+g@%?RP2Xz#S$w_He)O_DG$5+bpS^M0 z7$1`+77x9Vrf~%uH;7!;SYKlNN#b(BedT5&6V@(laGu`vqJHICnmk`EXCt)pv|_6X zjFsxOq+)S6+`3=V7;AF;5WQln4Lz`OBPp#1ieJvFJ3d_Pzm0;*8QkOYIsx9o$Kgp$ z(X}o610C%ee%=DR^nxbsnvhck9Q3&`7+3^0=;;kRO%PFHG*(PIWdX9Ak9jKvIi%9l zQXgGoH9rnH_*FDQbMQdZYAa!7kf{AIT4Q!$4X8^|ax;o6lgsykfvg7R8aX%S=Xc@L z)1?jr5)mLDEC=?43KX$a-x!<%oJSoSj(K8nx6pAhVK&krEu)eo4(m2z^h8FHV zkpae6Cx&~5b$_64%ufOKS2)wv#{>-yJf6I&=7+On%lD;p278@#hi&SmKD8>|DqLN< z#mm;0y!JNcZWdye8Bw~^N7+H_6|ah+o*g($r9n0i1ntpp2bKt7F&y+oj-C{{mXDJE zRXXm5EV0|Uy(x^Z8yv{CDHC#w z$9D0OTSvqV+e0ZSK=aJN157PX9F9C1O-ML8coABn$GR`M5i1=sD-_3%GrldOx)vGf zlm%HB>|HrMx#<|-q7#+cT9~((bByY#d9c_z;NGMaA8LTsBu#kJat;Qs8yHx0kEuEo zLy`L73GbQbrVV-sgEj{yUrHZrA+KuCGA@lZCALH)YYOiuj4j)OfZ(5qiwG)hJMNS9 zJ{~gLdswb2b0M1i(G=RtPHp*4Sq&YwsNq_rVjUjF!FDlnGpH`miH_R6g4jwWl6}Ta zm}e_&*}{kr+S6j(rOuLS6|0&BbZ;n|AqvRy?onC&mI4MI?)I?CCM zRt}C04c3Ag;VOZhuBO8VJAta85c^?1(B{Hm-EaiBP1-NHdpl(mT1|t4BW!h2WH2o( zGJ;yIvAEv-Beorv^l#EZS&b%Gw$f4?lH*n+H$G1LhM*7gZisF(WPaMXT#Z8+*AK zh8yiPdbeqKT;AG5Bh+DLr++vyi&)1Xq_D?T7#Og$e_4kj^sm$s0OsOuDQ#uv?<&lC zKyQRb@yTtSB0JbQHd1%_pAyKP-;$VbGbTeTgm(lcJJjg74fdvx&0sEcJ?cqrMps*} z=y_ujv-w1>!suN>26CJ$c)GS8BABvF?PaC32vC9O(xbV6OTrWC->lOYZSKR8#%7D=|)ebF!#J}Aa^vyiwrQ2|sagp%A8r?xPQ;DQ3xSyYl19V0sQIolr#u?;k` zn#CS3>G40{ph?CYONGb)Q|<$>bFJxh!vng_R8ez%uC($)Ab+ZYFs4k{LvLWB*@VUE z^B-NCpou_|+|(J5fYp&KjVIXhjTmRdCO>Jlda9+c` zt7QDSH*b@nvPIt*pZ1*s9`@-`foiR75D^QcHUm?*rC{ z6RsH452=yNn>pL{JP6rU)*N6*cyB^+Z=ZG5u*tlMy0f}*o3v`~>}z2#-fb?rfurdi z3&)sgOz`A8lCVkZqsc-iFfYotiTI*t=_Y#e((ZnSQ9=UVWDMBh04opoFO>hVl<$YZKuEJ=5TI4cqAl)WI3n@=}oyS(?i90y0Zj05MCg>|7iINhpy0Z zNX0!dugagoqa7@G7VbMu3wPB{)yK_}N6k=VTm0?W6-q$S9OXHRaTt~aI>RDC0NA8| za~Tc}ku=7#Rm8RRv0O>v{w(F^dNGl-1a$U>j+@j}_3RfNZ%+EU3=cft&7Kj_fN!Co zy;39D>_D zp>kp5gm==BqdUxtmi9sW3#!8rIMH0o9^Un&ac(6JZxz9}r&FRC53`TY{ti6t>Rlhs z-5+|}lSe|iHX3J_Fu})Fnb^{{KD_(|%LMF>7sb6PeWZ{c zo}Yl8KyFo1%JSbvkm*U42W#F@534ZX*rVsZ^_Y7Y+&YOUrSG5;wwnk8dIKM?8vX`& zq>4NfazrVcI!!*b#gP$-@GVVF}Bifc#C%}jdz&AtXeoF+1~ zA!%zKV}BXa_3yRoK`LLRC%^3YVmFzz>f$wY9A2oD#58Ag;O+czm%<(MI@4bgTV2yo z^iSsJVV*2gt~dCq2wU6Q09Mrf?J2iC6{ywNNT06!W|)%5vw`tz`TwfB z@}Q=YZw-jZI-sbaYyt`cVP6FUaR4`n1W^fuT_BM~c4Z47BT3X5qYMPu3_5~n5VRj=yZ>VIx^*X_RDea|`HcfPvqxUC@c6mwQG zP1;O-vYK7h8oiBUx}k@1Wa=TN+%7BFU?kaL+46t|_{vMM{zLOmae+>|u|1j@BamyL zhLT1tyK>Q#<7y6qUb@*6MS)`mc6U+(zy2U1+pQ?`Zpm@?QxU^Q$sxI^tJm@K4~f+1 zRLL6QOdJ0MQK&teb$g4E?JRom9j5*McSQ(@AcxQG5U!rPbQ0T&%Q?8{$sabP%f@b| z(v_8;s1r`bZ|d^QLzHkz7G}5m(9nA5G44f%mA`z}E3W z>cVK$SJL#NUL};hX$%I!F?8ZvD$o%J*}5Cpu`A{hMN?rNA$k?7YuA72==f-Z0nGCx`1xK%to}kcsrtqUhLvkmc0}) zTl41ZD<0RPbW)EQzFo8)G{Z}MD7#u6brW?90@rLHO69G^H@{^gn=Q@IuaAYpE>eDX z*glQ$^f!cRe$NYi`+231Kyg5Zg^CNUvi1m_2ty$Zl$^+Y)m`0;p!K2`K1fH+Gidoe6MLrS^M4oLq6gJ4-XJper@GB zo6arW{Mt%=;iP&`#*mb9a`oyFz)HK@_z+qNhMxw>bbe|WD{12SVWH`fRpo9C@4Vj6 z&pyC@G#=45y$0a>q{>UI@?eZ1;gHaop?ciDN`vjijl*HtCE(#Qp6h+IwNzY;@eC`p zyKN53P-w~*8nel|e6+ZlQ5$JR05FDhuMt-Vy8W(#5XKg(2zef0D7^4Us&;Ls-(umQ zSGG${vE5O69QdGouf`Rw^o2Jzzl)lLQ=OV6aQj%)^({l#v#Sy?O#`uhvs12hCwGPV zzbT|6Xg@Qo752LZyg$;xDM#5dQji@N{JvoN_!uKL1~IIn*76xoLasG7J5qKr>3Otx zz@kbAGiUw2G!MLmXowt6aAoSd2Pq7gr7ND+O zc9!eug<5!f$B<0cKw$PXJm`fC$>`+yV4__1f@kxZ%~~PPUrPtm(PJ3;t@Jm`v3*+- zyQ#Cql72I9!*AGa1?gVX9<%l5WL+S;%@;`ljI3vguX954r$?K2Ivbrp2j(zw`+#6x z+D!LAB&B8EWy5?zJb9pO`B6G{Nq~^(?~?L{{2;+^F$?n~SjmgiI8U0z%De*gp~MNE zwUzdaiK>xLufNoa^AK94LSYZ2-0=x$_pF6rFC={~+N;AVIa6~*bt!EivL}Z>k0KmB z#LU`Od2aPl7#lsVepz%}R&AHdryEbaNt9PJr$i4W{IOoUj3_fPT*k|rM?*rT)9O-N zXrkL`(CRTa@Y5fFC5DZX== z;_KC6`XJe%@arz**i-gn^BS6DB`t5sqhg5umSmSzxDo=w|H?UAO@-#zZfu}`r! z$N3+}KVNw)R;f+M&+N8lyfR^Ye}We-9J}%5Wl4Yn@8&}6BPzcz{4RB{gh^CqH8I%( zyp#b&*^@5XQ$1GG^05g)^%0jD{fFYbjc4G_QRI_%(*psrCyNx>6Ct8nDLR8V9Zm*m zSFpRgu9g2L6+`>AOrX)?l=VSc=)DFz;AdQ=iy~wq8ZX-?&2^y^>P*S7V~RdlLf$N1i?tjYXemAl=XtlVB}K`Z0m(w z!MZZeQ*p3&yw@9od*9t{Io9gqe=;c65a*PPv$Ic^7Su)7yguPwE4 z6C4kdvY7#B+}og6@N!)y&ZdozH&x2JnT5n+eG(ie!<6V>eYIb ze#*MJZK%WrO^Th+Vu%P@TS;o`4DwBjpTD8vgqNCtc{>)Qjjo%i9%VC!mGivjp4CRW z8_%c*+id#YN7oz+m*TbMSqO8rFz_H>AUBbZUz;1s+VD4KJTw)IEWzM{VZNjKb!B2* zK$4p_@^GD|h# zt=#xb&gxF9Rypd-c2w8O=hx}Eh3saurP=FIccbKi zN1O9^S~W!^8tb6z8qHc7IpWf*Z_xGr;^EKzn==!vpB}fS>n%rUCt`G4qY5k4m2;_$ zIhttQ^GT{^J6*rDy%>2tQdT{;J4 zHVcHkMdM5E02UuTXAM=Qxr|%8i^EGBw4)R2k;)*<!pcCwBYy(rULS!by;=NQf{pN0RV zxJz%gtsmqCEes2BtuN)~ zmsv??a_rKlltO$7WTQ{m)*G1F~XbvD`ubl0F)$`KpqA#C?k zvUi`=^0+yEi#pk}TBRRrUfAhRPp}nvkmqvCYV{Voa(7rk3SMy;u2XL-P#P~SvavlF6V&_tW0cz zna?dgwP)vVi6z4wO*zxy-f~3Z#2A6|a0iYIXlc`tw-#0`%`OU3#c?+E=;WB?)B{~6 z3(2)di6#BPBpD%)DZdBoE0;2_YEVv?jie=iqwK7Znx{O)0l;L`pX6OefZH=)fZ1Ku zw={j;e@m(&SKmeucX&-dJUYRU24q)jWLcxL(NvG@ca3!&8WCRHcum6hPR|+;SJ~52 zKJh+h0GT1=Y1>)#4)aLA(hsvC5zL61rFqu&+A6`D2F3aecRr2}$_A&)@1d z<$ue$1XgW5lydKO{7<;`i^+jzNtcl@L>Y$SK!Nj9DfnDrlXAkuwV=DsMd>G%^|G7h zYW&ZhFxo}8#Q$+{JDMJa;RJ2T1;0|Sw6Y7jE9XG-UXdl15YDnnjHLJtBcx`@Qh~0* z<@CO#r@N`BlIpcQ*IWJ$&_-hoWttMC_yT1#0`pPeOfWkwX9B(_EGUq0B>|^knbj!r z--0UCQacvlF`+KGlamRm~xlNi1r+dL4pKQR}4uTRX`Kz*PO6waXr|HMMLAPXH_4@4~Y7#Zi zopdWht?eMqJ}^QSaaTm0<}TUL+tO7WlcmG#eBxD{=F*;TN7KCX2+H1Ns~6*z(gTq{ zpo}~hr8-p^8iQYTI(NfRMDMXw%>IptUhc>Y(E+O2kjKqYI(k>|QxrSDzm2(eofCC}ZbK0fC=?ONt6 z`T>A#yHNa{>iV#Fv!juBP#a#sG~XCb+>@wWfpE+0`167Z7-OP;)UbcK;m(z5V{|@| z`r&eD9{?UKy4Jb9JdZmC*aJ2*EHHEAw#MQ$$-hNA|1pT~wu*2KW} z-Ja-xPf9vhNQ~Zyi zK$2jFDifGh?mP(>hYh~f8WcL|`Cf<@y)f*i+34DZeYf>w&j!yvO=&ba@TPXz4)|;{ zG&nlfwe^ose%cFp_4Y5J&Cl*lE};Bz_*?n2S9|hO)c->KTFE@yoFT3%^Xo|Szn+M@ zb^095^MXLmyNOix-x|;VF42L*;U`)wy;5Z4B`>7Pn7#a4D7jZWSIiVU*3-oRy=U9! z`yawX_r<2U5l`|Gep;BKWX_)% ze!pvkmH4exPro1b*8swNTK9iC0@{YypOF3(Bl{C~qUWaXgF6O3UGL`GNm>%Te?ReS z2;zh^pnA1Eu$GpSneoTJCygT&e0ASuTjW&QcBnEA(D&^PmGdX#(4BwoF8#lh6YZHP h;I018^iPZ*2bQ&1-bEGyvI4+$>71ioxsA`S{{=#Dd+`7O literal 0 HcmV?d00001 diff --git a/static/img/v1.9/host/node-removal-normally-uninstalled.png b/static/img/v1.9/host/node-removal-normally-uninstalled.png new file mode 100644 index 0000000000000000000000000000000000000000..ee6757b42278eca129d5305dfaa9ed30554d7f30 GIT binary patch literal 70979 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 z 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 Delete**. + +![delete.png](/img/v1.2/host/delete-node.png) + +This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. + +:::important + +Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. + +Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. + +::: + +### 8. Known Issue: Node stuck in "Draining" state during removal + +**Symptom** + +During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. + +![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) + +When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. + +![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) + +In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. + +```sh +$ kubectl get pods -A -owide | grep fleet +cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 +cattle-fleet-local-system fleet-agent-747c7b5f98-44lq5 0/1 Pending 0 46s harv42 +cattle-fleet-system fleet-controller-6c5d89f545-q925w 3/3 Running 3 (126m ago) 3h10m 10.52.0.8 harv31 +``` + +**Cause** + +During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. + :::note -There's a [known issue](https://github.com/harvester/harvester/issues/1497) about node hard delete. -Once resolved, you can skip this step. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. ::: -### 7. Remove the node. +**Workaround** -1. On the Harvester UI, go to the **Hosts** screen. +The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. -1. Locate the node that you want to remove, and then click **⋮ > Delete**. +```yaml +spec: + affinity: + nodeAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - preference: + matchExpressions: + - key: fleet.cattle.io/agent + operator: In + values: + - "true" + weight: 1 +``` -![delete.png](/img/v1.2/host/delete-node.png) +You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. + +1. Temporarily pin fleet-agent to a healthy active node: + + ```sh + kubectl label node fleet.cattle.io/agent=true --overwrite + ``` + +1. Wait some time and check the node deletion status on the Harvester UI. + +1. Remove the temporary label after the node is successfully removed from the cluster: + + ```sh + kubectl label node fleet.cattle.io/agent- + ``` + +**Related Issue** + +[#11349](https://github.com/harvester/harvester/issues/11349) ## Role Management diff --git a/versioned_docs/version-v1.8/host/host.md b/versioned_docs/version-v1.8/host/host.md index 5b7d8ddf1f..a312f59cab 100644 --- a/versioned_docs/version-v1.8/host/host.md +++ b/versioned_docs/version-v1.8/host/host.md @@ -142,26 +142,108 @@ Again, removing a control plane node in this situation is **not recommended** be ### 6. Delete RKE2 services and shut down the node. +:::warning + +1. **Target Node Only** + The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **MUST ONLY BE RUN DIRECTLY ON THE TARGET NODE BEING REMOVED**. Double-check your active hostname (`hostname`) before invoking it. + +1. **Immediate Destruction (No Confirmation Prompt):** + The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **does NOT ask for double confirmation or prompt `y/n`** before execution. Once invoked, it immediately stops services and tears down the node environment. + +::: + 1. Log in to the node using the root account. 1. Run the script `/opt/rke2/bin/rke2-uninstall.sh` to delete RKE2 services running on the node. 1. Shut down the node. +### 7. Remove the node. + +1. On the Harvester UI, go to the **Hosts** screen. + +1. Locate the node that you want to remove, and then click **⋮ > Delete**. + +![delete.png](/img/v1.2/host/delete-node.png) + +This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. + +:::important + +Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. + +Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. + +::: + +### 8. Known Issue: Node stuck in "Draining" state during removal + +**Symptom** + +During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. + +![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) + +When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. + +![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) + +In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. + +```sh +$ kubectl get pods -A -owide | grep fleet +cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 +cattle-fleet-local-system fleet-agent-747c7b5f98-44lq5 0/1 Pending 0 46s harv42 +cattle-fleet-system fleet-controller-6c5d89f545-q925w 3/3 Running 3 (126m ago) 3h10m 10.52.0.8 harv31 +``` + +**Cause** + +During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. + :::note -There's a [known issue](https://github.com/harvester/harvester/issues/1497) about node hard delete. -Once resolved, you can skip this step. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. ::: -### 7. Remove the node. +**Workaround** -1. On the Harvester UI, go to the **Hosts** screen. +The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. -1. Locate the node that you want to remove, and then click **⋮ > Delete**. +```yaml +spec: + affinity: + nodeAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - preference: + matchExpressions: + - key: fleet.cattle.io/agent + operator: In + values: + - "true" + weight: 1 +``` -![delete.png](/img/v1.2/host/delete-node.png) +You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. + +1. Temporarily pin fleet-agent to a healthy active node: + + ```sh + kubectl label node fleet.cattle.io/agent=true --overwrite + ``` + +1. Wait some time and check the node deletion status on the Harvester UI. + +1. Remove the temporary label after the node is successfully removed from the cluster: + + ```sh + kubectl label node fleet.cattle.io/agent- + ``` + +**Related Issue** + +[#11349](https://github.com/harvester/harvester/issues/11349) ## Role Management From 56c6fa733d3789ff1fa591243581b8e289ad59c4 Mon Sep 17 00:00:00 2001 From: Jian Wang Date: Thu, 20 Aug 2026 09:01:34 +0200 Subject: [PATCH 2/2] Update per review comments Signed-off-by: Jian Wang --- docs/host/host.md | 34 +++++++++++------------- versioned_docs/version-v1.7/host/host.md | 34 +++++++++++------------- versioned_docs/version-v1.8/host/host.md | 34 +++++++++++------------- 3 files changed, 48 insertions(+), 54 deletions(-) diff --git a/docs/host/host.md b/docs/host/host.md index 69273fad4b..094246ff69 100644 --- a/docs/host/host.md +++ b/docs/host/host.md @@ -144,11 +144,11 @@ Again, removing a control plane node in this situation is **not recommended** be :::warning -1. **Target Node Only** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **MUST ONLY BE RUN DIRECTLY ON THE TARGET NODE BEING REMOVED**. Double-check your active hostname (`hostname`) before invoking it. +**Critical Warnings Before Running the Uninstall Script `/opt/rke2/bin/rke2-uninstall.sh`** -1. **Immediate Destruction (No Confirmation Prompt):** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **does NOT ask for double confirmation or prompt `y/n`** before execution. Once invoked, it immediately stops services and tears down the node environment. +- You must run the script **only on the target node**. Always verify your current hostname (using `hostname`) before running the command. + +- The script runs immediately **without asking for confirmation** (`y/n`). Once invoked, it stops services and permanently destroys node configurations and local data. ::: @@ -166,30 +166,28 @@ Again, removing a control plane node in this situation is **not recommended** be ![delete.png](/img/v1.2/host/delete-node.png) -This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. +This deletion process typically completes within one minute. If the UI status does not update automatically, refresh your browser to reload the cluster state. :::important -Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. +The process deletes cluster components and configurations without wiping local disks and bootloader partitions. -Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. +Transfer the decommissioned host to your IT infrastructure or system administration team for drive sanitization procedures compliant with your organization's data retention and hardware lifecycle policies. ::: -### 8. Known Issue: Node stuck in "Draining" state during removal +### Known Issue: Node Stuck in "Draining" State During Removal **Symptom** -During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. +During node deletion, the host status displayed on the UI typically is `Kubelet stopped posting node status`. ![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) -When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. +If the UI displays `Node is draining due to kubelet/node not ready`, or toggles between `Kubelet stopped posting node status` and `Node is draining due to kubelet/node not ready` for more than 5 minutes without removing the host, you have encountered this issue. In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, creating a continuous `Terminating` loop that prevents node deletion. ![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) -In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. - ```sh $ kubectl get pods -A -owide | grep fleet cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 @@ -199,17 +197,17 @@ cattle-fleet-system fleet-controller-6c5d89f545-q925w **Cause** -During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. +During node deletion, the changing cluster topology prompts `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` includes broad tolerations (such as `node.kubernetes.io/unreachable:NoSchedule` and `node.kubernetes.io/unschedulable:NoSchedule`), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. :::note -This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **three or more management nodes** when one of those management nodes is being deleted, as `kube-scheduler` attempts to schedule replacement `fleet-agent` pods onto it. ::: **Workaround** -The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. +The `fleet-agent` deployment template includes a soft node affinity rule, which you can use to break the scheduling loop. By default, Harvester nodes do not carry the `fleet.cattle.io/agent` label. ```yaml spec: @@ -225,7 +223,7 @@ spec: weight: 1 ``` -You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. +Temporarily assigning `fleet.cattle.io/agent=true` to a healthy node (other than the node being deleted) increases its scheduling weight. This forces `kube-scheduler` to steer replacement `fleet-agent` pods away from the draining node. 1. Temporarily pin fleet-agent to a healthy active node: @@ -233,9 +231,9 @@ You can use this soft affinity mechanism to break the scheduling loop. Temporari kubectl label node fleet.cattle.io/agent=true --overwrite ``` -1. Wait some time and check the node deletion status on the Harvester UI. +1. Monitor the node deletion status on the Harvester UI until the process completes. -1. Remove the temporary label after the node is successfully removed from the cluster: +1. Remove the temporary label after the node is successfully deleted from the cluster. ```sh kubectl label node fleet.cattle.io/agent- diff --git a/versioned_docs/version-v1.7/host/host.md b/versioned_docs/version-v1.7/host/host.md index 5f49ede31d..88ddeefd0a 100644 --- a/versioned_docs/version-v1.7/host/host.md +++ b/versioned_docs/version-v1.7/host/host.md @@ -144,11 +144,11 @@ Again, removing a control plane node in this situation is **not recommended** be :::warning -1. **Target Node Only** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **MUST ONLY BE RUN DIRECTLY ON THE TARGET NODE BEING REMOVED**. Double-check your active hostname (`hostname`) before invoking it. +**Critical Warnings Before Running the Uninstall Script `/opt/rke2/bin/rke2-uninstall.sh`** -1. **Immediate Destruction (No Confirmation Prompt):** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **does NOT ask for double confirmation or prompt `y/n`** before execution. Once invoked, it immediately stops services and tears down the node environment. +- You must run the script **only on the target node**. Always verify your current hostname (using `hostname`) before running the command. + +- The script runs immediately **without asking for confirmation** (`y/n`). Once invoked, it stops services and permanently destroys node configurations and local data. ::: @@ -166,30 +166,28 @@ Again, removing a control plane node in this situation is **not recommended** be ![delete.png](/img/v1.2/host/delete-node.png) -This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. +This deletion process typically completes within one minute. If the UI status does not update automatically, refresh your browser to reload the cluster state. :::important -Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. +The process deletes cluster components and configurations without wiping local disks and bootloader partitions. -Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. +Transfer the decommissioned host to your IT infrastructure or system administration team for drive sanitization procedures compliant with your organization's data retention and hardware lifecycle policies. ::: -### 8. Known Issue: Node stuck in "Draining" state during removal +### Known Issue: Node Stuck in "Draining" State During Removal **Symptom** -During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. +During node deletion, the host status displayed on the UI typically is `Kubelet stopped posting node status`. ![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) -When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. +If the UI displays `Node is draining due to kubelet/node not ready`, or toggles between `Kubelet stopped posting node status` and `Node is draining due to kubelet/node not ready` for more than 5 minutes without removing the host, you have encountered this issue. In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, creating a continuous `Terminating` loop that prevents node deletion. ![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) -In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. - ```sh $ kubectl get pods -A -owide | grep fleet cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 @@ -199,17 +197,17 @@ cattle-fleet-system fleet-controller-6c5d89f545-q925w **Cause** -During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. +During node deletion, the changing cluster topology prompts `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` includes broad tolerations (such as `node.kubernetes.io/unreachable:NoSchedule` and `node.kubernetes.io/unschedulable:NoSchedule`), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. :::note -This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **three or more management nodes** when one of those management nodes is being deleted, as `kube-scheduler` attempts to schedule replacement `fleet-agent` pods onto it. ::: **Workaround** -The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. +The `fleet-agent` deployment template includes a soft node affinity rule, which you can use to break the scheduling loop. By default, Harvester nodes do not carry the `fleet.cattle.io/agent` label. ```yaml spec: @@ -225,7 +223,7 @@ spec: weight: 1 ``` -You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. +Temporarily assigning `fleet.cattle.io/agent=true` to a healthy node (other than the node being deleted) increases its scheduling weight. This forces `kube-scheduler` to steer replacement `fleet-agent` pods away from the draining node. 1. Temporarily pin fleet-agent to a healthy active node: @@ -233,9 +231,9 @@ You can use this soft affinity mechanism to break the scheduling loop. Temporari kubectl label node fleet.cattle.io/agent=true --overwrite ``` -1. Wait some time and check the node deletion status on the Harvester UI. +1. Monitor the node deletion status on the Harvester UI until the process completes. -1. Remove the temporary label after the node is successfully removed from the cluster: +1. Remove the temporary label after the node is successfully deleted from the cluster. ```sh kubectl label node fleet.cattle.io/agent- diff --git a/versioned_docs/version-v1.8/host/host.md b/versioned_docs/version-v1.8/host/host.md index a312f59cab..52920b2842 100644 --- a/versioned_docs/version-v1.8/host/host.md +++ b/versioned_docs/version-v1.8/host/host.md @@ -144,11 +144,11 @@ Again, removing a control plane node in this situation is **not recommended** be :::warning -1. **Target Node Only** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **MUST ONLY BE RUN DIRECTLY ON THE TARGET NODE BEING REMOVED**. Double-check your active hostname (`hostname`) before invoking it. +**Critical Warnings Before Running the Uninstall Script `/opt/rke2/bin/rke2-uninstall.sh`** -1. **Immediate Destruction (No Confirmation Prompt):** - The uninstall script `/opt/rke2/bin/rke2-uninstall.sh` **does NOT ask for double confirmation or prompt `y/n`** before execution. Once invoked, it immediately stops services and tears down the node environment. +- You must run the script **only on the target node**. Always verify your current hostname (using `hostname`) before running the command. + +- The script runs immediately **without asking for confirmation** (`y/n`). Once invoked, it stops services and permanently destroys node configurations and local data. ::: @@ -166,30 +166,28 @@ Again, removing a control plane node in this situation is **not recommended** be ![delete.png](/img/v1.2/host/delete-node.png) -This removal process typically completes within one minute. If the UI status does not update automatically, force-refresh the browser page to reload the cluster state. +This deletion process typically completes within one minute. If the UI status does not update automatically, refresh your browser to reload the cluster state. :::important -Removing a node tears down the Harvester control plane components, container runtimes, and Kubernetes configurations, but it does not wipe local disks and bootloader partitions. +The process deletes cluster components and configurations without wiping local disks and bootloader partitions. -Forward the decommissioned host to your IT infrastructure or system administration team to perform drive sanitization according to your organization's data retention and hardware lifecycle policies. +Transfer the decommissioned host to your IT infrastructure or system administration team for drive sanitization procedures compliant with your organization's data retention and hardware lifecycle policies. ::: -### 8. Known Issue: Node stuck in "Draining" state during removal +### Known Issue: Node Stuck in "Draining" State During Removal **Symptom** -During node deletion, the host status on the UI normally shows `Kubelet stopped posting node status`. +During node deletion, the host status displayed on the UI typically is `Kubelet stopped posting node status`. ![uninstalled-node.png](/img/v1.9/host/node-removal-normally-uninstalled.png) -When it shows `Node is draining due to kubelet/node not ready`, you have encountered this issue.. +If the UI displays `Node is draining due to kubelet/node not ready`, or toggles between `Kubelet stopped posting node status` and `Node is draining due to kubelet/node not ready` for more than 5 minutes without removing the host, you have encountered this issue. In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, creating a continuous `Terminating` loop that prevents node deletion. ![re-drain-node.png](/img/v1.9/host/node-removal-node-draining.png) -In the backend, `fleet-agent` pods are repeatedly scheduled onto the target node, triggering a continuous `Terminating` loop that halts node removal. - ```sh $ kubectl get pods -A -owide | grep fleet cattle-fleet-local-system fleet-agent-6dfc5584bf-4jm7r 0/1 Terminating 0 46s harv42 @@ -199,17 +197,17 @@ cattle-fleet-system fleet-controller-6c5d89f545-q925w **Cause** -During node removal the cluster topology changes, and it triggers the `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` carries broad tolerations (`node.kubernetes.io/unreachable:NoSchedule`, `node.kubernetes.io/unschedulable:NoSchedule` and more), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. +During node deletion, the changing cluster topology prompts `fleet-controller` to roll out new revisions of the `fleet-agent` deployment. Because `fleet-agent` includes broad tolerations (such as `node.kubernetes.io/unreachable:NoSchedule` and `node.kubernetes.io/unschedulable:NoSchedule`), `kube-scheduler` may continue to select the draining node as a valid target and redeploy agent pods onto it. :::note -This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **3 or more control-plane nodes** when the node being deleted is a **control-plane node**, as `kube-scheduler` assigns replacement `fleet-agent` pods to it. +This is an intermittent issue caused by a scheduling race condition. It occurs most frequently on clusters with **three or more management nodes** when one of those management nodes is being deleted, as `kube-scheduler` attempts to schedule replacement `fleet-agent` pods onto it. ::: **Workaround** -The `fleet-agent` deployment template includes a preferred node affinity rule. By default, nodes in Harvester do not carry the `fleet.cattle.io/agent` label. +The `fleet-agent` deployment template includes a soft node affinity rule, which you can use to break the scheduling loop. By default, Harvester nodes do not carry the `fleet.cattle.io/agent` label. ```yaml spec: @@ -225,7 +223,7 @@ spec: weight: 1 ``` -You can use this soft affinity mechanism to break the scheduling loop. Temporarily assigning `fleet.cattle.io/agent=true` to a healthy active node (other than the node being removed) increases its scheduling weight, forcing `kube-scheduler` to steer replacement fleet-agent pods away from the draining node. +Temporarily assigning `fleet.cattle.io/agent=true` to a healthy node (other than the node being deleted) increases its scheduling weight. This forces `kube-scheduler` to steer replacement `fleet-agent` pods away from the draining node. 1. Temporarily pin fleet-agent to a healthy active node: @@ -233,9 +231,9 @@ You can use this soft affinity mechanism to break the scheduling loop. Temporari kubectl label node fleet.cattle.io/agent=true --overwrite ``` -1. Wait some time and check the node deletion status on the Harvester UI. +1. Monitor the node deletion status on the Harvester UI until the process completes. -1. Remove the temporary label after the node is successfully removed from the cluster: +1. Remove the temporary label after the node is successfully deleted from the cluster. ```sh kubectl label node fleet.cattle.io/agent-