{"id":34946,"date":"2024-09-05T10:59:59","date_gmt":"2024-09-05T03:59:59","guid":{"rendered":"http:\/\/jupitek.maudemo.vip\/index.php\/2024\/09\/05\/rotate-kubernetes-secrets\/"},"modified":"2026-05-14T10:32:13","modified_gmt":"2026-05-14T09:32:13","slug":"rotate-kubernetes-secrets","status":"publish","type":"post","link":"https:\/\/jupitek.maudemo.vip\/index.php\/2024\/09\/05\/rotate-kubernetes-secrets\/","title":{"rendered":"Xoay v\u00f2ng Kubernetes secrets"},"content":{"rendered":"<h2 id=\"h-bi-m\u1eadt-kubernetes\">b\u00ed m\u1eadt kubernetes<\/h2>\n<p>B\u00ed m\u1eadt Kubernetes l\u00e0 m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng l\u01b0u tr\u1eef th\u00f4ng tin x\u00e1c th\u1ef1c nh\u1ea1y c\u1ea3m nh\u01b0 m\u1eadt kh\u1ea9u, m\u00e3 th\u00f4ng b\u00e1o ho\u1eb7c kh\u00f3a. M\u1ed9t b\u00ed m\u1eadt \u0111\u01b0\u1ee3c t\u1ea1o t\u1ef1 \u0111\u1ed9ng b\u1edfi m\u1eb7t ph\u1eb3ng \u0111i\u1ec1u khi\u1ec3n v\u00e0 \u0111\u01b0\u1ee3c \u0111i\u1ec1n d\u01b0\u1edbi d\u1ea1ng m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 ho\u1eb7c \u0111\u01b0\u1ee3c t\u1ea1o th\u1ee7 c\u00f4ng b\u1edfi ng\u01b0\u1eddi d\u00f9ng. c\u1ea5p \u0111\u1ed9 truy c\u1eadp v\u00e0o m\u1ed9t c\u1ee5m c\u00f3 quy\u1ec1n truy c\u1eadp v\u00e0o &#8220;b\u00ed m\u1eadt&#8221; cho c\u1ee5m \u0111\u00f3. C\u00e1ch t\u1ed1t nh\u1ea5t l\u00e0 lu\u00e2n phi\u00ean c\u00e1c b\u00ed m\u1eadt m\u1ed9t c\u00e1ch th\u01b0\u1eddng xuy\u00ean ho\u1eb7c khi c\u1ea7n thi\u1ebft (t\u1ee9c l\u00e0 m\u1ed9t nh\u00e2n vi\u00ean r\u1eddi kh\u1ecfi c\u00f4ng ty ho\u1eb7c vai tr\u00f2, c\u00e1c bi\u1ec7n ph\u00e1p b\u1ea3o m\u1eadt chung, v.v.) H\u01b0\u1edbng d\u1eabn n\u00e0y xem x\u00e9t c\u00e1c b\u01b0\u1edbc c\u1ea7n thi\u1ebft \u0111\u1ec3 xoay v\u00f2ng b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 \u0111\u01b0\u1ee3c t\u1ea1o t\u1ef1 \u0111\u1ed9ng trong h\u1ec7 th\u1ed1ng kube b\u1eb1ng kubectl, c\u0169ng nh\u01b0 c\u00e1ch xoay v\u00f2ng lke-admin-token c\u1ee7a b\u1ea1n th\u00f4ng qua Linode CLI.<\/p>\n<p>L\u01b0u \u00fd r\u1eb1ng h\u01b0\u1edbng d\u1eabn trong h\u01b0\u1edbng d\u1eabn n\u00e0y ch\u1ec9 \u00e1p d\u1ee5ng cho b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 trong h\u1ec7 th\u1ed1ng kube; t\u00f9y thu\u1ed9c v\u00e0o c\u1ea5u h\u00ecnh \u1ee9ng d\u1ee5ng c\u1ee7a b\u1ea1n, c\u00f3 th\u1ec3 c\u00f3 th\u00eam b\u00ed m\u1eadt do ng\u01b0\u1eddi d\u00f9ng t\u1ea1o trong c\u00e1c kh\u00f4ng gian t\u00ean kh\u00e1c m\u00e0 b\u1ea1n c\u00f3 th\u1ec3 mu\u1ed1n x\u00f3a ho\u1eb7c xoay theo c\u00e1ch th\u1ee7 c\u00f4ng.<\/p>\n<h2>Tr\u01b0\u1edbc khi b\u1ea1n b\u1eaft \u0111\u1ea7u<\/h2>\n<p>B\u1ea1n s\u1ebd c\u1ea7n c\u00e0i \u0111\u1eb7t c\u00f4ng c\u1ee5 d\u00f2ng l\u1ec7nh kubectl v\u00e0 c\u1ea5u h\u00ecnh h\u1ec7 th\u1ed1ng c\u1ee5c b\u1ed9 \u0111\u1ec3 giao ti\u1ebfp v\u1edbi c\u1ee5m c\u1ee7a m\u00ecnh. \u0110\u1ec3 th\u1ef1c hi\u1ec7n vi\u1ec7c n\u00e0y, b\u1ea1n ph\u1ea3i t\u1ea3i xu\u1ed1ng t\u1ec7p kubeconfig c\u1ee7a c\u1ee5m v\u00e0 l\u01b0u \u0111\u01b0\u1eddng d\u1eabn t\u1ec7p c\u1ee7a n\u00f3 v\u00e0o bi\u1ebfn m\u00f4i tr\u01b0\u1eddng $KUBECONFIG. : Truy c\u1eadp v\u00e0 t\u1ea3i xu\u1ed1ng kubeconfig c\u1ee7a b\u1ea1n<\/p>\n<h2>Xoay b\u00ed m\u1eadt c\u1ee7a c\u1ee5m c\u1ee7a b\u1ea1n<\/h2>\n<p><strong>Xoay v\u00f2ng b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 trong kh\u00f4ng gian t\u00ean kube-system<\/strong><\/p>\n<p>Sau khi bi\u1ebfn m\u00f4i tr\u01b0\u1eddng $KUBECONFIG c\u1ee5c b\u1ed9 c\u1ee7a b\u1ea1n \u0111\u01b0\u1ee3c \u0111\u1ecbnh c\u1ea5u h\u00ecnh b\u1eb1ng t\u1ec7p kubeconfig c\u1ee7a c\u1ee5m, h\u00e3y l\u00e0m theo c\u00e1c b\u01b0\u1edbc sau \u0111\u1ec3 lu\u00e2n chuy\u1ec3n c\u00e1c b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 \u0111\u01b0\u1ee3c t\u1ea1o t\u1ef1 \u0111\u1ed9ng trong c\u1ee5m c\u1ee7a b\u1ea1n.<\/p>\n<ul>\n<li>Li\u1ec7t k\u00ea c\u00e1c b\u00ed m\u1eadt trong kh\u00f4ng gian t\u00ean h\u1ec7 th\u1ed1ng kube c\u1ee7a c\u1ee5m c\u1ee7a b\u1ea1n v\u00e0 l\u1ecdc theo m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 \u0111\u1ec3 xem c\u00e1c b\u00ed m\u1eadt \u0111\u01b0\u1ee3c m\u1eb7t ph\u1eb3ng \u0111i\u1ec1u khi\u1ec3n t\u1ef1 \u0111\u1ed9ng t\u1ea1o:<\/li>\n<\/ul>\n<pre class=\"wp-block-code\"><code>kubectl -n kube-system get secrets --field-selector=\"type=kubernetes.io\/service-account-token\"<\/code><\/pre>\n<p>B\u1ea1n s\u1ebd th\u1ea5y \u0111\u1ea7u ra t\u01b0\u01a1ng t\u1ef1 nh\u01b0 sau:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" loading=\"lazy\" width=\"943\" height=\"180\" src=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-22-1.png\" alt=\"\" class=\"wp-image-1574\" srcset=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-22-1.png 943w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-22-300x57-1.png 300w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-22-768x147-1.png 768w\" sizes=\"auto, (max-width: 943px) 100vw, 943px\" \/><\/figure>\n<div class=\"is-layout-constrained wp-block-group has-background\" style=\"background-color:#c7f3e1\">\n<div class=\"wp-block-group__inner-container\">\n<p>L\u01b0u \u00fd \u0111\u1ed1i v\u1edbi Kubernetes phi\u00ean b\u1ea3n 1.26<\/p>\n<p>Trong Kubernetes phi\u00ean b\u1ea3n 1.26, c\u00f3 th\u00eam c\u00e1c b\u00ed m\u1eadt v\u1ec1 m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 \u0111\u01b0\u1ee3c t\u1ea1o t\u1ef1 \u0111\u1ed9ng b\u1ed5 sung ngo\u00e0i nh\u1eefng b\u00ed m\u1eadt c\u00f3 trong k\u1ebft qu\u1ea3 \u0111\u1ea7u ra \u1edf tr\u00ean.<\/p>\n<\/div>\n<\/div>\n<ul>\n<li>X\u00f3a nh\u1eefng secrets.<\/li>\n<\/ul>\n<pre class=\"wp-block-code\"><code>kubectl -n kube-system delete secrets --field-selector=\"type=kubernetes.io\/service-account-token\"<\/code><\/pre>\n<p>B\u1ea1n s\u1ebd nh\u1eadn \u0111\u01b0\u1ee3c x\u00e1c nh\u1eadn r\u1eb1ng c\u00e1c b\u00ed m\u1eadt \u0111\u00e3 b\u1ecb x\u00f3a:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" loading=\"lazy\" width=\"953\" height=\"183\" src=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-23-1.png\" alt=\"\" class=\"wp-image-1575\" srcset=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-23-1.png 953w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-23-300x58-1.png 300w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-23-768x147-1.png 768w\" sizes=\"auto, (max-width: 953px) 100vw, 953px\" \/><\/figure>\n<ul>\n<li>Khi secrets th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 c\u1ee7a b\u1ea1n \u0111\u00e3 b\u1ecb x\u00f3a, b\u1ea1n s\u1ebd kh\u00f4ng c\u00f2n quy\u1ec1n truy c\u1eadp v\u00e0o c\u1ee5m c\u1ee7a m\u00ecnh b\u1eb1ng kubeconfig hi\u1ec7n t\u1ea1i. \u0110\u1ec3 l\u1ea5y l\u1ea1i quy\u1ec1n truy c\u1eadp, b\u1ea1n c\u1ea7n ph\u1ea3i t\u1ea1o l\u1ea1i kubeconfig v\u00e0 xu\u1ea5t l\u1ea1i bi\u1ebfn m\u00f4i tr\u01b0\u1eddng c\u1ee5c b\u1ed9 c\u1ee7a m\u00ecnh b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng c\u00e1c b\u01b0\u1edbc b\u00ean d\u01b0\u1edbi trong ph\u1ea7n n\u00e0y. T\u1ea1o l\u1ea1i Kubeconfig c\u1ee7a b\u1ea1n.<\/li>\n<\/ul>\n<h2>T\u1ea1o l\u1ea1i kubeconfig c\u1ee7a b\u1ea1n<\/h2>\n<p>\u0110\u1ec3 \u0111\u1ea9y nhanh qu\u00e1 tr\u00ecnh t\u00e1i t\u1ea1o b\u00ed m\u1eadt sau khi x\u00f3a v\u00e0 l\u1ea5y l\u1ea1i quy\u1ec1n truy c\u1eadp v\u00e0o c\u1ee5m c\u1ee7a m\u00ecnh, b\u1ea1n c\u00f3 th\u1ec3 t\u1ea1o l\u1ea1i kubeconfig. Qu\u00e1 tr\u00ecnh n\u00e0y c\u0169ng s\u1ebd t\u1ea1o l\u1ea1i b\u00ed m\u1eadt lke-admin-token trong kube-system. L\u01b0u \u00fd r\u1eb1ng c\u00e1c b\u01b0\u1edbc n\u00e0y s\u1eed d\u1ee5ng Linode CLI v\u00e0 tu\u00e2n theo Kubernetes. C\u1ee5m T\u1ea1o l\u1ea1i h\u01b0\u1edbng d\u1eabn t\u1eeb t\u00e0i li\u1ec7u API c\u1ee7a ch\u00fang t\u00f4i. Xem t\u00e0i li\u1ec7u API c\u1ee7a ch\u00fang t\u00f4i \u0111\u1ec3 bi\u1ebft c\u00e1c l\u1ec7nh API t\u01b0\u01a1ng \u1ee9ng.<\/p>\n<ul>\n<li>Xem danh s\u00e1ch c\u00e1c c\u1ee5m Kubernetes c\u1ee7a b\u1ea1n \u0111\u1ec3 l\u1ea5y s\u1ed1 ID c\u1ee7a c\u1ee5m b\u1ea1n mu\u1ed1n nh\u1eafm m\u1ee5c ti\u00eau:<\/li>\n<\/ul>\n<pre class=\"wp-block-code\"><code>linode-cli lke clusters-list<\/code><\/pre>\n<p>ID c\u1ee5m c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c t\u00ecm th\u1ea5y trong c\u1ed9t id:<\/p>\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" loading=\"lazy\" width=\"959\" height=\"196\" src=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-24-1.png\" alt=\"\" class=\"wp-image-1576\" srcset=\"http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-24-1.png 959w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-24-300x61-1.png 300w, http:\/\/jupitek.maudemo.vip\/wp-content\/uploads\/2026\/05\/image-24-768x157-1.png 768w\" sizes=\"auto, (max-width: 959px) 100vw, 959px\" \/><\/figure>\n<p>T\u1ea1o l\u1ea1i t\u1ec7p kubeconfig c\u1ee7a c\u1ee5m b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng ID c\u1ee5m c\u00f3 \u0111\u01b0\u1ee3c \u1edf b\u01b0\u1edbc 1. Thay th\u1ebf {{&lt; placeholder &#8220;12345&#8221; &gt;}} b\u1eb1ng s\u1ed1 ID c\u1ee7a c\u1ee5m c\u1ee7a b\u1ea1n:<\/p>\n<p><code>linode-cli lke regenerate {{&lt; placeholder \"12345\" &gt;}} --kubeconfig=true --servicetoken=true<\/code><\/p>\n<p>T\u1ea3i xu\u1ed1ng t\u1ec7p kubeconfig m\u1edbi c\u1ee7a b\u1ea1n t\u1eeb Tr\u00ecnh qu\u1ea3n l\u00fd \u0111\u00e1m m\u00e2y b\u1eb1ng c\u00e1ch \u0111i\u1ec1u h\u01b0\u1edbng \u0111\u1ebfn ph\u1ea7n Kubernetes, nh\u1ea5p v\u00e0o d\u1ea5u ch\u1ea5m l\u1eedng t\u00f9y ch\u1ecdn kh\u00e1c c\u1ee7a c\u1ee5m v\u00e0 ch\u1ecdn T\u1ea3i xu\u1ed1ng Kubeconfig. C\u00f3 th\u1ec3 m\u1ea5t v\u00e0i ph\u00fat \u0111\u1ec3 t\u1ec7p kubeconfig m\u1edbi c\u00f3 s\u1eb5n.<\/p>\n<div class=\"is-layout-constrained wp-block-group has-background\" style=\"background-color:#bbf5de\">\n<div class=\"wp-block-group__inner-container\">\n<p>Ngo\u00e0i ra, b\u1ea1n c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng Linode CLI \u0111\u1ec3 xem kubeconfig m\u1edbi v\u00e0 ghi \u0111\u00e8 l\u00ean t\u1ec7p kubeconfig.yaml hi\u1ec7n c\u00f3, thay th\u1ebf {{&lt; placeholder &#8220;12345&#8221; &gt;}} b\u1eb1ng ID c\u1ee5m c\u1ee7a b\u1ea1n v\u00e0 {{&lt; placeholder &#8220;~\/Downloads\/kubeconfig.yaml &#8221; &gt;}} b\u1eb1ng \u0111\u01b0\u1eddng d\u1eabn t\u1ec7p t\u1edbi kubeconfig hi\u1ec7n t\u1ea1i c\u1ee7a b\u1ea1n:<\/p>\n<p>linode-cli &#8211;json lke kubeconfig-view 12345 | jq -r &#8216;.[].kubeconfig&#8217; | base64 -d &gt; ~\/Downloads\/kubeconfig.yaml<\/p>\n<\/div>\n<\/div>\n<p>N\u1ebfu ch\u1ecdn t\u1ea3i xu\u1ed1ng kubeconfig m\u1edbi th\u00f4ng qua Tr\u00ecnh qu\u1ea3n l\u00fd \u0111\u00e1m m\u00e2y, b\u1ea1n s\u1ebd c\u1ea7n ph\u1ea3i \u0111\u1ecbnh c\u1ea5u h\u00ecnh l\u1ea1i kubeconfig b\u1eb1ng c\u00e1ch l\u01b0u \u0111\u01b0\u1eddng d\u1eabn t\u1ec7p v\u00e0o bi\u1ebfn m\u00f4i tr\u01b0\u1eddng $KUBECONFIG. Thay th\u1ebf {{&lt; placeholder &#8220;~\/Downloads\/kubeconfig.yaml&#8221; &gt;}} b\u1eb1ng. \u0111\u01b0\u1eddng d\u1eabn t\u1ec7p cho t\u1ec7p kubeconfig m\u1edbi c\u1ee7a b\u1ea1n:<\/p>\n<pre class=\"wp-block-code\"><code>export KUBECONFIG={{&lt; placeholder \"~\/Downloads\/kubeconfig.yaml\" &gt;}}<\/code><\/pre>\n<p>X- \u00e1c minh r\u1eb1ng b\u1ea1n c\u00f3 quy\u1ec1n truy c\u1eadp v\u00e0o c\u1ee5m c\u1ee7a m\u00ecnh b\u1eb1ng c\u00e1ch xem c\u00e1c n\u00fat c\u1ee7a b\u1ea1n:<\/p>\n<pre class=\"wp-block-code\"><code>kubectl get nodes<\/code><\/pre>\n<ul>\n<li>X\u00f3a t\u1ec7p kubeconfig c\u0169 sau khi b\u1ea1n \u0111\u00e3 x\u00e1c minh quy\u1ec1n truy c\u1eadp v\u00e0o c\u1ee5m c\u1ee7a m\u00ecnh.<\/li>\n<\/ul>\n<ul>\n<li>B\u00e2y gi\u1edd, kubeconfig m\u1edbi \u0111\u00e3 \u0111\u01b0\u1ee3c t\u1ea1o v\u00e0 \u0111\u1ecbnh c\u1ea5u h\u00ecnh, b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 v\u00e0 b\u00ed m\u1eadt m\u00e3 th\u00f4ng b\u00e1o lke-admin-token c\u1ee7a b\u1ea1n \u0111\u00e3 \u0111\u01b0\u1ee3c lu\u00e2n chuy\u1ec3n.<\/li>\n<\/ul>\n<h2>C\u00e1c ph\u01b0\u01a1ng ph\u00e1p hay nh\u1ea5t b\u1ed5 sung<\/h2>\n<p>H\u01b0\u1edbng d\u1eabn n\u00e0y xem x\u00e9t c\u00e1c b\u01b0\u1edbc \u0111\u1ec3 xoay v\u00f2ng b\u00ed m\u1eadt trong kh\u00f4ng gian t\u00ean h\u1ec7 th\u1ed1ng kube \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng b\u1edfi m\u1eb7t ph\u1eb3ng \u0111i\u1ec1u khi\u1ec3n do lke qu\u1ea3n l\u00fd. C\u00e1ch t\u1ed1t nh\u1ea5t l\u00e0 b\u1ea1n n\u00ean s\u1eed d\u1ee5ng c\u00e1c kh\u00f4ng gian t\u00ean ri\u00eang bi\u1ec7t cho m\u1ecdi m\u00e3 th\u00f4ng b\u00e1o v\u00e0 b\u00ed m\u1eadt t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 d\u00e0nh ri\u00eang cho \u1ee9ng d\u1ee5ng.<\/p>\n<p>T\u00f9y thu\u1ed9c v\u00e0o c\u1ea5u h\u00ecnh v\u00e0 tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng c\u1ee5 th\u1ec3 c\u1ee7a b\u1ea1n, c\u00f3 th\u1ec3 c\u00f3 c\u00e1c b\u01b0\u1edbc b\u1ea3o m\u1eadt b\u1ed5 sung m\u00e0 b\u1ea1n mu\u1ed1n th\u1ef1c hi\u1ec7n \u0111\u1ed1i v\u1edbi m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 d\u00e0nh ri\u00eang cho \u1ee9ng d\u1ee5ng c\u1ee7a m\u00ecnh sau khi b\u00ed m\u1eadt c\u1ee7a b\u1ea1n \u0111\u00e3 \u0111\u01b0\u1ee3c lu\u00e2n chuy\u1ec3n, bao g\u1ed3m kh\u1edfi \u0111\u1ed9ng l\u1ea1i nh\u00f3m ho\u1eb7c n\u00fat t\u00e1i ch\u1ebf<\/p>\n<p><strong>Kh\u1edfi \u0111\u1ed9ng l\u1ea1i Pod<\/strong><\/p>\n<p>xem pod: <\/p>\n<pre class=\"wp-block-code\"><code>kubectl get pods<\/code><\/pre>\n<p>Kh\u1edfi \u0111\u1ed9ng l\u1ea1i pod<\/p>\n<pre class=\"wp-block-code\"><code>kubectl rollout restart<\/code><\/pre>\n<p><strong>T\u00e1i ch\u1ebf c\u00e1c n\u00fat c\u1ee7a b\u1ea1n<\/strong><\/p>\n<p>Khi t\u00e1i ch\u1ebf n\u00fat c\u00f4ng nh\u00e2n, Phi\u00ean b\u1ea3n \u0111i\u1ec7n to\u00e1n t\u01b0\u01a1ng \u1ee9ng s\u1ebd b\u1ecb x\u00f3a v\u00e0 thay th\u1ebf b\u1eb1ng m\u1ed9t n\u00fat m\u1edbi th\u00f4ng qua Tr\u00ecnh qu\u1ea3n l\u00fd \u0111\u00e1m m\u00e2y b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng h\u01b0\u1edbng d\u1eabn trong h\u01b0\u1edbng d\u1eabn Qu\u1ea3n l\u00fd n\u00fat v\u00e0 nh\u00f3m n\u00fat c\u1ee7a ch\u00fang t\u00f4i t\u1ea1i \u0111\u00e2y: <a href=\"https:\/\/techdocs.akamai.com\/cloud-computing\/docs\/manage-nodes-and-node-pools#recycle-nodes\">Recycle Nodes<\/a><\/p>\n<p>Ngu\u1ed3n: https:\/\/techdocs.akamai.com\/cloud-computing\/docs\/rotate-kubernetes-secrets<\/p>\n","protected":false},"excerpt":{"rendered":"<p>b\u00ed m\u1eadt kubernetes B\u00ed m\u1eadt Kubernetes l\u00e0 m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng l\u01b0u tr\u1eef th\u00f4ng tin x\u00e1c th\u1ef1c nh\u1ea1y c\u1ea3m nh\u01b0 m\u1eadt kh\u1ea9u, m\u00e3 th\u00f4ng b\u00e1o ho\u1eb7c kh\u00f3a. M\u1ed9t b\u00ed m\u1eadt \u0111\u01b0\u1ee3c t\u1ea1o t\u1ef1 \u0111\u1ed9ng b\u1edfi m\u1eb7t ph\u1eb3ng \u0111i\u1ec1u khi\u1ec3n v\u00e0 \u0111\u01b0\u1ee3c \u0111i\u1ec1n d\u01b0\u1edbi d\u1ea1ng m\u00e3 th\u00f4ng b\u00e1o t\u00e0i kho\u1ea3n d\u1ecbch v\u1ee5 ho\u1eb7c \u0111\u01b0\u1ee3c t\u1ea1o th\u1ee7 c\u00f4ng<\/p>\n","protected":false},"author":1,"featured_media":35914,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[79],"tags":[],"class_list":["post-34946","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linode-kubernetes-engine"],"_links":{"self":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/34946","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/comments?post=34946"}],"version-history":[{"count":1,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/34946\/revisions"}],"predecessor-version":[{"id":35915,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/posts\/34946\/revisions\/35915"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media\/35914"}],"wp:attachment":[{"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/media?parent=34946"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/categories?post=34946"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jupitek.maudemo.vip\/index.php\/wp-json\/wp\/v2\/tags?post=34946"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}