{"id":16570,"date":"2024-11-18T12:43:06","date_gmt":"2024-11-18T04:43:06","guid":{"rendered":"https:\/\/fwq.ai\/blog\/16570\/"},"modified":"2024-11-18T12:43:06","modified_gmt":"2024-11-18T04:43:06","slug":"%e8%af%a6%e8%a7%a3-k8s-%e9%ab%98%e5%8f%af%e7%94%a8%e9%83%a8%e7%bd%b2%ef%bc%8c%e8%b6%85%e8%af%a6%e7%bb%86%ef%bc%81","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/16570\/","title":{"rendered":"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01"},"content":{"rendered":"<p>  <\/p>\n<ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">\u4e00\u3001\u524d\u8a00<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">\u4e8c\u3001\u57fa\u7840\u73af\u5883\u90e8\u7f72<\/p>\n<\/li>\n<ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">1\uff09\u524d\u671f\u51c6\u5907\uff08\u6240\u6709\u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">2\uff09\u5b89\u88c5\u5bb9\u5668 docker\uff08\u6240\u6709\u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">3\uff09\u914d\u7f6e k8s yum \u6e90\uff08\u6240\u6709\u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">4\uff09\u5c06 sandbox_image \u955c\u50cf\u6e90\u8bbe\u7f6e\u4e3a\u963f\u91cc\u4e91 google_containers \u955c\u50cf\u6e90\uff08\u6240\u6709\u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">5\uff09\u914d\u7f6e containerd cgroup \u9a71\u52a8\u7a0b\u5e8f systemd\uff08\u6240\u6709\u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">6\uff09\u5f00\u59cb\u5b89\u88c5 kubeadm\uff0ckubelet \u548c kubectl\uff08master \u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">7\uff09\u4f7f\u7528 kubeadm \u521d\u59cb\u5316\u96c6\u7fa4\uff08master \u8282\u70b9\uff09<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">8\uff09\u5b89\u88c5 Pod \u7f51\u7edc\u63d2\u4ef6\uff08CNI\uff1aContainer Network Interface\uff09(master)<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">9\uff09node \u8282\u70b9\u52a0\u5165 k8s \u96c6\u7fa4<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">10\uff09\u914d\u7f6e IPVS<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">11\uff09\u96c6\u7fa4\u9ad8\u53ef\u7528\u914d\u7f6e<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">12\uff09\u90e8\u7f72 Nginx+Keepalived \u9ad8\u53ef\u7528\u8d1f\u8f7d\u5747\u8861\u5668<\/p>\n<\/li>\n<\/ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">\u4e09\u3001k8s \u7ba1\u7406\u5e73\u53f0 dashboard \u73af\u5883\u90e8\u7f72<\/p>\n<\/li>\n<ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">1\uff09dashboard \u90e8\u7f72<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">2\uff09\u521b\u5efa\u767b\u5f55\u7528\u6237<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">3\uff09\u914d\u7f6e hosts \u767b\u5f55 dashboard web<\/p>\n<\/li>\n<\/ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">\u56db\u3001k8s \u955c\u50cf\u4ed3\u5e93 harbor \u73af\u5883\u90e8\u7f72<\/p>\n<\/li>\n<ul>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">1\uff09\u5b89\u88c5 helm<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">2\uff09\u914d\u7f6e hosts<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">3\uff09\u521b\u5efa stl \u8bc1\u4e66<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">4\uff09\u5b89\u88c5 ingress<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">5\uff09\u5b89\u88c5 nfs<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">6\uff09\u521b\u5efa nfs provisioner \u548c\u6301\u4e45\u5316\u5b58\u50a8 SC<\/p>\n<\/li>\n<li>\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em\">7\uff09\u90e8\u7f72 Harbor\uff08Https \u65b9\u5f0f\uff09<\/p>\n<\/li>\n<\/ul>\n<\/ul>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><\/p>\n<h2><span style=\"margin: 0px 3px 0px 0px;padding: 2px 13px;max-width: 100%;font-weight: bold;background-image: linear-gradient(rgb(255, 255, 255) 60%, rgb(255, 177, 27) 40%);height: 37px\">\u4e00\u3001\u524d\u8a00<\/span><\/h2>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5b98\u7f51\uff1ahttps:\/\/kubernetes.io\/<br \/>\u5b98\u65b9\u6587\u6863\uff1ahttps:\/\/kubernetes.io\/zh-cn\/docs\/home\/<\/p>\n<h2><span style=\"margin: 0px 3px 0px 0px;padding: 2px 13px;max-width: 100%;font-weight: bold;background-image: linear-gradient(rgb(255, 255, 255) 60%, rgb(255, 177, 27) 40%);height: 37px\">\u4e8c\u3001\u57fa\u7840\u73af\u5883\u90e8\u7f72<\/span><\/h2>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">1\uff09\u524d\u671f\u51c6\u5907\uff08\u6240\u6709\u8282\u70b9\uff09<\/span><\/h3>\n<h4>1\u3001\u4fee\u6539\u4e3b\u673a\u540d\u548c\u914d\u7f6e hosts<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5148\u90e8\u7f72 1master \u548c 2node \u8282\u70b9\uff0c\u540e\u9762\u518d\u52a0\u4e00\u4e2a master \u8282\u70b9<\/p>\n<pre>#&nbsp;\u5728192.168.0.113\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;&nbsp;k8s-master-168-0-113#&nbsp;\u5728192.168.0.114\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;k8s-node1-168-0-114#&nbsp;\u5728192.168.0.115\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;k8s-node2-168-0-115<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u914d\u7f6e hosts<\/p>\n<pre>cat&nbsp;&amp;gt;&amp;gt;&nbsp;\/etc\/hosts&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;2\u3001\u914d\u7f6e ssh \u4e92\u4fe1&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u76f4\u63a5\u4e00\u76f4\u56de\u8f66\u5c31\u884cssh-keygenssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-master-168-0-113ssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-node1-168-0-114ssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-node2-168-0-115<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>3\u3001\u65f6\u95f4\u540c\u6b65<\/h4>\n<pre>yum&nbsp;install&nbsp;chrony&nbsp;-ysystemctl&nbsp;start&nbsp;chronydsystemctl&nbsp;enable&nbsp;chronydchronyc&nbsp;sources<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>4\u3001\u5173\u95ed\u9632\u706b\u5899<\/h4>\n<pre>systemctl&nbsp;stop&nbsp;firewalldsystemctl&nbsp;disable&nbsp;firewalld<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>5\u3001\u5173\u95ed swap<\/h4>\n<pre>#&nbsp;\u4e34\u65f6\u5173\u95ed\uff1b\u5173\u95edswap\u4e3b\u8981\u662f\u4e3a\u4e86\u6027\u80fd\u8003\u8651swapoff&nbsp;-a#&nbsp;\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2a\u547d\u4ee4\u67e5\u770bswap\u662f\u5426\u5173\u95ed\u4e86free#&nbsp;\u6c38\u4e45\u5173\u95edsed&nbsp;-ri&nbsp;'s\/.*swap.*\/#&amp;amp;\/'&nbsp;\/etc\/fstab<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>6\u3001\u7981\u7528 SELinux<\/h4>\n<pre>#&nbsp;\u4e34\u65f6\u5173\u95edsetenforce&nbsp;0#&nbsp;\u6c38\u4e45\u7981\u7528sed&nbsp;-i&nbsp;'s\/^SELINUX=enforcing$\/SELINUX=disabled\/'&nbsp;\/etc\/selinux\/config<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>7\u3001\u5141\u8bb8 iptables \u68c0\u67e5\u6865\u63a5\u6d41\u91cf\uff08\u53ef\u9009\uff0c\u6240\u6709\u8282\u70b9\uff09<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u82e5\u8981\u663e\u5f0f\u52a0\u8f7d\u6b64\u6a21\u5757\uff0c\u8bf7\u8fd0\u884c&nbsp;sudo modprobe br_netfilter\uff0c\u901a\u8fc7\u8fd0\u884c&nbsp;lsmod | grep br_netfilter&nbsp;\u6765\u9a8c\u8bc1 br_netfilter \u6a21\u5757\u662f\u5426\u5df2\u52a0\u8f7d\uff0c<\/p>\n<pre>sudo&nbsp;modprobe&nbsp;br_netfilterlsmod&nbsp;|&nbsp;grep&nbsp;br_netfilter<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4e3a\u4e86\u8ba9 Linux \u8282\u70b9\u7684 iptables \u80fd\u591f\u6b63\u786e\u67e5\u770b\u6865\u63a5\u6d41\u91cf\uff0c\u8bf7\u786e\u8ba4 sysctl \u914d\u7f6e\u4e2d\u7684&nbsp;net.bridge.bridge-nf-call-iptables&nbsp;\u8bbe\u7f6e\u4e3a 1\u3002\u4f8b\u5982\uff1a<\/p>\n<pre>cat&nbsp;&lt;h3 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 10px 0px 5px;padding: 10px 0px 0px;outline: 0px;font-weight: bold;font-size: 20px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;&lt;span style=\"margin: 0px;padding: 0px 0px 0px 20px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;color: rgb(81, 81, 81);font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid;border-left-color: rgb(249, 191, 69);\"&gt;2\uff09\u5b89\u88c5\u5bb9\u5668 docker\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/span&gt;&lt;\/h3&gt;&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u63d0\u793a\uff1av1.24 \u4e4b\u524d\u7684 Kubernetes \u7248\u672c\u5305\u62ec\u4e0e Docker Engine \u7684\u76f4\u63a5\u96c6\u6210\uff0c\u4f7f\u7528\u540d\u4e3a dockershim \u7684\u7ec4\u4ef6\u3002\u8fd9\u79cd\u7279\u6b8a\u7684\u76f4\u63a5\u6574\u5408\u4e0d\u518d\u662f Kubernetes \u7684\u4e00\u90e8\u5206 \uff08\u8fd9\u6b21\u5220\u9664\u88ab\u4f5c\u4e3a v1.20 \u53d1\u884c\u7248\u672c\u7684\u4e00\u90e8\u5206\u5ba3\u5e03\uff09\u3002\u4f60\u53ef\u4ee5\u9605\u8bfb\u68c0\u67e5 Dockershim \u5f03\u7528\u662f\u5426\u4f1a\u5f71\u54cd\u4f60 \u4ee5\u4e86\u89e3\u6b64\u5220\u9664\u53ef\u80fd\u4f1a\u5982\u4f55\u5f71\u54cd\u4f60\u3002\u8981\u4e86\u89e3\u5982\u4f55\u4f7f\u7528 dockershim \u8fdb\u884c\u8fc1\u79fb\uff0c\u8bf7\u53c2\u9605\u4ece dockershim \u8fc1\u79fb\u3002&lt;\/p&gt;&lt;\/blockquote&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u914d\u7f6eyum\u6e90cd&nbsp;\/etc\/yum.repos.d&nbsp;;&nbsp;mkdir&nbsp;bak;&nbsp;mv&nbsp;CentOS-Linux-*&nbsp;bak\/#&nbsp;centos7wget&nbsp;-O&nbsp;\/etc\/yum.repos.d\/CentOS-Base.repo&nbsp;http:\/\/mirrors.aliyun.com\/repo\/Centos-7.repo#&nbsp;centos8wget&nbsp;-O&nbsp;\/etc\/yum.repos.d\/CentOS-Base.repo&nbsp;http:\/\/mirrors.aliyun.com\/repo\/Centos-8.repo#&nbsp;\u5b89\u88c5yum-config-manager\u914d\u7f6e\u5de5\u5177yum&nbsp;-y&nbsp;install&nbsp;yum-utils#&nbsp;\u8bbe\u7f6eyum\u6e90yum-config-manager&nbsp;--add-repo&nbsp;http:\/\/mirrors.aliyun.com\/docker-ce\/linux\/centos\/docker-ce.repo#&nbsp;\u5b89\u88c5docker-ce\u7248\u672cyum&nbsp;install&nbsp;-y&nbsp;docker-ce#&nbsp;\u542f\u52a8systemctl&nbsp;start&nbsp;docker#&nbsp;\u5f00\u673a\u81ea\u542fsystemctl&nbsp;enable&nbsp;docker#&nbsp;\u67e5\u770b\u7248\u672c\u53f7docker&nbsp;--version#&nbsp;\u67e5\u770b\u7248\u672c\u5177\u4f53\u4fe1\u606fdocker&nbsp;version#&nbsp;Docker\u955c\u50cf\u6e90\u8bbe\u7f6e#&nbsp;\u4fee\u6539\u6587\u4ef6&nbsp;\/etc\/docker\/daemon.json\uff0c\u6ca1\u6709\u8fd9\u4e2a\u6587\u4ef6\u5c31\u521b\u5efa#&nbsp;\u6dfb\u52a0\u4ee5\u4e0b\u5185\u5bb9\u540e\uff0c\u91cd\u542fdocker\u670d\u52a1\uff1acat&nbsp;&amp;gt;\/etc\/docker\/daemon.json&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u3010\u6e29\u99a8\u63d0\u793a\u3011dockerd \u5b9e\u9645\u771f\u5b9e\u8c03\u7528\u7684\u8fd8\u662f containerd \u7684 api \u63a5\u53e3\uff0ccontainerd \u662f dockerd \u548c runC \u4e4b\u95f4\u7684\u4e00\u4e2a\u4e2d\u95f4\u4ea4\u6d41\u7ec4\u4ef6\u3002\u6240\u4ee5\u542f\u52a8 docker \u670d\u52a1\u7684\u65f6\u5019\uff0c\u4e5f\u4f1a\u542f\u52a8 containerd \u670d\u52a1\u7684\u3002&lt;\/p&gt;&lt;\/blockquote&gt;&lt;h3 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 10px 0px 5px;padding: 10px 0px 0px;outline: 0px;font-weight: bold;font-size: 20px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;&lt;span style=\"margin: 0px;padding: 0px 0px 0px 20px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;color: rgb(81, 81, 81);font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid;border-left-color: rgb(249, 191, 69);\"&gt;3\uff09\u914d\u7f6e k8s yum \u6e90\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/span&gt;&lt;\/h3&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;&nbsp;\/etc\/yum.repos.d\/kubernetes.repo&nbsp;&lt;h3 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 10px 0px 5px;padding: 10px 0px 0px;outline: 0px;font-weight: bold;font-size: 20px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;&lt;span style=\"margin: 0px;padding: 0px 0px 0px 20px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;color: rgb(81, 81, 81);font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid;border-left-color: rgb(249, 191, 69);\"&gt;4\uff09\u5c06 sandbox_image \u955c\u50cf\u6e90\u8bbe\u7f6e\u4e3a\u963f\u91cc\u4e91 google_containers \u955c\u50cf\u6e90\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/span&gt;&lt;\/h3&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u5bfc\u51fa\u9ed8\u8ba4\u914d\u7f6e\uff0cconfig.toml\u8fd9\u4e2a\u6587\u4ef6\u9ed8\u8ba4\u662f\u4e0d\u5b58\u5728\u7684containerd&nbsp;config&nbsp;default&nbsp;&amp;gt;&nbsp;\/etc\/containerd\/config.tomlgrep&nbsp;sandbox_image&nbsp;&nbsp;\/etc\/containerd\/config.tomlsed&nbsp;-i&nbsp;\"s#k8s.gcr.io\/pause#registry.aliyuncs.com\/google_containers\/pause#g\"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/etc\/containerd\/config.tomlgrep&nbsp;sandbox_image&nbsp;&nbsp;\/etc\/containerd\/config.toml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<br \/> <br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/f08a78ca5270b6ec1db96ca0920e5e46-0.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">5\uff09\u914d\u7f6e containerd cgroup \u9a71\u52a8\u7a0b\u5e8f systemd\uff08\u6240\u6709\u8282\u70b9\uff09<\/span><\/h3>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">kubernets \u81ea\uff56 1.24.0 \u540e\uff0c\u5c31\u4e0d\u518d\u4f7f\u7528 docker.shim\uff0c\u66ff\u6362\u91c7\u7528 containerd \u4f5c\u4e3a\u5bb9\u5668\u8fd0\u884c\u65f6\u7aef\u70b9\u3002\u56e0\u6b64\u9700\u8981\u5b89\u88c5 containerd\uff08\u5728 docker \u7684\u57fa\u7840\u4e0b\u5b89\u88c5\uff09\uff0c\u4e0a\u9762\u5b89\u88c5 docker \u7684\u65f6\u5019\u5c31\u81ea\u52a8\u5b89\u88c5\u4e86 containerd \u4e86\u3002\u8fd9\u91cc\u7684 docker \u53ea\u662f\u4f5c\u4e3a\u5ba2\u6237\u7aef\u800c\u5df2\u3002\u5bb9\u5668\u5f15\u64ce\u8fd8\u662f containerd\u3002<\/p>\n<\/blockquote>\n<pre>sed&nbsp;-i&nbsp;'s#SystemdCgroup&nbsp;=&nbsp;false#SystemdCgroup&nbsp;=&nbsp;true#g'&nbsp;\/etc\/containerd\/config.toml#&nbsp;\u5e94\u7528\u6240\u6709\u66f4\u6539\u540e,\u91cd\u65b0\u542f\u52a8containerdsystemctl&nbsp;restart&nbsp;containerd<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">6\uff09\u5f00\u59cb\u5b89\u88c5 kubeadm\uff0ckubelet \u548c kubectl\uff08master \u8282\u70b9\uff09<\/span><\/h3>\n<pre>#&nbsp;\u4e0d\u6307\u5b9a\u7248\u672c\u5c31\u662f\u6700\u65b0\u7248\u672c\uff0c\u5f53\u524d\u6700\u65b0\u7248\u5c31\u662f1.24.1yum&nbsp;install&nbsp;-y&nbsp;kubelet-1.24.1&nbsp;&nbsp;kubeadm-1.24.1&nbsp;&nbsp;kubectl-1.24.1&nbsp;--disableexcludes=kubernetes#&nbsp;disableexcludes=kubernetes\uff1a\u7981\u6389\u9664\u4e86\u8fd9\u4e2akubernetes\u4e4b\u5916\u7684\u522b\u7684\u4ed3\u5e93#&nbsp;\u8bbe\u7f6e\u4e3a\u5f00\u673a\u81ea\u542f\u5e76\u73b0\u5728\u7acb\u523b\u542f\u52a8\u670d\u52a1&nbsp;--now\uff1a\u7acb\u523b\u542f\u52a8\u670d\u52a1systemctl&nbsp;enable&nbsp;--now&nbsp;kubelet#&nbsp;\u67e5\u770b\u72b6\u6001\uff0c\u8fd9\u91cc\u9700\u8981\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\u518d\u67e5\u770b\u670d\u52a1\u72b6\u6001\uff0c\u542f\u52a8\u4f1a\u6709\u70b9\u6162systemctl&nbsp;status&nbsp;kubelet<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/f08a78ca5270b6ec1db96ca0920e5e46-1.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe1\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe1\" \/>  <\/p>\n<p style=\"max-width:90%\">\u67e5\u770b\u65e5\u5fd7\uff0c\u53d1\u73b0\u6709\u62a5\u9519\uff0c\u62a5\u9519\u5982\u4e0b\uff1a<\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">kubelet.service: Main process exited, code=exited, status=1\/FAILURE kubelet.service: Failed with result &#8216;exit-code&#8217;.<\/p>\n<\/blockquote>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/eae9c6b839d0615c4a8fafaadfc30cb7-2.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe2\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe2\" \/>  <\/p>\n<blockquote style=\"max-width:90%\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u89e3\u91ca\u3011\u91cd\u65b0\u5b89\u88c5\uff08\u6216\u7b2c\u4e00\u6b21\u5b89\u88c5\uff09k8s\uff0c\u672a\u7ecf\u8fc7 kubeadm init \u6216\u8005 kubeadm join \u540e\uff0ckubelet \u4f1a\u4e0d\u65ad\u91cd\u542f\uff0c\u8fd9\u4e2a\u662f\u6b63\u5e38\u73b0\u8c61\u2026\u2026\uff0c\u6267\u884c init \u6216 join \u540e\u95ee\u9898\u4f1a\u81ea\u52a8\u89e3\u51b3\uff0c\u5bf9\u6b64\u5b98\u7f51\u6709\u5982\u4e0b\u63cf\u8ff0\uff0c\u4e5f\u5c31\u662f\u6b64\u65f6\u4e0d\u7528\u7406\u4f1a kubelet.service\u3002<\/p>\n<\/blockquote>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u67e5\u770b\u7248\u672c<\/p>\n<pre>kubectl&nbsp;versionyum&nbsp;info&nbsp;kubeadm<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/eae9c6b839d0615c4a8fafaadfc30cb7-3.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe3\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe3\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">7\uff09\u4f7f\u7528 kubeadm \u521d\u59cb\u5316\u96c6\u7fa4\uff08master \u8282\u70b9\uff09<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u6700\u597d\u63d0\u524d\u628a\u955c\u50cf\u4e0b\u8f7d\u597d\uff0c\u8fd9\u6837\u5b89\u88c5\u5feb<\/p>\n<pre>docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/kube-apiserver:v1.24.1docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/kube-controller-manager:v1.24.1docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/kube-scheduler:v1.24.1docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/kube-proxy:v1.24.1docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/pause:3.7docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/etcd:3.5.3-0docker&nbsp;pull&nbsp;registry.aliyuncs.com\/google_containers\/coredns:v1.8.6<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u96c6\u7fa4\u521d\u59cb\u5316<\/p>\n<pre>kubeadm&nbsp;init&nbsp;&nbsp;&nbsp;--apiserver-advertise-address=192.168.0.113&nbsp;&nbsp;&nbsp;--image-repository&nbsp;registry.aliyuncs.com\/google_containers&nbsp;&nbsp;&nbsp;--control-plane-endpoint=cluster-endpoint&nbsp;&nbsp;&nbsp;--kubernetes-version&nbsp;v1.24.1&nbsp;&nbsp;&nbsp;--service-cidr=10.1.0.0\/16&nbsp;&nbsp;&nbsp;--pod-network-cidr=10.244.0.0\/16&nbsp;&nbsp;&nbsp;--v=5#&nbsp;\u2013image-repository&nbsp;string\uff1a&nbsp;&nbsp;&nbsp;&nbsp;\u8fd9\u4e2a\u7528\u4e8e\u6307\u5b9a\u4ece\u4ec0\u4e48\u4f4d\u7f6e\u6765\u62c9\u53d6\u955c\u50cf\uff081.13\u7248\u672c\u624d\u6709\u7684\uff09\uff0c\u9ed8\u8ba4\u503c\u662fk8s.gcr.io\uff0c\u6211\u4eec\u5c06\u5176\u6307\u5b9a\u4e3a\u56fd\u5185\u955c\u50cf\u5730\u5740\uff1aregistry.aliyuncs.com\/google_containers#&nbsp;\u2013kubernetes-version&nbsp;string\uff1a&nbsp;&nbsp;\u6307\u5b9akubenets\u7248\u672c\u53f7\uff0c\u9ed8\u8ba4\u503c\u662fstable-1\uff0c\u4f1a\u5bfc\u81f4\u4ecehttps:\/\/dl.k8s.io\/release\/stable-1.txt\u4e0b\u8f7d\u6700\u65b0\u7684\u7248\u672c\u53f7\uff0c\u6211\u4eec\u53ef\u4ee5\u5c06\u5176\u6307\u5b9a\u4e3a\u56fa\u5b9a\u7248\u672c\uff08v1.22.1\uff09\u6765\u8df3\u8fc7\u7f51\u7edc\u8bf7\u6c42\u3002#&nbsp;\u2013apiserver-advertise-address&nbsp;&nbsp;\u6307\u660e\u7528&nbsp;Master&nbsp;\u7684\u54ea\u4e2a&nbsp;interface&nbsp;\u4e0e&nbsp;Cluster&nbsp;\u7684\u5176\u4ed6\u8282\u70b9\u901a\u4fe1\u3002\u5982\u679c&nbsp;Master&nbsp;\u6709\u591a\u4e2a&nbsp;interface\uff0c\u5efa\u8bae\u660e\u786e\u6307\u5b9a\uff0c\u5982\u679c\u4e0d\u6307\u5b9a\uff0ckubeadm&nbsp;\u4f1a\u81ea\u52a8\u9009\u62e9\u6709\u9ed8\u8ba4\u7f51\u5173\u7684&nbsp;interface\u3002\u8fd9\u91cc\u7684ip\u4e3amaster\u8282\u70b9ip\uff0c\u8bb0\u5f97\u66f4\u6362\u3002#&nbsp;\u2013pod-network-cidr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u6307\u5b9a&nbsp;Pod&nbsp;\u7f51\u7edc\u7684\u8303\u56f4\u3002Kubernetes&nbsp;\u652f\u6301\u591a\u79cd\u7f51\u7edc\u65b9\u6848\uff0c\u800c\u4e14\u4e0d\u540c\u7f51\u7edc\u65b9\u6848\u5bf9&nbsp;&nbsp;\u2013pod-network-cidr\u6709\u81ea\u5df1\u7684\u8981\u6c42\uff0c\u8fd9\u91cc\u8bbe\u7f6e\u4e3a10.244.0.0\/16&nbsp;\u662f\u56e0\u4e3a\u6211\u4eec\u5c06\u4f7f\u7528&nbsp;flannel&nbsp;\u7f51\u7edc\u65b9\u6848\uff0c\u5fc5\u987b\u8bbe\u7f6e\u6210\u8fd9\u4e2a&nbsp;CIDR\u3002#&nbsp;--control-plane-endpoint&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cluster-endpoint&nbsp;\u662f\u6620\u5c04\u5230\u8be5&nbsp;IP&nbsp;\u7684\u81ea\u5b9a\u4e49&nbsp;DNS&nbsp;\u540d\u79f0\uff0c\u8fd9\u91cc\u914d\u7f6ehosts\u6620\u5c04\uff1a192.168.0.113&nbsp;&nbsp;&nbsp;cluster-endpoint\u3002&nbsp;\u8fd9\u5c06\u5141\u8bb8\u4f60\u5c06&nbsp;--control-plane-endpoint=cluster-endpoint&nbsp;\u4f20\u9012\u7ed9&nbsp;kubeadm&nbsp;init\uff0c\u5e76\u5c06\u76f8\u540c\u7684&nbsp;DNS&nbsp;\u540d\u79f0\u4f20\u9012\u7ed9&nbsp;kubeadm&nbsp;join\u3002&nbsp;\u7a0d\u540e\u4f60\u53ef\u4ee5\u4fee\u6539&nbsp;cluster-endpoint&nbsp;\u4ee5\u6307\u5411\u9ad8\u53ef\u7528\u6027\u65b9\u6848\u4e2d\u7684\u8d1f\u8f7d\u5747\u8861\u5668\u7684\u5730\u5740\u3002<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011kubeadm \u4e0d\u652f\u6301\u5c06\u6ca1\u6709&nbsp;&#8211;control-plane-endpoint&nbsp;\u53c2\u6570\u7684\u5355\u4e2a\u63a7\u5236\u5e73\u9762\u96c6\u7fa4\u8f6c\u6362\u4e3a\u9ad8\u53ef\u7528\u6027\u96c6\u7fa4\u3002<\/p>\n<\/blockquote>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u91cd\u7f6e\u518d\u521d\u59cb\u5316<\/p>\n<pre>kubeadm&nbsp;resetrm&nbsp;-fr&nbsp;~\/.kube\/&nbsp;&nbsp;\/etc\/kubernetes\/*&nbsp;var\/lib\/etcd\/*kubeadm&nbsp;init&nbsp;&nbsp;&nbsp;--apiserver-advertise-address=192.168.0.113&nbsp;&nbsp;&nbsp;&nbsp;--image-repository&nbsp;registry.aliyuncs.com\/google_containers&nbsp;&nbsp;&nbsp;--control-plane-endpoint=cluster-endpoint&nbsp;&nbsp;&nbsp;--kubernetes-version&nbsp;v1.24.1&nbsp;&nbsp;&nbsp;--service-cidr=10.1.0.0\/16&nbsp;&nbsp;&nbsp;--pod-network-cidr=10.244.0.0\/16&nbsp;&nbsp;&nbsp;--v=5#&nbsp;\u2013image-repository&nbsp;string\uff1a&nbsp;&nbsp;&nbsp;&nbsp;\u8fd9\u4e2a\u7528\u4e8e\u6307\u5b9a\u4ece\u4ec0\u4e48\u4f4d\u7f6e\u6765\u62c9\u53d6\u955c\u50cf\uff081.13\u7248\u672c\u624d\u6709\u7684\uff09\uff0c\u9ed8\u8ba4\u503c\u662fk8s.gcr.io\uff0c\u6211\u4eec\u5c06\u5176\u6307\u5b9a\u4e3a\u56fd\u5185\u955c\u50cf\u5730\u5740\uff1aregistry.aliyuncs.com\/google_containers#&nbsp;\u2013kubernetes-version&nbsp;string\uff1a&nbsp;&nbsp;\u6307\u5b9akubenets\u7248\u672c\u53f7\uff0c\u9ed8\u8ba4\u503c\u662fstable-1\uff0c\u4f1a\u5bfc\u81f4\u4ecehttps:\/\/dl.k8s.io\/release\/stable-1.txt\u4e0b\u8f7d\u6700\u65b0\u7684\u7248\u672c\u53f7\uff0c\u6211\u4eec\u53ef\u4ee5\u5c06\u5176\u6307\u5b9a\u4e3a\u56fa\u5b9a\u7248\u672c\uff08v1.22.1\uff09\u6765\u8df3\u8fc7\u7f51\u7edc\u8bf7\u6c42\u3002#&nbsp;\u2013apiserver-advertise-address&nbsp;&nbsp;\u6307\u660e\u7528&nbsp;Master&nbsp;\u7684\u54ea\u4e2a&nbsp;interface&nbsp;\u4e0e&nbsp;Cluster&nbsp;\u7684\u5176\u4ed6\u8282\u70b9\u901a\u4fe1\u3002\u5982\u679c&nbsp;Master&nbsp;\u6709\u591a\u4e2a&nbsp;interface\uff0c\u5efa\u8bae\u660e\u786e\u6307\u5b9a\uff0c\u5982\u679c\u4e0d\u6307\u5b9a\uff0ckubeadm&nbsp;\u4f1a\u81ea\u52a8\u9009\u62e9\u6709\u9ed8\u8ba4\u7f51\u5173\u7684&nbsp;interface\u3002\u8fd9\u91cc\u7684ip\u4e3amaster\u8282\u70b9ip\uff0c\u8bb0\u5f97\u66f4\u6362\u3002#&nbsp;\u2013pod-network-cidr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u6307\u5b9a&nbsp;Pod&nbsp;\u7f51\u7edc\u7684\u8303\u56f4\u3002Kubernetes&nbsp;\u652f\u6301\u591a\u79cd\u7f51\u7edc\u65b9\u6848\uff0c\u800c\u4e14\u4e0d\u540c\u7f51\u7edc\u65b9\u6848\u5bf9&nbsp;&nbsp;\u2013pod-network-cidr\u6709\u81ea\u5df1\u7684\u8981\u6c42\uff0c\u8fd9\u91cc\u8bbe\u7f6e\u4e3a10.244.0.0\/16&nbsp;\u662f\u56e0\u4e3a\u6211\u4eec\u5c06\u4f7f\u7528&nbsp;flannel&nbsp;\u7f51\u7edc\u65b9\u6848\uff0c\u5fc5\u987b\u8bbe\u7f6e\u6210\u8fd9\u4e2a&nbsp;CIDR\u3002#&nbsp;--control-plane-endpoint&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cluster-endpoint&nbsp;\u662f\u6620\u5c04\u5230\u8be5&nbsp;IP&nbsp;\u7684\u81ea\u5b9a\u4e49&nbsp;DNS&nbsp;\u540d\u79f0\uff0c\u8fd9\u91cc\u914d\u7f6ehosts\u6620\u5c04\uff1a192.168.0.113&nbsp;&nbsp;&nbsp;cluster-endpoint\u3002&nbsp;\u8fd9\u5c06\u5141\u8bb8\u4f60\u5c06&nbsp;--control-plane-endpoint=cluster-endpoint&nbsp;\u4f20\u9012\u7ed9&nbsp;kubeadm&nbsp;init\uff0c\u5e76\u5c06\u76f8\u540c\u7684&nbsp;DNS&nbsp;\u540d\u79f0\u4f20\u9012\u7ed9&nbsp;kubeadm&nbsp;join\u3002&nbsp;\u7a0d\u540e\u4f60\u53ef\u4ee5\u4fee\u6539&nbsp;cluster-endpoint&nbsp;\u4ee5\u6307\u5411\u9ad8\u53ef\u7528\u6027\u65b9\u6848\u4e2d\u7684\u8d1f\u8f7d\u5747\u8861\u5668\u7684\u5730\u5740\u3002<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u914d\u7f6e\u73af\u5883\u53d8\u91cf<\/p>\n<pre>mkdir&nbsp;-p&nbsp;$HOME\/.kubesudo&nbsp;cp&nbsp;-i&nbsp;\/etc\/kubernetes\/admin.conf&nbsp;$HOME\/.kube\/configsudo&nbsp;chown&nbsp;$(id&nbsp;-u):$(id&nbsp;-g)&nbsp;$HOME\/.kube\/config#&nbsp;\u4e34\u65f6\u751f\u6548\uff08\u9000\u51fa\u5f53\u524d\u7a97\u53e3\u91cd\u8fde\u73af\u5883\u53d8\u91cf\u5931\u6548\uff09export&nbsp;KUBECONFIG=\/etc\/kubernetes\/admin.conf#&nbsp;\u6c38\u4e45\u751f\u6548\uff08\u63a8\u8350\uff09echo&nbsp;\"export&nbsp;KUBECONFIG=\/etc\/kubernetes\/admin.conf\"&nbsp;&amp;gt;&amp;gt;&nbsp;~\/.bash_profilesource&nbsp;&nbsp;~\/.bash_profile<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 0em;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/8473e89ee2f33360fc50dd806469cdea-4.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe4\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe4\" \/><\/p>\n<p style=\"max-width:90%\">\u53d1\u73b0\u8282\u70b9\u8fd8\u662f\u6709\u95ee\u9898\uff0c\u67e5\u770b\u65e5\u5fd7&nbsp;\/var\/log\/messages<\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">&#8220;Container runtime network not ready&#8221; networkReady=&#8221;NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initialized&#8221;<\/p>\n<\/blockquote>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/3e2a1b9cc7fbf33aeecb17a0960db4ce-5.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe5\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe5\" \/><br \/>\u63a5\u4e0b\u6765\u5c31\u662f\u5b89\u88c5 Pod \u7f51\u7edc\u63d2\u4ef6<\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">8\uff09\u5b89\u88c5 Pod \u7f51\u7edc\u63d2\u4ef6\uff08CNI\uff1aContainer Network Interface\uff09(master)<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4f60\u5fc5\u987b\u90e8\u7f72\u4e00\u4e2a\u57fa\u4e8e Pod \u7f51\u7edc\u63d2\u4ef6\u7684 \u5bb9\u5668\u7f51\u7edc\u63a5\u53e3 (CNI)\uff0c\u4ee5\u4fbf\u4f60\u7684 Pod \u53ef\u4ee5\u76f8\u4e92\u901a\u4fe1\u3002<\/p>\n<pre>#&nbsp;\u6700\u597d\u63d0\u524d\u4e0b\u8f7d\u955c\u50cf\uff08\u6240\u6709\u8282\u70b9\uff09docker&nbsp;pull&nbsp;quay.io\/coreos\/flannel:v0.14.0kubectl&nbsp;apply&nbsp;-f&nbsp;https:\/\/raw.githubusercontent.com\/coreos\/flannel\/master\/Documentation\/kube-flannel.yml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5982\u679c\u4e0a\u9762\u5b89\u88c5\u5931\u8d25\uff0c\u5219\u4e0b\u8f7d\u6211\u767e\u5ea6\u91cc\u7684\uff0c\u79bb\u7ebf\u5b89\u88c5<\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u94fe\u63a5\uff1ahttps:\/\/pan.baidu.com\/s\/1HB9xuO3bssAW7v5HzpXkeQ<br \/>\u63d0\u53d6\u7801\uff1a8888<\/p>\n<\/blockquote>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u518d\u67e5\u770b node \u8282\u70b9\uff0c\u5c31\u5df2\u7ecf\u6b63\u5e38\u4e86<br \/><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/3e2a1b9cc7fbf33aeecb17a0960db4ce-6.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe6\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe6\" \/><\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">9\uff09node \u8282\u70b9\u52a0\u5165 k8s \u96c6\u7fa4<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5148\u5b89\u88c5 kubelet<\/p>\n<pre>yum&nbsp;install&nbsp;-y&nbsp;kubelet&nbsp;kubeadm&nbsp;kubectl&nbsp;--disableexcludes=kubernetes#&nbsp;\u8bbe\u7f6e\u4e3a\u5f00\u673a\u81ea\u542f\u5e76\u73b0\u5728\u7acb\u523b\u542f\u52a8\u670d\u52a1&nbsp;--now\uff1a\u7acb\u523b\u542f\u52a8\u670d\u52a1systemctl&nbsp;enable&nbsp;--now&nbsp;kubeletsystemctl&nbsp;status&nbsp;kubelet<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5982\u679c\u6ca1\u6709\u4ee4\u724c\uff0c\u53ef\u4ee5\u901a\u8fc7\u5728\u63a7\u5236\u5e73\u9762\u8282\u70b9\u4e0a\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u6765\u83b7\u53d6\u4ee4\u724c\uff1a<\/p>\n<pre>kubeadm&nbsp;token&nbsp;list<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u4ee4\u724c\u4f1a\u572824\u5c0f\u65f6\u540e\u8fc7\u671f\u3002\u5982\u679c\u8981\u5728\u5f53\u524d\u4ee4\u724c\u8fc7\u671f\u540e\u5c06\u8282\u70b9\u52a0\u5165\u96c6\u7fa4\uff0c \u5219\u53ef\u4ee5\u901a\u8fc7\u5728\u63a7\u5236\u5e73\u9762\u8282\u70b9\u4e0a\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\u6765\u521b\u5efa\u65b0\u4ee4\u724c\uff1a<\/p>\n<pre>kubeadm&nbsp;token&nbsp;create#&nbsp;\u518d\u67e5\u770bkubeadm&nbsp;token&nbsp;list<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5982\u679c\u4f60\u6ca1\u6709&nbsp;\u2013discovery-token-ca-cert-hash&nbsp;\u7684\u503c\uff0c\u5219\u53ef\u4ee5\u901a\u8fc7\u5728\u63a7\u5236\u5e73\u9762\u8282\u70b9\u4e0a\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u94fe\u6765\u83b7\u53d6\u5b83\uff1a<\/p>\n<pre>openssl&nbsp;x509&nbsp;-pubkey&nbsp;-in&nbsp;\/etc\/kubernetes\/pki\/ca.crt&nbsp;|&nbsp;openssl&nbsp;rsa&nbsp;-pubin&nbsp;-outform&nbsp;der&nbsp;2&amp;gt;\/dev\/null&nbsp;|&nbsp;openssl&nbsp;dgst&nbsp;-sha256&nbsp;-hex&nbsp;|&nbsp;sed&nbsp;'s\/^.*&nbsp;\/\/'<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5982\u679c\u6267\u884c kubeadm init \u65f6\u6ca1\u6709\u8bb0\u5f55\u4e0b\u52a0\u5165\u96c6\u7fa4\u7684\u547d\u4ee4\uff0c\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u547d\u4ee4\u91cd\u65b0\u521b\u5efa\uff08\u63a8\u8350\uff09\u4e00\u822c\u4e0d\u7528\u4e0a\u9762\u7684\u5206\u522b\u83b7\u53d6 token \u548c ca-cert-hash \u65b9\u5f0f\uff0c\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u4e00\u6c14\u5475\u6210\uff1a<\/p>\n<pre>kubeadm&nbsp;token&nbsp;create&nbsp;--print-join-command<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u8fd9\u91cc\u9700\u8981\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\uff0c\u518d\u67e5\u770b\u8282\u70b9\u8282\u70b9\u72b6\u6001\uff0c\u56e0\u4e3a\u9700\u8981\u5b89\u88c5 kube-proxy \u548c flannel\u3002\u53e6\u5916\uff0c\u641c\u7d22\u516c\u4f17\u53f7\u6280\u672f\u793e\u533a\u540e\u53f0\u56de\u590d\u201cLinux\u201d\uff0c\u83b7\u53d6\u4e00\u4efd\u60ca\u559c\u793c\u5305\u3002<\/p>\n<pre>kubectl&nbsp;get&nbsp;pods&nbsp;-Akubectl&nbsp;get&nbsp;nodes<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/5db72f51d27e1938026bd609d02d2b7d-7.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe7\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe7\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">10\uff09\u914d\u7f6e IPVS<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u3010\u95ee\u9898\u3011\u96c6\u7fa4\u5185\u65e0\u6cd5 ping \u901a ClusterIP\uff08\u6216 ServiceName\uff09<\/p>\n<h4>1\u3001\u52a0\u8f7d ip_vs \u76f8\u5173\u5185\u6838\u6a21\u5757<\/h4>\n<pre>modprobe&nbsp;--&nbsp;ip_vsmodprobe&nbsp;--&nbsp;ip_vs_shmodprobe&nbsp;--&nbsp;ip_vs_rrmodprobe&nbsp;--&nbsp;ip_vs_wrr<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u6240\u6709\u8282\u70b9\u9a8c\u8bc1\u5f00\u542f\u4e86 ipvs\uff1a<\/p>\n<pre>lsmod&nbsp;|grep&nbsp;ip_vs<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001\u5b89\u88c5 ipvsadm \u5de5\u5177<\/h4>\n<pre>yum&nbsp;install&nbsp;ipset&nbsp;ipvsadm&nbsp;-y<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>3\u3001\u7f16\u8f91 kube-proxy \u914d\u7f6e\u6587\u4ef6\uff0cmode \u4fee\u6539\u6210 ipvs<\/h4>\n<pre>kubectl&nbsp;edit&nbsp;&nbsp;configmap&nbsp;-n&nbsp;kube-system&nbsp;&nbsp;kube-proxy<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/5db72f51d27e1938026bd609d02d2b7d-8.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe8\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe8\" \/>  <\/p>\n<h4>4\u3001\u91cd\u542f kube-proxy<\/h4>\n<pre>#&nbsp;\u5148\u67e5\u770bkubectl&nbsp;get&nbsp;pod&nbsp;-n&nbsp;kube-system&nbsp;|&nbsp;grep&nbsp;kube-proxy#&nbsp;\u518ddelete\u8ba9\u5b83\u81ea\u62c9\u8d77kubectl&nbsp;get&nbsp;pod&nbsp;-n&nbsp;kube-system&nbsp;|&nbsp;grep&nbsp;kube-proxy&nbsp;|awk&nbsp;'{system(\"kubectl&nbsp;delete&nbsp;pod&nbsp;\"$1\"&nbsp;-n&nbsp;kube-system\")}'#&nbsp;\u518d\u67e5\u770bkubectl&nbsp;get&nbsp;pod&nbsp;-n&nbsp;kube-system&nbsp;|&nbsp;grep&nbsp;kube-proxy<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/5db72f51d27e1938026bd609d02d2b7d-9.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe9\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe9\" \/>  <\/p>\n<h4>5\u3001\u67e5\u770b ipvs \u8f6c\u53d1\u89c4\u5219<\/h4>\n<pre>ipvsadm&nbsp;-Ln<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/95e2b54b3c6b8d35b93a898989632597-10.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe10\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe10\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">11\uff09\u96c6\u7fa4\u9ad8\u53ef\u7528\u914d\u7f6e<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u914d\u7f6e\u9ad8\u53ef\u7528\uff08HA\uff09Kubernetes \u96c6\u7fa4\u5b9e\u73b0\u7684\u4e24\u79cd\u65b9\u6848\uff1a<\/p>\n<ul>\n<li>  \u4f7f\u7528\u5806\u53e0\uff08stacked\uff09\u63a7\u5236\u5e73\u9762\u8282\u70b9\uff0c\u5176\u4e2d etcd \u8282\u70b9\u4e0e\u63a7\u5236\u5e73\u9762\u8282\u70b9\u5171\u5b58\uff08\u672c\u7ae0\u4f7f\u7528\uff09\uff0c\u67b6\u6784\u56fe\u5982\u4e0b\uff1a <\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/95e2b54b3c6b8d35b93a898989632597-11.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe11\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe11\" \/>  <\/p>\n<ul>\n<li>  \u4f7f\u7528\u5916\u90e8 etcd \u8282\u70b9\uff0c\u5176\u4e2d etcd \u5728\u4e0e\u63a7\u5236\u5e73\u9762\u4e0d\u540c\u7684\u8282\u70b9\u4e0a\u8fd0\u884c\uff0c\u67b6\u6784\u56fe\u5982\u4e0b\uff1a <\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/7f8615abd520276fc7dfafac3d4ad902-12.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe12\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe12\" \/>  <\/p>\n<p style=\"max-width:90%\">\u8fd9\u91cc\u65b0\u589e\u4e00\u53f0\u673a\u5668\u4f5c\u4e3a\u53e6\u5916\u4e00\u4e2a master \u8282\u70b9\uff1a192.168.0.116&nbsp;\u914d\u7f6e\u8ddf\u4e0a\u9762 master \u8282\u70b9\u4e00\u6837\u3002\u53ea\u662f\u4e0d\u9700\u8981\u6700\u540e\u4e00\u6b65\u521d\u59cb\u5316\u4e86\u3002<\/p>\n<h4>1\u3001\u4fee\u6539\u4e3b\u673a\u540d\u548c\u914d\u7f6e hosts<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u6240\u6709\u8282\u70b9\u90fd\u7edf\u4e00\u5982\u4e0b\u914d\u7f6e\uff1a<\/p>\n<pre>#&nbsp;\u5728192.168.0.113\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;&nbsp;k8s-master-168-0-113#&nbsp;\u5728192.168.0.114\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;k8s-node1-168-0-114#&nbsp;\u5728192.168.0.115\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;k8s-node2-168-0-115#&nbsp;\u5728192.168.0.116\u6267\u884chostnamectl&nbsp;set-hostname&nbsp;k8s-master2-168-0-116<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u914d\u7f6e hosts<\/p>\n<pre>cat&nbsp;&amp;gt;&amp;gt;&nbsp;\/etc\/hosts&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;2\u3001\u914d\u7f6e ssh \u4e92\u4fe1&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u76f4\u63a5\u4e00\u76f4\u56de\u8f66\u5c31\u884cssh-keygenssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-master-168-0-113ssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-node1-168-0-114ssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-node2-168-0-115ssh-copy-id&nbsp;-i&nbsp;~\/.ssh\/id_rsa.pub&nbsp;root@k8s-master2-168-0-116<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>3\u3001\u65f6\u95f4\u540c\u6b65<\/h4>\n<pre>yum&nbsp;install&nbsp;chrony&nbsp;-ysystemctl&nbsp;start&nbsp;chronydsystemctl&nbsp;enable&nbsp;chronydchronyc&nbsp;sources<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>7\u3001\u5173\u95ed\u9632\u706b\u5899<\/h4>\n<pre>systemctl&nbsp;stop&nbsp;firewalldsystemctl&nbsp;disable&nbsp;firewalld<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>4\u3001\u5173\u95ed swap<\/h4>\n<pre>#&nbsp;\u4e34\u65f6\u5173\u95ed\uff1b\u5173\u95edswap\u4e3b\u8981\u662f\u4e3a\u4e86\u6027\u80fd\u8003\u8651swapoff&nbsp;-a#&nbsp;\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2a\u547d\u4ee4\u67e5\u770bswap\u662f\u5426\u5173\u95ed\u4e86free#&nbsp;\u6c38\u4e45\u5173\u95edsed&nbsp;-ri&nbsp;'s\/.*swap.*\/#&amp;amp;\/'&nbsp;\/etc\/fstab<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>5\u3001\u7981\u7528 SELinux<\/h4>\n<pre>#&nbsp;\u4e34\u65f6\u5173\u95edsetenforce&nbsp;0#&nbsp;\u6c38\u4e45\u7981\u7528sed&nbsp;-i&nbsp;'s\/^SELINUX=enforcing$\/SELINUX=disabled\/'&nbsp;\/etc\/selinux\/config<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>6\u3001\u5141\u8bb8 iptables \u68c0\u67e5\u6865\u63a5\u6d41\u91cf\uff08\u53ef\u9009\uff0c\u6240\u6709\u8282\u70b9\uff09<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u82e5\u8981\u663e\u5f0f\u52a0\u8f7d\u6b64\u6a21\u5757\uff0c\u8bf7\u8fd0\u884c&nbsp;sudo modprobe br_netfilter\uff0c\u901a\u8fc7\u8fd0\u884c&nbsp;lsmod | grep br_netfilter&nbsp;\u6765\u9a8c\u8bc1 br_netfilter \u6a21\u5757\u662f\u5426\u5df2\u52a0\u8f7d\uff0c<\/p>\n<pre>sudo&nbsp;modprobe&nbsp;br_netfilterlsmod&nbsp;|&nbsp;grep&nbsp;br_netfilter<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4e3a\u4e86\u8ba9 Linux \u8282\u70b9\u7684 iptables \u80fd\u591f\u6b63\u786e\u67e5\u770b\u6865\u63a5\u6d41\u91cf\uff0c\u8bf7\u786e\u8ba4 sysctl \u914d\u7f6e\u4e2d\u7684&nbsp;net.bridge.bridge-nf-call-iptables&nbsp;\u8bbe\u7f6e\u4e3a 1\u3002\u4f8b\u5982\uff1a<\/p>\n<pre>cat&nbsp;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;7\u3001\u5b89\u88c5\u5bb9\u5668 docker\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/h4&gt;&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u63d0\u793a\uff1av1.24 \u4e4b\u524d\u7684 Kubernetes \u7248\u672c\u5305\u62ec\u4e0e Docker Engine \u7684\u76f4\u63a5\u96c6\u6210\uff0c\u4f7f\u7528\u540d\u4e3a dockershim \u7684\u7ec4\u4ef6\u3002\u8fd9\u79cd\u7279\u6b8a\u7684\u76f4\u63a5\u6574\u5408\u4e0d\u518d\u662f Kubernetes \u7684\u4e00\u90e8\u5206 \uff08\u8fd9\u6b21\u5220\u9664\u88ab\u4f5c\u4e3a v1.20 \u53d1\u884c\u7248\u672c\u7684\u4e00\u90e8\u5206\u5ba3\u5e03\uff09\u3002\u4f60\u53ef\u4ee5\u9605\u8bfb\u68c0\u67e5 Dockershim \u5f03\u7528\u662f\u5426\u4f1a\u5f71\u54cd\u4f60 \u4ee5\u4e86\u89e3\u6b64\u5220\u9664\u53ef\u80fd\u4f1a\u5982\u4f55\u5f71\u54cd\u4f60\u3002\u8981\u4e86\u89e3\u5982\u4f55\u4f7f\u7528 dockershim \u8fdb\u884c\u8fc1\u79fb\uff0c\u8bf7\u53c2\u9605\u4ece dockershim \u8fc1\u79fb\u3002&lt;\/p&gt;&lt;\/blockquote&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u914d\u7f6eyum\u6e90cd&nbsp;\/etc\/yum.repos.d&nbsp;;&nbsp;mkdir&nbsp;bak;&nbsp;mv&nbsp;CentOS-Linux-*&nbsp;bak\/#&nbsp;centos7wget&nbsp;-O&nbsp;\/etc\/yum.repos.d\/CentOS-Base.repo&nbsp;http:\/\/mirrors.aliyun.com\/repo\/Centos-7.repo#&nbsp;centos8wget&nbsp;-O&nbsp;\/etc\/yum.repos.d\/CentOS-Base.repo&nbsp;http:\/\/mirrors.aliyun.com\/repo\/Centos-8.repo#&nbsp;\u5b89\u88c5yum-config-manager\u914d\u7f6e\u5de5\u5177yum&nbsp;-y&nbsp;install&nbsp;yum-utils#&nbsp;\u8bbe\u7f6eyum\u6e90yum-config-manager&nbsp;--add-repo&nbsp;http:\/\/mirrors.aliyun.com\/docker-ce\/linux\/centos\/docker-ce.repo#&nbsp;\u5b89\u88c5docker-ce\u7248\u672cyum&nbsp;install&nbsp;-y&nbsp;docker-ce#&nbsp;\u542f\u52a8systemctl&nbsp;start&nbsp;docker#&nbsp;\u5f00\u673a\u81ea\u542fsystemctl&nbsp;enable&nbsp;docker#&nbsp;\u67e5\u770b\u7248\u672c\u53f7docker&nbsp;--version#&nbsp;\u67e5\u770b\u7248\u672c\u5177\u4f53\u4fe1\u606fdocker&nbsp;version#&nbsp;Docker\u955c\u50cf\u6e90\u8bbe\u7f6e#&nbsp;\u4fee\u6539\u6587\u4ef6&nbsp;\/etc\/docker\/daemon.json\uff0c\u6ca1\u6709\u8fd9\u4e2a\u6587\u4ef6\u5c31\u521b\u5efa#&nbsp;\u6dfb\u52a0\u4ee5\u4e0b\u5185\u5bb9\u540e\uff0c\u91cd\u542fdocker\u670d\u52a1\uff1acat&nbsp;&amp;gt;\/etc\/docker\/daemon.json&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u3010\u6e29\u99a8\u63d0\u793a\u3011dockerd \u5b9e\u9645\u771f\u5b9e\u8c03\u7528\u7684\u8fd8\u662f containerd \u7684 api \u63a5\u53e3\uff0ccontainerd \u662f dockerd \u548c runC \u4e4b\u95f4\u7684\u4e00\u4e2a\u4e2d\u95f4\u4ea4\u6d41\u7ec4\u4ef6\u3002\u6240\u4ee5\u542f\u52a8 docker \u670d\u52a1\u7684\u65f6\u5019\uff0c\u4e5f\u4f1a\u542f\u52a8 containerd \u670d\u52a1\u7684\u3002&lt;\/p&gt;&lt;\/blockquote&gt;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;8\u3001\u914d\u7f6e k8s yum \u6e90\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;&nbsp;\/etc\/yum.repos.d\/kubernetes.repo&nbsp;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;9\u3001\u5c06 sandbox_image \u955c\u50cf\u6e90\u8bbe\u7f6e\u4e3a\u963f\u91cc\u4e91 google_containers \u955c\u50cf\u6e90\uff08\u6240\u6709\u8282\u70b9\uff09&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;#&nbsp;\u5bfc\u51fa\u9ed8\u8ba4\u914d\u7f6e\uff0cconfig.toml\u8fd9\u4e2a\u6587\u4ef6\u9ed8\u8ba4\u662f\u4e0d\u5b58\u5728\u7684containerd&nbsp;config&nbsp;default&nbsp;&amp;gt;&nbsp;\/etc\/containerd\/config.tomlgrep&nbsp;sandbox_image&nbsp;&nbsp;\/etc\/containerd\/config.tomlsed&nbsp;-i&nbsp;\"s#k8s.gcr.io\/pause#registry.aliyuncs.com\/google_containers\/pause#g\"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/etc\/containerd\/config.tomlgrep&nbsp;sandbox_image&nbsp;&nbsp;\/etc\/containerd\/config.toml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/f08a78ca5270b6ec1db96ca0920e5e46-0.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe\" \/>  <\/p>\n<h4>10\u3001\u914d\u7f6e containerd cgroup \u9a71\u52a8\u7a0b\u5e8f systemd<\/h4>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">kubernets \u81ea\uff56 1.24.0 \u540e\uff0c\u5c31\u4e0d\u518d\u4f7f\u7528 docker.shim\uff0c\u66ff\u6362\u91c7\u7528 containerd \u4f5c\u4e3a\u5bb9\u5668\u8fd0\u884c\u65f6\u7aef\u70b9\u3002\u56e0\u6b64\u9700\u8981\u5b89\u88c5 containerd\uff08\u5728 docker \u7684\u57fa\u7840\u4e0b\u5b89\u88c5\uff09\uff0c\u4e0a\u9762\u5b89\u88c5 docker \u7684\u65f6\u5019\u5c31\u81ea\u52a8\u5b89\u88c5\u4e86 containerd \u4e86\u3002\u8fd9\u91cc\u7684 docker \u53ea\u662f\u4f5c\u4e3a\u5ba2\u6237\u7aef\u800c\u5df2\u3002\u5bb9\u5668\u5f15\u64ce\u8fd8\u662f containerd\u3002<\/p>\n<\/blockquote>\n<pre>sed&nbsp;-i&nbsp;'s#SystemdCgroup&nbsp;=&nbsp;false#SystemdCgroup&nbsp;=&nbsp;true#g'&nbsp;\/etc\/containerd\/config.toml#&nbsp;\u5e94\u7528\u6240\u6709\u66f4\u6539\u540e,\u91cd\u65b0\u542f\u52a8containerdsystemctl&nbsp;restart&nbsp;containerd<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>11\u3001\u5f00\u59cb\u5b89\u88c5 kubeadm\uff0ckubelet \u548c kubectl\uff08master \u8282\u70b9\uff09<\/h4>\n<pre>#&nbsp;\u4e0d\u6307\u5b9a\u7248\u672c\u5c31\u662f\u6700\u65b0\u7248\u672c\uff0c\u5f53\u524d\u6700\u65b0\u7248\u5c31\u662f1.24.1yum&nbsp;install&nbsp;-y&nbsp;kubelet-1.24.1&nbsp;&nbsp;kubeadm-1.24.1&nbsp;&nbsp;kubectl-1.24.1&nbsp;--disableexcludes=kubernetes#&nbsp;disableexcludes=kubernetes\uff1a\u7981\u6389\u9664\u4e86\u8fd9\u4e2akubernetes\u4e4b\u5916\u7684\u522b\u7684\u4ed3\u5e93#&nbsp;\u8bbe\u7f6e\u4e3a\u5f00\u673a\u81ea\u542f\u5e76\u73b0\u5728\u7acb\u523b\u542f\u52a8\u670d\u52a1&nbsp;--now\uff1a\u7acb\u523b\u542f\u52a8\u670d\u52a1systemctl&nbsp;enable&nbsp;--now&nbsp;kubelet#&nbsp;\u67e5\u770b\u72b6\u6001\uff0c\u8fd9\u91cc\u9700\u8981\u7b49\u5f85\u4e00\u6bb5\u65f6\u95f4\u518d\u67e5\u770b\u670d\u52a1\u72b6\u6001\uff0c\u542f\u52a8\u4f1a\u6709\u70b9\u6162systemctl&nbsp;status&nbsp;kubelet#&nbsp;\u67e5\u770b\u7248\u672ckubectl&nbsp;versionyum&nbsp;info&nbsp;kubeadm<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>12\u3001\u52a0\u5165 k8s \u96c6\u7fa4<\/h4>\n<pre>#&nbsp;\u8bc1\u5982\u679c\u8fc7\u671f\u4e86\uff0c\u53ef\u4ee5\u4f7f\u7528\u4e0b\u9762\u547d\u4ee4\u751f\u6210\u65b0\u8bc1\u4e66\u4e0a\u4f20\uff0c\u8fd9\u91cc\u4f1a\u6253\u5370\u51facertificate&nbsp;key\uff0c\u540e\u9762\u4f1a\u7528\u5230kubeadm&nbsp;init&nbsp;phase&nbsp;upload-certs&nbsp;--upload-certs#&nbsp;\u4f60\u8fd8\u53ef\u4ee5\u5728&nbsp;\u3010init\u3011\u671f\u95f4\u6307\u5b9a\u81ea\u5b9a\u4e49\u7684&nbsp;--certificate-key\uff0c\u4ee5\u540e\u53ef\u4ee5\u7531&nbsp;join&nbsp;\u4f7f\u7528\u3002&nbsp;\u8981\u751f\u6210\u8fd9\u6837\u7684\u5bc6\u94a5\uff0c\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\uff08\u8fd9\u91cc\u4e0d\u6267\u884c\uff0c\u5c31\u7528\u4e0a\u9762\u90a3\u4e2a\u81ea\u547d\u4ee4\u5c31\u53ef\u4ee5\u4e86\uff09\uff1akubeadm&nbsp;certs&nbsp;certificate-keykubeadm&nbsp;token&nbsp;create&nbsp;--print-join-commandkubeadm&nbsp;join&nbsp;cluster-endpoint:6443&nbsp;--token&nbsp;wswrfw.fc81au4yvy6ovmhh&nbsp;--discovery-token-ca-cert-hash&nbsp;sha256:43a3924c25104d4393462105639f6a02b8ce284728775ef9f9c30eed8e0abc0f&nbsp;--control-plane&nbsp;--certificate-key&nbsp;8d2709697403b74e35d05a420bd2c19fd8c11914eb45f2ff22937b245bed5b68#&nbsp;--control-plane&nbsp;\u6807\u5fd7\u901a\u77e5&nbsp;kubeadm&nbsp;join&nbsp;\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u63a7\u5236\u5e73\u9762\u3002\u52a0\u5165master\u5fc5\u987b\u52a0\u8fd9\u4e2a\u6807\u8bb0#&nbsp;--certificate-key&nbsp;...&nbsp;\u5c06\u5bfc\u81f4\u4ece\u96c6\u7fa4\u4e2d\u7684&nbsp;kubeadm-certs&nbsp;Secret&nbsp;\u4e0b\u8f7d\u63a7\u5236\u5e73\u9762\u8bc1\u4e66\u5e76\u4f7f\u7528\u7ed9\u5b9a\u7684\u5bc6\u94a5\u8fdb\u884c\u89e3\u5bc6\u3002\u8fd9\u91cc\u7684\u503c\u5c31\u662f\u4e0a\u9762\u8fd9\u4e2a\u547d\u4ee4\uff08kubeadm&nbsp;init&nbsp;phase&nbsp;upload-certs&nbsp;--upload-certs\uff09\u6253\u5370\u51fa\u7684key\u3002<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/a957f69639a5e5a80cc1c0a68464bb5c-14.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe13\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe13\" \/><br \/>\u6839\u636e\u63d0\u793a\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n<pre>mkdir&nbsp;-p&nbsp;$HOME\/.kubesudo&nbsp;cp&nbsp;-i&nbsp;\/etc\/kubernetes\/admin.conf&nbsp;$HOME\/.kube\/configsudo&nbsp;chown&nbsp;$(id&nbsp;-u):$(id&nbsp;-g)&nbsp;$HOME\/.kube\/config<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u67e5\u770b<\/p>\n<pre>kubectl&nbsp;get&nbsp;nodeskubectl&nbsp;get&nbsp;pods&nbsp;-A&nbsp;-owide<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/a957f69639a5e5a80cc1c0a68464bb5c-15.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe14\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe14\" \/><br \/>\u867d\u7136\u73b0\u5728\u5df2\u7ecf\u6709\u4e24\u4e2a master \u4e86\uff0c\u4f46\u662f\u5bf9\u5916\u8fd8\u662f\u53ea\u80fd\u6709\u4e00\u4e2a\u5165\u53e3\u7684\uff0c\u6240\u4ee5\u8fd8\u5f97\u8981\u4e00\u4e2a\u8d1f\u8f7d\u5747\u8861\u5668\uff0c\u5982\u679c\u4e00\u4e2a master \u6302\u4e86\uff0c\u4f1a\u81ea\u52a8\u5207\u5230\u53e6\u5916\u4e00\u4e2a master \u8282\u70b9\u3002<\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">12\uff09\u90e8\u7f72 Nginx+Keepalived \u9ad8\u53ef\u7528\u8d1f\u8f7d\u5747\u8861\u5668<\/span><\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/34c4e5fdf017899873acbfbf97b09508-16.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe15\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe15\" \/>  <\/p>\n<h4>1\u3001\u5b89\u88c5 Nginx \u548c Keepalived<\/h4>\n<pre>#&nbsp;\u5728\u4e24\u4e2amaster\u8282\u70b9\u4e0a\u6267\u884cyum&nbsp;install&nbsp;nginx&nbsp;keepalived&nbsp;-y<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001Nginx \u914d\u7f6e<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5728\u4e24\u4e2a master \u8282\u70b9\u914d\u7f6e<\/p>\n<pre>cat&nbsp;&amp;gt;&nbsp;\/etc\/nginx\/nginx.conf&nbsp;&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u3010\u6e29\u99a8\u63d0\u793a\u3011\u5982\u679c\u53ea\u4fdd\u8bc1\u9ad8\u53ef\u7528\uff0c\u4e0d\u914d\u7f6e k8s-apiserver \u8d1f\u8f7d\u5747\u8861\u7684\u8bdd\uff0c\u53ef\u4ee5\u4e0d\u88c5 nginx\uff0c\u4f46\u662f\u6700\u597d\u8fd8\u662f\u914d\u7f6e\u4e00\u4e0b k8s-apiserver \u8d1f\u8f7d\u5747\u8861\u3002&lt;\/p&gt;&lt;\/blockquote&gt;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;3\u3001Keepalived \u914d\u7f6e\uff08master\uff09&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;&nbsp;\/etc\/keepalived\/keepalived.conf&nbsp;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ul>\n<li>  vrrp_script\uff1a\u6307\u5b9a\u68c0\u67e5 nginx \u5de5\u4f5c\u72b6\u6001\u811a\u672c\uff08\u6839\u636e nginx \u72b6\u6001\u5224\u65ad\u662f\u5426\u6545\u969c\u8f6c\u79fb\uff09 <\/li>\n<li>  virtual_ipaddress\uff1a\u865a\u62df IP\uff08VIP\uff09 <\/li>\n<\/ul>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u68c0\u67e5 nginx \u72b6\u6001\u811a\u672c\uff1a<\/p>\n<pre>cat&nbsp;&amp;gt;&nbsp;\/etc\/keepalived\/check_nginx.sh&nbsp;&nbsp;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;4\u3001Keepalived \u914d\u7f6e\uff08backup\uff09&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;&nbsp;\/etc\/keepalived\/keepalived.conf&nbsp;&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;\u68c0\u67e5 nginx \u72b6\u6001\u811a\u672c\uff1a&lt;\/p&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;&nbsp;\/etc\/keepalived\/check_nginx.sh&nbsp;&nbsp;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;5\u3001\u542f\u52a8\u5e76\u8bbe\u7f6e\u5f00\u673a\u542f\u52a8&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;systemctl&nbsp;daemon-reloadsystemctl&nbsp;restart&nbsp;nginx&nbsp;&amp;amp;&amp;amp;&nbsp;systemctl&nbsp;enable&nbsp;nginx&nbsp;&amp;amp;&amp;amp;&nbsp;systemctl&nbsp;status&nbsp;nginxsystemctl&nbsp;restart&nbsp;keepalived&nbsp;&amp;amp;&amp;amp;&nbsp;systemctl&nbsp;enable&nbsp;keepalived&nbsp;&amp;amp;&amp;amp;&nbsp;systemctl&nbsp;status&nbsp;keepalived<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u67e5\u770b VIP<\/p>\n<pre>ip&nbsp;a<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/34c4e5fdf017899873acbfbf97b09508-17.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe16\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe16\" \/>  <\/p>\n<h4>6\u3001\u4fee\u6539 hosts\uff08\u6240\u6709\u8282\u70b9\uff09<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5c06 cluster-endpoint \u4e4b\u524d\u6267\u884c\u7684 ip \u4fee\u6539\u6267\u884c\u73b0\u5728\u7684 VIP<\/p>\n<pre>192.168.0.113&nbsp;k8s-master-168-0-113192.168.0.114&nbsp;k8s-node1-168-0-114192.168.0.115&nbsp;k8s-node2-168-0-115192.168.0.116&nbsp;k8s-master2-168-0-116192.168.0.120&nbsp;cluster-endpoint<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>7\u3001\u6d4b\u8bd5\u9a8c\u8bc1<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u67e5\u770b\u7248\u672c\uff08\u8d1f\u8f7d\u5747\u8861\u6d4b\u8bd5\u9a8c\u8bc1\uff09<\/p>\n<pre>curl&nbsp;-k&nbsp;https:\/\/cluster-endpoint:16443\/version<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/efc29c991e8a4d23e8f35226a81b2d27-18.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe17\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe17\" \/><br \/>\u9ad8\u53ef\u7528\u6d4b\u8bd5\u9a8c\u8bc1\uff0c\u5c06 k8s-master-168-0-113 \u8282\u70b9\u5173\u673a<\/p>\n<pre>shutdown&nbsp;-h&nbsp;nowcurl&nbsp;-k&nbsp;https:\/\/cluster-endpoint:16443\/versionkubectl&nbsp;get&nbsp;nodes&nbsp;-Akubectl&nbsp;get&nbsp;pods&nbsp;-A<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011\u5806\u53e0\u96c6\u7fa4\u5b58\u5728\u8026\u5408\u5931\u8d25\u7684\u98ce\u9669\u3002\u5982\u679c\u4e00\u4e2a\u8282\u70b9\u53d1\u751f\u6545\u969c\uff0c\u5219 etcd \u6210\u5458\u548c\u63a7\u5236\u5e73\u9762\u5b9e\u4f8b\u90fd\u5c06\u4e22\u5931\uff0c \u5e76\u4e14\u5197\u4f59\u4f1a\u53d7\u5230\u5f71\u54cd\u3002\u4f60\u53ef\u4ee5\u901a\u8fc7\u6dfb\u52a0\u66f4\u591a\u63a7\u5236\u5e73\u9762\u8282\u70b9\u6765\u964d\u4f4e\u6b64\u98ce\u9669\u3002<\/p>\n<\/blockquote>\n<h2><span style=\"margin: 0px 3px 0px 0px;padding: 2px 13px;max-width: 100%;font-weight: bold;background-image: linear-gradient(rgb(255, 255, 255) 60%, rgb(255, 177, 27) 40%);height: 37px\">\u4e09\u3001k8s \u7ba1\u7406\u5e73\u53f0 dashboard \u73af\u5883\u90e8\u7f72<\/span><\/h2>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">1\uff09dashboard \u90e8\u7f72<\/span><\/h3>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">GitHub \u5730\u5740\uff1ahttps:\/\/github.com\/kubernetes\/dashboard<\/p>\n<pre>kubectl&nbsp;apply&nbsp;-f&nbsp;https:\/\/raw.githubusercontent.com\/kubernetes\/dashboard\/v2.6.0\/aio\/deploy\/recommended.yamlkubectl&nbsp;get&nbsp;pods&nbsp;-n&nbsp;kubernetes-dashboard<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4f46\u662f\u8fd9\u4e2a\u53ea\u80fd\u5185\u90e8\u8bbf\u95ee\uff0c\u6240\u4ee5\u8981\u5916\u90e8\u8bbf\u95ee\uff0c\u8981\u4e48\u90e8\u7f72 ingress\uff0c\u8981\u4e48\u5c31\u662f\u8bbe\u7f6e service NodePort \u7c7b\u578b\u3002\u8fd9\u91cc\u9009\u62e9 service \u66b4\u9732\u7aef\u53e3\u3002\u53e6\u5916\uff0c\u641c\u7d22\u516c\u4f17\u53f7\u7f16\u7a0b\u6280\u672f\u5708\u540e\u53f0\u56de\u590d\u201c1024\u201d\uff0c\u83b7\u53d6\u4e00\u4efd\u60ca\u559c\u793c\u5305\u3002<\/p>\n<pre>wget&nbsp;https:\/\/raw.githubusercontent.com\/kubernetes\/dashboard\/v2.6.0\/aio\/deploy\/recommended.yaml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4fee\u6539\u540e\u7684\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n<pre>#&nbsp;Copyright&nbsp;2017&nbsp;The&nbsp;Kubernetes&nbsp;Authors.##&nbsp;Licensed&nbsp;under&nbsp;the&nbsp;Apache&nbsp;License,&nbsp;Version&nbsp;2.0&nbsp;(the&nbsp;\"License\");#&nbsp;you&nbsp;may&nbsp;not&nbsp;use&nbsp;this&nbsp;file&nbsp;except&nbsp;in&nbsp;compliance&nbsp;with&nbsp;the&nbsp;License.#&nbsp;You&nbsp;may&nbsp;obtain&nbsp;a&nbsp;copy&nbsp;of&nbsp;the&nbsp;License&nbsp;at##&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http:\/\/www.apache.org\/licenses\/LICENSE-2.0##&nbsp;Unless&nbsp;required&nbsp;by&nbsp;applicable&nbsp;law&nbsp;or&nbsp;agreed&nbsp;to&nbsp;in&nbsp;writing,&nbsp;software#&nbsp;distributed&nbsp;under&nbsp;the&nbsp;License&nbsp;is&nbsp;distributed&nbsp;on&nbsp;an&nbsp;\"AS&nbsp;IS\"&nbsp;BASIS,#&nbsp;WITHOUT&nbsp;WARRANTIES&nbsp;OR&nbsp;CONDITIONS&nbsp;OF&nbsp;ANY&nbsp;KIND,&nbsp;either&nbsp;express&nbsp;or&nbsp;implied.#&nbsp;See&nbsp;the&nbsp;License&nbsp;for&nbsp;the&nbsp;specific&nbsp;language&nbsp;governing&nbsp;permissions&nbsp;and#&nbsp;limitations&nbsp;under&nbsp;the&nbsp;License.apiVersion:&nbsp;v1kind:&nbsp;Namespacemetadata:&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard---apiVersion:&nbsp;v1kind:&nbsp;ServiceAccountmetadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboard---kind:&nbsp;ServiceapiVersion:&nbsp;v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardspec:&nbsp;&nbsp;type:&nbsp;NodePort&nbsp;&nbsp;ports:&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;port:&nbsp;443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetPort:&nbsp;8443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nodePort:&nbsp;31443&nbsp;&nbsp;selector:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard---apiVersion:&nbsp;v1kind:&nbsp;Secretmetadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard-certs&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardtype:&nbsp;Opaque---apiVersion:&nbsp;v1kind:&nbsp;Secretmetadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard-csrf&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardtype:&nbsp;Opaquedata:&nbsp;&nbsp;csrf:&nbsp;\"\"---apiVersion:&nbsp;v1kind:&nbsp;Secretmetadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard-key-holder&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardtype:&nbsp;Opaque---kind:&nbsp;ConfigMapapiVersion:&nbsp;v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard-settings&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboard---kind:&nbsp;RoleapiVersion:&nbsp;rbac.authorization.k8s.io\/v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardrules:&nbsp;&nbsp;#&nbsp;Allow&nbsp;Dashboard&nbsp;to&nbsp;get,&nbsp;update&nbsp;and&nbsp;delete&nbsp;Dashboard&nbsp;exclusive&nbsp;secrets.&nbsp;&nbsp;-&nbsp;apiGroups:&nbsp;[\"\"]&nbsp;&nbsp;&nbsp;&nbsp;resources:&nbsp;[\"secrets\"]&nbsp;&nbsp;&nbsp;&nbsp;resourceNames:&nbsp;[\"kubernetes-dashboard-key-holder\",&nbsp;\"kubernetes-dashboard-certs\",&nbsp;\"kubernetes-dashboard-csrf\"]&nbsp;&nbsp;&nbsp;&nbsp;verbs:&nbsp;[\"get\",&nbsp;\"update\",&nbsp;\"delete\"]&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Allow&nbsp;Dashboard&nbsp;to&nbsp;get&nbsp;and&nbsp;update&nbsp;'kubernetes-dashboard-settings'&nbsp;config&nbsp;map.&nbsp;&nbsp;-&nbsp;apiGroups:&nbsp;[\"\"]&nbsp;&nbsp;&nbsp;&nbsp;resources:&nbsp;[\"configmaps\"]&nbsp;&nbsp;&nbsp;&nbsp;resourceNames:&nbsp;[\"kubernetes-dashboard-settings\"]&nbsp;&nbsp;&nbsp;&nbsp;verbs:&nbsp;[\"get\",&nbsp;\"update\"]&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Allow&nbsp;Dashboard&nbsp;to&nbsp;get&nbsp;metrics.&nbsp;&nbsp;-&nbsp;apiGroups:&nbsp;[\"\"]&nbsp;&nbsp;&nbsp;&nbsp;resources:&nbsp;[\"services\"]&nbsp;&nbsp;&nbsp;&nbsp;resourceNames:&nbsp;[\"heapster\",&nbsp;\"dashboard-metrics-scraper\"]&nbsp;&nbsp;&nbsp;&nbsp;verbs:&nbsp;[\"proxy\"]&nbsp;&nbsp;-&nbsp;apiGroups:&nbsp;[\"\"]&nbsp;&nbsp;&nbsp;&nbsp;resources:&nbsp;[\"services\/proxy\"]&nbsp;&nbsp;&nbsp;&nbsp;resourceNames:&nbsp;[\"heapster\",&nbsp;\"http:heapster:\",&nbsp;\"https:heapster:\",&nbsp;\"dashboard-metrics-scraper\",&nbsp;\"http:dashboard-metrics-scraper\"]&nbsp;&nbsp;&nbsp;&nbsp;verbs:&nbsp;[\"get\"]---kind:&nbsp;ClusterRoleapiVersion:&nbsp;rbac.authorization.k8s.io\/v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboardrules:&nbsp;&nbsp;#&nbsp;Allow&nbsp;Metrics&nbsp;Scraper&nbsp;to&nbsp;get&nbsp;metrics&nbsp;from&nbsp;the&nbsp;Metrics&nbsp;server&nbsp;&nbsp;-&nbsp;apiGroups:&nbsp;[\"metrics.k8s.io\"]&nbsp;&nbsp;&nbsp;&nbsp;resources:&nbsp;[\"pods\",&nbsp;\"nodes\"]&nbsp;&nbsp;&nbsp;&nbsp;verbs:&nbsp;[\"get\",&nbsp;\"list\",&nbsp;\"watch\"]---apiVersion:&nbsp;rbac.authorization.k8s.io\/v1kind:&nbsp;RoleBindingmetadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardroleRef:&nbsp;&nbsp;apiGroup:&nbsp;rbac.authorization.k8s.io&nbsp;&nbsp;kind:&nbsp;Role&nbsp;&nbsp;name:&nbsp;kubernetes-dashboardsubjects:&nbsp;&nbsp;-&nbsp;kind:&nbsp;ServiceAccount&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboard---apiVersion:&nbsp;rbac.authorization.k8s.io\/v1kind:&nbsp;ClusterRoleBindingmetadata:&nbsp;&nbsp;name:&nbsp;kubernetes-dashboardroleRef:&nbsp;&nbsp;apiGroup:&nbsp;rbac.authorization.k8s.io&nbsp;&nbsp;kind:&nbsp;ClusterRole&nbsp;&nbsp;name:&nbsp;kubernetes-dashboardsubjects:&nbsp;&nbsp;-&nbsp;kind:&nbsp;ServiceAccount&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboard---kind:&nbsp;DeploymentapiVersion:&nbsp;apps\/v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardspec:&nbsp;&nbsp;replicas:&nbsp;1&nbsp;&nbsp;revisionHistoryLimit:&nbsp;10&nbsp;&nbsp;selector:&nbsp;&nbsp;&nbsp;&nbsp;matchLabels:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;template:&nbsp;&nbsp;&nbsp;&nbsp;metadata:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;spec:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;securityContext:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;seccompProfile:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;RuntimeDefault&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;containers:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;image:&nbsp;kubernetesui\/dashboard:v2.6.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imagePullPolicy:&nbsp;Always&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ports:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;containerPort:&nbsp;8443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protocol:&nbsp;TCP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;args:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;--auto-generate-certificates&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;--namespace=kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Uncomment&nbsp;the&nbsp;following&nbsp;line&nbsp;to&nbsp;manually&nbsp;specify&nbsp;Kubernetes&nbsp;API&nbsp;server&nbsp;Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;If&nbsp;not&nbsp;specified,&nbsp;Dashboard&nbsp;will&nbsp;attempt&nbsp;to&nbsp;auto&nbsp;discover&nbsp;the&nbsp;API&nbsp;server&nbsp;and&nbsp;connect&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;to&nbsp;it.&nbsp;Uncomment&nbsp;only&nbsp;if&nbsp;the&nbsp;default&nbsp;does&nbsp;not&nbsp;work.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;-&nbsp;--apiserver-host=http:\/\/my-address:port&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;volumeMounts:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;kubernetes-dashboard-certs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mountPath:&nbsp;\/certs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Create&nbsp;on-disk&nbsp;volume&nbsp;to&nbsp;store&nbsp;exec&nbsp;logs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;mountPath:&nbsp;\/tmp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;tmp-volume&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;livenessProbe:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpGet:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scheme:&nbsp;HTTPS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path:&nbsp;\/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;port:&nbsp;8443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;initialDelaySeconds:&nbsp;30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timeoutSeconds:&nbsp;30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;securityContext:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allowPrivilegeEscalation:&nbsp;false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;readOnlyRootFilesystem:&nbsp;true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;runAsUser:&nbsp;1001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;runAsGroup:&nbsp;2001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;volumes:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;kubernetes-dashboard-certs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;secret:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;secretName:&nbsp;kubernetes-dashboard-certs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;tmp-volume&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;emptyDir:&nbsp;{}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serviceAccountName:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nodeSelector:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\"kubernetes.io\/os\":&nbsp;linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Comment&nbsp;the&nbsp;following&nbsp;tolerations&nbsp;if&nbsp;Dashboard&nbsp;must&nbsp;not&nbsp;be&nbsp;deployed&nbsp;on&nbsp;master&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tolerations:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;key:&nbsp;node-role.kubernetes.io\/master&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect:&nbsp;NoSchedule---kind:&nbsp;ServiceapiVersion:&nbsp;v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;name:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardspec:&nbsp;&nbsp;ports:&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;port:&nbsp;8000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetPort:&nbsp;8000&nbsp;&nbsp;selector:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;dashboard-metrics-scraper---kind:&nbsp;DeploymentapiVersion:&nbsp;apps\/v1metadata:&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;name:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;namespace:&nbsp;kubernetes-dashboardspec:&nbsp;&nbsp;replicas:&nbsp;1&nbsp;&nbsp;revisionHistoryLimit:&nbsp;10&nbsp;&nbsp;selector:&nbsp;&nbsp;&nbsp;&nbsp;matchLabels:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;template:&nbsp;&nbsp;&nbsp;&nbsp;metadata:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labels:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k8s-app:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;&nbsp;&nbsp;spec:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;securityContext:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;seccompProfile:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;RuntimeDefault&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;containers:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;dashboard-metrics-scraper&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;image:&nbsp;kubernetesui\/metrics-scraper:v1.0.8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ports:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;containerPort:&nbsp;8000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protocol:&nbsp;TCP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;livenessProbe:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpGet:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scheme:&nbsp;HTTP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path:&nbsp;\/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;port:&nbsp;8000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;initialDelaySeconds:&nbsp;30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timeoutSeconds:&nbsp;30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;volumeMounts:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;mountPath:&nbsp;\/tmp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;tmp-volume&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;securityContext:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allowPrivilegeEscalation:&nbsp;false&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;readOnlyRootFilesystem:&nbsp;true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;runAsUser:&nbsp;1001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;runAsGroup:&nbsp;2001&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serviceAccountName:&nbsp;kubernetes-dashboard&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nodeSelector:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\"kubernetes.io\/os\":&nbsp;linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Comment&nbsp;the&nbsp;following&nbsp;tolerations&nbsp;if&nbsp;Dashboard&nbsp;must&nbsp;not&nbsp;be&nbsp;deployed&nbsp;on&nbsp;master&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tolerations:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;key:&nbsp;node-role.kubernetes.io\/master&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect:&nbsp;NoSchedule&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;volumes:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;tmp-volume&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;emptyDir:&nbsp;{}<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/efc29c991e8a4d23e8f35226a81b2d27-19.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe18\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe18\" \/><br \/>\u91cd\u65b0\u90e8\u7f72<\/p>\n<pre>kubectl&nbsp;delete&nbsp;-f&nbsp;recommended.yamlkubectl&nbsp;apply&nbsp;-f&nbsp;recommended.yamlkubectl&nbsp;get&nbsp;svc,pods&nbsp;-n&nbsp;kubernetes-dashboard<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/efc29c991e8a4d23e8f35226a81b2d27-20.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe19\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe19\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">2\uff09\u521b\u5efa\u767b\u5f55\u7528\u6237<\/span><\/h3>\n<pre>cat&nbsp;&amp;gt;ServiceAccount.yaml&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;\u521b\u5efa\u5e76\u83b7\u53d6\u767b\u5f55 token&lt;\/p&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;kubectl&nbsp;-n&nbsp;kubernetes-dashboard&nbsp;create&nbsp;token&nbsp;admin-user<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">3\uff09\u914d\u7f6e hosts \u767b\u5f55 dashboard web<\/span><\/h3>\n<pre>192.168.0.120&nbsp;cluster-endpoint<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u767b\u5f55\uff1ahttps:\/\/cluster-endpoint:31443<br \/><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/efc29c991e8a4d23e8f35226a81b2d27-21.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe20\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe20\" \/><\/p>\n<p style=\"max-width:90%\">\u8f93\u5165\u4e0a\u9762\u521b\u5efa\u7684 token \u767b\u5f55<br \/><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/9f7e5b290fb367fd16b4a2bb52c3db4e-22.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe21\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe21\" \/><\/p>\n<h2><span style=\"margin: 0px 3px 0px 0px;padding: 2px 13px;max-width: 100%;font-weight: bold;background-image: linear-gradient(rgb(255, 255, 255) 60%, rgb(255, 177, 27) 40%);height: 37px\">\u56db\u3001k8s \u955c\u50cf\u4ed3\u5e93 harbor \u73af\u5883\u90e8\u7f72<\/span><\/h2>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">GitHub \u5730\u5740\uff1ahttps:\/\/github.com\/helm\/helm\/releases<br \/>\u8fd9\u4f7f\u7528 helm \u5b89\u88c5\uff0c\u6240\u4ee5\u5f97\u5148\u5b89\u88c5 helm<\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">1\uff09\u5b89\u88c5 helm<\/span><\/h3>\n<pre>mkdir&nbsp;-p&nbsp;\/opt\/k8s\/helm&nbsp;&amp;amp;&amp;amp;&nbsp;cd&nbsp;\/opt\/k8s\/helmwget&nbsp;https:\/\/get.helm.sh\/helm-v3.9.0-rc.1-linux-amd64.tar.gztar&nbsp;-xf&nbsp;helm-v3.9.0-rc.1-linux-amd64.tar.gzln&nbsp;-s&nbsp;\/opt\/k8s\/helm\/linux-amd64\/helm&nbsp;\/usr\/bin\/helmhelm&nbsp;versionhelm&nbsp;help<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">2\uff09\u914d\u7f6e hosts<\/span><\/h3>\n<pre>192.168.0.120&nbsp;myharbor.com<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">3\uff09\u521b\u5efa stl \u8bc1\u4e66<\/span><\/h3>\n<pre>mkdir&nbsp;\/opt\/k8s\/helm\/stl&nbsp;&amp;amp;&amp;amp;&nbsp;cd&nbsp;\/opt\/k8s\/helm\/stl#&nbsp;\u751f\u6210&nbsp;CA&nbsp;\u8bc1\u4e66\u79c1\u94a5openssl&nbsp;genrsa&nbsp;-out&nbsp;ca.key&nbsp;4096#&nbsp;\u751f\u6210&nbsp;CA&nbsp;\u8bc1\u4e66openssl&nbsp;req&nbsp;-x509&nbsp;-new&nbsp;-nodes&nbsp;-sha512&nbsp;-days&nbsp;3650&nbsp;&nbsp;-subj&nbsp;\"\/C=CN\/ST=Guangdong\/L=Shenzhen\/O=harbor\/OU=harbor\/CN=myharbor.com\"&nbsp;&nbsp;-key&nbsp;ca.key&nbsp;&nbsp;-out&nbsp;ca.crt#&nbsp;\u521b\u5efa\u57df\u540d\u8bc1\u4e66\uff0c\u751f\u6210\u79c1\u94a5openssl&nbsp;genrsa&nbsp;-out&nbsp;myharbor.com.key&nbsp;4096#&nbsp;\u751f\u6210\u8bc1\u4e66\u7b7e\u540d\u8bf7\u6c42&nbsp;CSRopenssl&nbsp;req&nbsp;-sha512&nbsp;-new&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-subj&nbsp;\"\/C=CN\/ST=Guangdong\/L=Shenzhen\/O=harbor\/OU=harbor\/CN=myharbor.com\"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-key&nbsp;myharbor.com.key&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-out&nbsp;myharbor.com.csr#&nbsp;\u751f\u6210&nbsp;x509&nbsp;v3&nbsp;\u6269\u5c55cat&nbsp;&amp;gt;&nbsp;v3.ext&nbsp;&lt;h3 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 10px 0px 5px;padding: 10px 0px 0px;outline: 0px;font-weight: bold;font-size: 20px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;&lt;span style=\"margin: 0px;padding: 0px 0px 0px 20px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;color: rgb(81, 81, 81);font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid;border-left-color: rgb(249, 191, 69);\"&gt;4\uff09\u5b89\u88c5 ingress&lt;\/span&gt;&lt;\/h3&gt;&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;ingress \u5b98\u65b9\u7f51\u7ad9\uff1ahttps:\/\/kubernetes.github.io\/ingress-nginx\/&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;ingress \u4ed3\u5e93\u5730\u5740\uff1ahttps:\/\/github.com\/kubernetes\/ingress-nginx&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;\u90e8\u7f72\u6587\u6863\uff1ahttps:\/\/kubernetes.github.io\/ingress-nginx\/deploy\/&lt;\/p&gt;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;1\u3001\u901a\u8fc7 helm \u90e8\u7f72&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;helm&nbsp;upgrade&nbsp;--install&nbsp;ingress-nginx&nbsp;ingress-nginx&nbsp;&nbsp;&nbsp;--repo&nbsp;https:\/\/kubernetes.github.io\/ingress-nginx&nbsp;&nbsp;&nbsp;--namespace&nbsp;ingress-nginx&nbsp;--create-namespace<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001\u901a\u8fc7 YAML \u6587\u4ef6\u5b89\u88c5\uff08\u672c\u7ae0\u4f7f\u7528\u8fd9\u4e2a\u65b9\u5f0f\u5b89\u88c5 ingress\uff09<\/h4>\n<pre>kubectl&nbsp;apply&nbsp;-f&nbsp;https:\/\/raw.githubusercontent.com\/kubernetes\/ingress-nginx\/controller-v1.2.0\/deploy\/static\/provider\/cloud\/deploy.yaml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5982\u679c\u4e0b\u8f7d\u955c\u50cf\u5931\u8d25\uff0c\u53ef\u4ee5\u7528\u4ee5\u4e0b\u65b9\u5f0f\u4fee\u6539\u955c\u50cf\u5730\u5740\u518d\u5b89\u88c5<\/p>\n<pre>\u725b\u903c\u554a\uff01\u63a5\u79c1\u6d3b\u5fc5\u5907\u7684&nbsp;N&nbsp;\u4e2a\u5f00\u6e90\u9879\u76ee\uff01\u8d76\u5feb\u6536\u85cf<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    <\/p>\n<pre>#&nbsp;\u53ef\u4ee5\u5148\u628a\u955c\u50cf\u4e0b\u8f7d\uff0c\u518d\u5b89\u88c5\ndocker&nbsp;pull&nbsp;registry.cn-hangzhou.aliyuncs.com\/google_containers\/nginx-ingress-controller:v1.2.0\ndocker&nbsp;pull&nbsp;registry.cn-hangzhou.aliyuncs.com\/google_containers\/kube-webhook-certgen:v1.1.1\n\nwget&nbsp;https:\/\/raw.githubusercontent.com\/kubernetes\/ingress-nginx\/controller-v1.2.0\/deploy\/static\/provider\/cloud\/deploy.yaml\n#&nbsp;\u4fee\u6539\u955c\u50cf\u5730\u5740\nsed&nbsp;-i&nbsp;'s@k8s.gcr.io\/ingress-nginx\/controller:v1.2.0(.*)@registry.cn-hangzhou.aliyuncs.com\/google_containers\/nginx-ingress-controller:v1.2.0@'&nbsp;deploy.yaml\nsed&nbsp;-i&nbsp;'s@k8s.gcr.io\/ingress-nginx\/kube-webhook-certgen:v1.1.1(.*)$@registry.cn-hangzhou.aliyuncs.com\/google_containers\/kube-webhook-certgen:v1.1.1@'&nbsp;deploy.yaml\n\n###\u8fd8\u9700\u8981\u4fee\u6539\u4e24\u5730\u65b9\n#1\u3001kind:&nbsp;\u7c7b\u578b\u4fee\u6539\u6210DaemonSet\uff0creplicas:&nbsp;\u6ce8\u9500\u6389\uff0c\u56e0\u4e3aDaemonSet\u6a21\u5f0f\u4f1a\u6bcf\u4e2a\u8282\u70b9\u8fd0\u884c\u4e00\u4e2apod\n#2\u3001\u5728\u6dfb\u52a0\u4e00\u6761\uff1ahostnetwork\uff1atrue\n#3\u3001\u628aLoadBalancer\u4fee\u6539\u6210NodePort\n#4\u3001\u5728--validating-webhook-key\u4e0b\u9762\u6dfb\u52a0-&nbsp;--watch-ingress-without-class=true\n#5\u3001\u8bbe\u7f6emaster\u8282\u70b9\u53ef\u8c03\u5ea6\nkubectl&nbsp;taint&nbsp;nodes&nbsp;k8s-master-168-0-113&nbsp;node-role.kubernetes.io\/control-plane:NoSchedule-\nkubectl&nbsp;taint&nbsp;nodes&nbsp;k8s-master2-168-0-116&nbsp;node-role.kubernetes.io\/control-plane:NoSchedule-\n\nkubectl&nbsp;apply&nbsp;-f&nbsp;deploy.yaml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/9f7e5b290fb367fd16b4a2bb52c3db4e-23.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe22\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe22\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">5\uff09\u5b89\u88c5 nfs<\/span><\/h3>\n<h4>1\u3001\u6240\u6709\u8282\u70b9\u5b89\u88c5 nfs<\/h4>\n<pre>yum&nbsp;-y&nbsp;install&nbsp;&nbsp;nfs-utils&nbsp;rpcbind<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001\u5728 master \u8282\u70b9\u521b\u5efa\u5171\u4eab\u76ee\u5f55\u5e76\u6388\u6743<\/h4>\n<pre>mkdir&nbsp;\/opt\/nfsdata\n#&nbsp;\u6388\u6743\u5171\u4eab\u76ee\u5f55\nchmod&nbsp;666&nbsp;\/opt\/nfsdata<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>3\u3001\u914d\u7f6e exports \u6587\u4ef6<\/h4>\n<pre>cat&nbsp;&amp;gt;&nbsp;\/etc\/exports&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;exportfs \u547d\u4ee4&lt;\/p&gt;&lt;blockquote data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;outline: 0px;border-left-width: 3px;border-style: none none none solid;border-left-color: rgb(255, 177, 27);color: rgb(106, 115, 125);font-size: 0.9em;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left block auto rgb&gt;&lt;p style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-size: 16px;line-height: 26px;color: rgb(89, 89, 89);\"&gt;\u5e38\u7528\u9009\u9879&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;-a \u5168\u90e8\u6302\u8f7d\u6216\u8005\u5168\u90e8\u5378\u8f7d&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;-r \u91cd\u65b0\u6302\u8f7d&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;-u \u5378\u8f7d\u67d0\u4e00\u4e2a\u76ee\u5f55&lt;br style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;-v \u663e\u793a\u5171\u4eab\u76ee\u5f55 \u4ee5\u4e0b\u64cd\u4f5c\u5728\u670d\u52a1\u7aef\u4e0a&lt;\/p&gt;&lt;\/blockquote&gt;&lt;h4 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 18px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;4\u3001\u542f\u52a8 rpc \u548c nfs\uff08\u5ba2\u6237\u7aef\u53ea\u9700\u8981\u542f\u52a8 rpc \u670d\u52a1\uff09\uff08\u6ce8\u610f\u987a\u5e8f\uff09&lt;\/h4&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;systemctl&nbsp;start&nbsp;rpcbind\nsystemctl&nbsp;start&nbsp;nfs-server\nsystemctl&nbsp;enable&nbsp;rpcbind\nsystemctl&nbsp;enable&nbsp;nfs-server<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u67e5\u770b<\/p>\n<pre>showmount&nbsp;-e\n#&nbsp;VIP\nshowmount&nbsp;-e&nbsp;192.168.0.120<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">-e \u663e\u793a NFS \u670d\u52a1\u5668\u7684\u5171\u4eab\u5217\u8868<br \/>-a \u663e\u793a\u672c\u673a\u6302\u8f7d\u7684\u6587\u4ef6\u8d44\u6e90\u7684\u60c5\u51b5 NFS \u8d44\u6e90\u7684\u60c5\u51b5<br \/>-v \u663e\u793a\u7248\u672c\u53f7<\/p>\n<\/blockquote>\n<h4>5\u3001\u5ba2\u6237\u7aef<\/h4>\n<pre>#&nbsp;\u5b89\u88c5\nyum&nbsp;-y&nbsp;install&nbsp;&nbsp;nfs-utils&nbsp;rpcbind\n#&nbsp;\u542f\u52a8rpc\u670d\u52a1\nsystemctl&nbsp;start&nbsp;rpcbind\nsystemctl&nbsp;enable&nbsp;rpcbind\n#&nbsp;\u521b\u5efa\u6302\u8f7d\u76ee\u5f55\nmkdir&nbsp;\/mnt\/nfsdata\n#&nbsp;\u6302\u8f7d\necho&nbsp;\"192.168.0.120:\/opt\/nfsdata&nbsp;\/mnt\/nfsdata&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nfs&nbsp;&nbsp;&nbsp;&nbsp;defaults&nbsp;&nbsp;0&nbsp;1\"&amp;gt;&amp;gt;&nbsp;\/etc\/fstab\nmount&nbsp;-a<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>6\u3001rsync \u6570\u636e\u540c\u6b65<\/h4>\n<h5>\u30101\u3011rsync \u5b89\u88c5<\/h5>\n<pre>#&nbsp;\u4e24\u7aef\u90fd\u5f97\u5b89\u88c5\nyum&nbsp;-y&nbsp;install&nbsp;rsync<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h5>\u30102\u3011\u914d\u7f6e<\/h5>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5728\/etc\/rsyncd.conf \u4e2d\u6dfb\u52a0<\/p>\n<pre>cat&nbsp;&amp;gt;\/etc\/rsyncd.conf&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;\u914d\u7f6e rsyncd_users.db&lt;\/p&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;cat&nbsp;&amp;gt;\/etc\/rsyncd_users.db&lt;h5 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 16px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;\u30103\u3011rsyncd.conf \u5e38\u7528\u53c2\u6570\u8be6\u89e3&lt;\/h5&gt;&lt;p data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px 0px 20px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;clear: both;min-height: 1em;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left rgb&gt;rsyncd.conf \u53c2\u6570&lt;\/p&gt;&lt;section data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;font-weight: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: rgb(0, 0, 0);font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left auto&gt;&lt;table style=\"margin: 0px 0px 10px;padding: 0px;outline: 0px;border-collapse: collapse;display: table;width: 657px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;\n&lt;thead style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;\"&gt;&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\" class=\"firstRow\"&gt;\n&lt;th style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);background-color: rgb(240, 240, 240);max-width: 100%;font-size: 16px;font-weight: bold;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;rsyncd.conf \u53c2\u6570&lt;\/th&gt;\n&lt;th style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);background-color: rgb(240, 240, 240);max-width: 100%;font-size: 16px;font-weight: bold;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u53c2\u6570\u8bf4\u660e&lt;\/th&gt;\n&lt;\/tr&gt;&lt;\/thead&gt;\n&lt;tbody style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;border-width: 0px;border-style: initial;border-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;uid=root&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;rsync \u4f7f\u7528\u7684\u7528\u6237\u3002&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;gid=root&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;rsync \u4f7f\u7528\u7684\u7528\u6237\u7ec4\uff08\u7528\u6237\u6240\u5728\u7684\u7ec4\uff09&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;use chroot=no&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u5982\u679c\u4e3a true\uff0cdaemon \u4f1a\u5728\u5ba2\u6237\u7aef\u4f20\u8f93\u6587\u4ef6\u524d\u201cchroot to the path\u201d\u3002\u8fd9\u662f\u4e00\u79cd\u5b89\u5168\u914d\u7f6e\uff0c\u56e0\u4e3a\u6211\u4eec\u5927\u591a\u6570\u90fd\u5728\u5185\u7f51\uff0c\u6240\u4ee5\u4e0d\u914d\u4e5f\u6ca1\u5173\u7cfb&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;max connections=200&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u8bbe\u7f6e\u6700\u5927\u8fde\u63a5\u6570\uff0c\u9ed8\u8ba4 0\uff0c\u610f\u601d\u65e0\u9650\u5236\uff0c\u8d1f\u503c\u4e3a\u5173\u95ed\u8fd9\u4e2a\u6a21\u5757&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;timeout=400&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u9ed8\u8ba4\u4e3a 0\uff0c\u8868\u793a no timeout\uff0c\u5efa\u8bae 300-600\uff085-10 \u5206\u949f\uff09&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;pid file&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;rsync daemon \u542f\u52a8\u540e\u5c06\u5176\u8fdb\u7a0b pid \u5199\u5165\u6b64\u6587\u4ef6\u3002\u5982\u679c\u8fd9\u4e2a\u6587\u4ef6\u5b58\u5728\uff0crsync \u4e0d\u4f1a\u8986\u76d6\u8be5\u6587\u4ef6\uff0c\u800c\u662f\u4f1a\u7ec8\u6b62&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;lock file&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a lock \u6587\u4ef6\u7528\u6765\u652f\u6301\u201cmax connections\u201d\u53c2\u6570\uff0c\u4f7f\u5f97\u603b\u8fde\u63a5\u6570\u4e0d\u4f1a\u8d85\u8fc7\u9650\u5236&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;log file&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u4e0d\u8bbe\u6216\u8005\u8bbe\u7f6e\u9519\u8bef\uff0crsync \u4f1a\u4f7f\u7528 rsyslog \u8f93\u51fa\u76f8\u5173\u65e5\u5fd7\u4fe1\u606f&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;ignore errors&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u5ffd\u7565 I\/O \u9519\u8bef&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;read only=false&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a\u5ba2\u6237\u7aef\u662f\u5426\u53ef\u4ee5\u4e0a\u4f20\u6587\u4ef6\uff0c\u9ed8\u8ba4\u5bf9\u6240\u6709\u6a21\u5757\u4e3a true&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;list=false&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u662f\u5426\u5141\u8bb8\u5ba2\u6237\u7aef\u53ef\u4ee5\u67e5\u770b\u53ef\u7528\u6a21\u5757\u5217\u8868\uff0c\u9ed8\u8ba4\u4e3a\u53ef\u4ee5&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;hosts allow&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a\u53ef\u4ee5\u8054\u7cfb\u7684\u5ba2\u6237\u7aef\u4e3b\u673a\u540d\u6216\u548c ip \u5730\u5740\u6216\u5730\u5740\u6bb5\uff0c\u9ed8\u8ba4\u60c5\u51b5\u6ca1\u6709\u6b64\u53c2\u6570\uff0c\u5373\u90fd\u53ef\u4ee5\u8fde\u63a5&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;hosts deny&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a\u4e0d\u53ef\u4ee5\u8054\u7cfb\u7684\u5ba2\u6237\u7aef\u4e3b\u673a\u540d\u6216 ip \u5730\u5740\u6216\u5730\u5740\u6bb5\uff0c\u9ed8\u8ba4\u60c5\u51b5\u6ca1\u6709\u6b64\u53c2\u6570\uff0c\u5373\u90fd\u53ef\u4ee5\u8fde\u63a5&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;auth users&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a\u4ee5\u7a7a\u683c\u6216\u9017\u53f7\u5206\u9694\u7684\u7528\u6237\u53ef\u4ee5\u4f7f\u7528\u54ea\u4e9b\u6a21\u5757\uff0c\u7528\u6237\u4e0d\u9700\u8981\u5728\u672c\u5730\u7cfb\u7edf\u4e2d\u5b58\u5728\u3002\u9ed8\u8ba4\u4e3a\u6240\u6709\u7528\u6237\u65e0\u5bc6\u7801\u8bbf\u95ee&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;secrets file&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u6307\u5b9a\u7528\u6237\u540d\u548c\u5bc6\u7801\u5b58\u653e\u7684\u6587\u4ef6\uff0c\u683c\u5f0f\uff1b\u7528\u6237\u540d\uff1b\u5bc6\u7801\uff0c\u5bc6\u7801\u4e0d\u8d85\u8fc7 8 \u4f4d&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: rgb(248, 248, 248);\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;[backup]&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u8fd9\u91cc\u5c31\u662f\u6a21\u5757\u540d\u79f0\uff0c\u9700\u7528\u4e2d\u62ec\u53f7\u6269\u8d77\u6765\uff0c\u8d77\u540d\u79f0\u6ca1\u6709\u7279\u6b8a\u8981\u6c42\uff0c\u4f46\u6700\u597d\u662f\u6709\u610f\u4e49\u7684\u540d\u79f0\uff0c\u4fbf\u4e8e\u4ee5\u540e\u7ef4\u62a4&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;tr style=\"margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;border-width: 1px 0px 0px;border-top-style: solid;border-top-color: rgb(204, 204, 204);background-color: white;\"&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;path&lt;\/td&gt;\n&lt;td style=\"margin: 0px;padding: 5px 10px;outline: 0px;word-break: break-all;border-width: 1px;border-style: solid;border-color: rgb(204, 204, 204);max-width: 100%;font-size: 16px;text-align: center;min-width: 85px;box-sizing: border-box !important;overflow-wrap: break-word !important;\"&gt;\u8fd9\u4e2a\u6a21\u5757\u4e2d\uff0cdaemon \u4f7f\u7528\u7684\u6587\u4ef6\u7cfb\u7edf\u6216\u76ee\u5f55\uff0c\u76ee\u5f55\u7684\u6743\u9650\u8981\u6ce8\u610f\u548c\u914d\u7f6e\u6587\u4ef6\u4e2d\u7684\u6743\u9650\u4e00\u81f4\uff0c\u5426\u5219\u4f1a\u9047\u5230\u8bfb\u5199\u7684\u95ee\u9898&lt;\/td&gt;\n&lt;\/tr&gt;\n&lt;\/tbody&gt;\n&lt;\/table&gt;&lt;\/section&gt;&lt;h5 data-tool=\"mdnice\u7f16\u8f91\u5668\" style=\"margin: 30px 0px 15px;padding: 0px;outline: 0px;font-weight: bold;font-size: 16px;max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;font-style: normal;font-variant-caps: normal;orphans: auto;text-indent: 0px;text-transform: none;white-space: normal;widows: auto;word-spacing: 0px;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;text-decoration: none;caret-color: rgb(0, 0, 0);color: black;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \" pingfang sc cambria cochin georgia times new roman serif normal left&gt;\u30104\u3011rsync \u5e38\u7528\u547d\u4ee4\u53c2\u6570\u8be6\u89e3&lt;\/h5&gt;&lt;pre class=\"brush:php;toolbar:false;\"&gt;rsync&nbsp;--help\n\nrsync&nbsp;[\u9009\u9879]&nbsp;&nbsp;\u539f\u59cb\u4f4d\u7f6e&nbsp;&nbsp;&nbsp;\u76ee\u6807\u4f4d\u7f6e\n\n\u5e38\u7528\u9009\u9879&nbsp;&nbsp;&nbsp;&nbsp;\u8bf4\u660e\n-r&nbsp;&nbsp;&nbsp;&nbsp;\u9012\u5f52\u6a21\u5f0f\uff0c\u5305\u542b\u76ee\u5f55\u53ca\u5b50\u76ee\u5f55\u4e2d\u7684\u6240\u6709\u6587\u4ef6\n-l&nbsp;&nbsp;&nbsp;&nbsp;\u5bf9\u4e8e\u7b26\u53f7\u94fe\u63a5\u6587\u4ef6\u4ecd\u7136\u590d\u5236\u4e3a\u7b26\u53f7\u94fe\u63a5\u6587\u4ef6\n-v&nbsp;&nbsp;&nbsp;&nbsp;\u663e\u793a\u540c\u6b65\u8fc7\u7a0b\u7684\u8be6\u7ec6\u4fe1\u606f\n-z&nbsp;&nbsp;&nbsp;&nbsp;\u5728\u4f20\u8f93\u6587\u4ef6\u65f6\u8fdb\u884c\u538b\u7f29goD\n-p&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u6587\u4ef6\u7684\u6743\u9650\u6807\u8bb0\n-a&nbsp;&nbsp;&nbsp;&nbsp;\u5f52\u6863\u6a21\u5f0f\uff0c\u9012\u5f52\u5e76\u4fdd\u7559\u5bf9\u8c61\u5c5e\u6027\uff0c\u7b49\u540c\u4e8e-rlpt\n-t&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u6587\u4ef6\u7684\u65f6\u95f4\u6807\u8bb0\n-g&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u6587\u4ef6\u7684\u5c5e\u7ec4\u6807\u8bb0\uff08\u4ec5\u8d85\u7ea7\u7528\u6237\u4f7f\u7528\uff09\n-o&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u6587\u4ef6\u7684\u5c5e\u4e3b\u6807\u8bb0\uff08\u4ec5\u8d85\u7ea7\u7528\u6237\u4f7f\u7528\uff09\n-H&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u786c\u94fe\u63a5\u6587\u4ef6\n-A&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559ACL\u5c5e\u6027\u4fe1\u606f\n-D&nbsp;&nbsp;&nbsp;&nbsp;\u4fdd\u7559\u8bbe\u5907\u6587\u4ef6\u53ca\u5176\u4ed6\u7279\u6b8a\u6587\u4ef6\n--delete&nbsp;&nbsp;\u5220\u9664\u76ee\u6807\u4f4d\u7f6e\u6709\u800c\u539f\u59cb\u4f4d\u7f6e\u6ca1\u6709\u7684\u6587\u4ef6\n--checksum&nbsp;&nbsp;\u6839\u636e\u5bf9\u8c61\u7684\u6821\u9a8c\u548c\u6765\u51b3\u5b9a\u662f\u5426\u8df3\u8fc7\u6587\u4ef6<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h5>\u30105\u3011\u542f\u52a8\u670d\u52a1\uff08\u6570\u636e\u6e90\u673a\u5668\uff09<\/h5>\n<pre>#rsync\u76d1\u542c\u7aef\u53e3\uff1a873\n#rsync\u8fd0\u884c\u6a21\u5f0f\uff1aC\/S\nrsync&nbsp;--daemon&nbsp;--config=\/etc\/rsyncd.conf\nnetstat&nbsp;-tnlp|grep&nbsp;:873<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h5>\u30106\u3011\u6267\u884c\u547d\u4ee4\u540c\u6b65\u6570\u636e<\/h5>\n<pre>#&nbsp;\u5728\u76ee\u7684\u673a\u5668\u4e0a\u6267\u884c\n#&nbsp;rsync&nbsp;-avz&nbsp;\u7528\u6237\u540d@\u6e90\u4e3b\u673a\u5730\u5740\/\u6e90\u76ee\u5f55&nbsp;\u76ee\u7684\u76ee\u5f55\nrsync&nbsp;-avz&nbsp;root@192.168.0.113:\/opt\/nfsdata\/*&nbsp;\/opt\/nfsdata\/<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h5>\u30107\u3011crontab \u5b9a\u65f6\u540c\u6b65<\/h5>\n<pre>#&nbsp;\u914d\u7f6ecrontab\uff0c&nbsp;\u6bcf\u4e94\u5206\u949f\u540c\u6b65\u4e00\u6b21\uff0c\u8fd9\u79cd\u65b9\u5f0f\u4e0d\u597d\n*\/5&nbsp;*&nbsp;*&nbsp;*&nbsp;*&nbsp;rsync&nbsp;-avz&nbsp;root@192.168.0.113:\/opt\/nfsdata\/*&nbsp;\/opt\/nfsdata\/<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011crontab \u5b9a\u65f6\u540c\u6b65\u6570\u636e\u4e0d\u592a\u597d\uff0c\u53ef\u4ee5\u4f7f\u7528rsync+inotify\u505a\u6570\u636e\u5b9e\u65f6\u540c\u6b65\uff0c\u8fd9\u91cc\u7bc7\u5e45\u6709\u70b9\u957f\u4e86\uff0c\u5148\u4e0d\u8bb2\uff0c\u5982\u679c\u540e\u9762\u6709\u65f6\u95f4\u4f1a\u51fa\u4e00\u7bc7\u5355\u72ec\u6587\u7ae0\u6765\u8bb2\u3002<\/p>\n<\/blockquote>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">6\uff09\u521b\u5efa nfs provisioner \u548c\u6301\u4e45\u5316\u5b58\u50a8 SC<\/span><\/h3>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011\u8fd9\u91cc\u8ddf\u6211\u4e4b\u524d\u7684\u6587\u7ae0\u6709\u70b9\u4e0d\u540c\uff0c\u4e4b\u524d\u7684\u65b9\u5f0f\u4e5f\u4e0d\u9002\u7528\u65b0\u7248\u672c\u3002<\/p>\n<\/blockquote>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">GitHub \u5730\u5740\uff1ahttps:\/\/github.com\/kubernetes-sigs\/nfs-subdir-external-provisioner<\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">helm \u90e8\u7f72 nfs-subdir-external-provisioner<\/p>\n<h4>1\u3001\u6dfb\u52a0 helm \u4ed3\u5e93<\/h4>\n<pre>helm&nbsp;repo&nbsp;add&nbsp;nfs-subdir-external-provisioner&nbsp;https:\/\/kubernetes-sigs.github.io\/nfs-subdir-external-provisioner\/<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001helm \u5b89\u88c5 nfs provisioner<\/h4>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011\u9ed8\u8ba4\u955c\u50cf\u662f\u65e0\u6cd5\u8bbf\u95ee\u7684\uff0c\u8fd9\u91cc\u4f7f\u7528 dockerhub \u641c\u7d22\u5230\u7684\u955c\u50cfwilldockerhub\/nfs-subdir-external-provisioner:v4.0.2\uff0c\u8fd8\u6709\u5c31\u662f StorageClass \u4e0d\u5206\u547d\u540d\u7a7a\u95f4\uff0c\u6240\u6709\u5728\u6240\u6709\u547d\u540d\u7a7a\u95f4\u4e0b\u90fd\u53ef\u4ee5\u4f7f\u7528\u3002<\/p>\n<\/blockquote>\n<pre>helm&nbsp;install&nbsp;nfs-subdir-external-provisioner&nbsp;nfs-subdir-external-provisioner\/nfs-subdir-external-provisioner&nbsp;\n&nbsp;&nbsp;--namespace=nfs-provisioner&nbsp;\n&nbsp;&nbsp;--create-namespace&nbsp;\n&nbsp;&nbsp;--set&nbsp;image.repository=willdockerhub\/nfs-subdir-external-provisioner&nbsp;\n&nbsp;&nbsp;--set&nbsp;image.tag=v4.0.2&nbsp;\n&nbsp;&nbsp;--set&nbsp;replicaCount=2&nbsp;\n&nbsp;&nbsp;--set&nbsp;storageClass.name=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;storageClass.defaultClass=true&nbsp;\n&nbsp;&nbsp;--set&nbsp;nfs.server=192.168.0.120&nbsp;\n&nbsp;&nbsp;--set&nbsp;nfs.path=\/opt\/nfsdata<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<blockquote style=\"margin: 20px 0px;padding: 10px 10px 10px 20px;border-left-width: 3px;border-style: none none none solid;font-size: 0.9em;max-width: 100%;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\n<p style=\"margin: 0px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-size: 16px;line-height: 26px\">\u3010\u6e29\u99a8\u63d0\u793a\u3011\u4e0a\u9762 nfs.server \u8bbe\u7f6e\u4e3a VIP\uff0c\u53ef\u5b9e\u73b0\u9ad8\u53ef\u7528\u3002<\/p>\n<\/blockquote>\n<h4>3\u3001\u67e5\u770b<\/h4>\n<pre>kubectl&nbsp;get&nbsp;pods,deploy,sc&nbsp;-n&nbsp;nfs-provisioner<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/0b25ebc130657652c3508ea0d075fab4-24.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe23\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe23\" \/>  <\/p>\n<h3><span style=\"margin: 0px;padding: 0px 0px 0px 20px;max-width: 100%;font-weight: 700;font-size: 1em;border-left-width: 3px;border-left-style: solid\">7\uff09\u90e8\u7f72 Harbor\uff08Https \u65b9\u5f0f\uff09<\/span><\/h3>\n<h4>1\u3001\u521b\u5efa Namespace<\/h4>\n<pre>kubectl&nbsp;create&nbsp;ns&nbsp;harbor<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>2\u3001\u521b\u5efa\u8bc1\u4e66\u79d8\u94a5<\/h4>\n<pre>kubectl&nbsp;create&nbsp;secret&nbsp;tls&nbsp;myharbor.com&nbsp;--key&nbsp;myharbor.com.key&nbsp;--cert&nbsp;myharbor.com.crt&nbsp;-n&nbsp;harbor\nkubectl&nbsp;get&nbsp;secret&nbsp;myharbor.com&nbsp;-n&nbsp;harbor<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>3\u3001\u6dfb\u52a0 Chart \u5e93<\/h4>\n<pre>helm&nbsp;repo&nbsp;add&nbsp;harbor&nbsp;https:\/\/helm.goharbor.io<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>4\u3001\u901a\u8fc7 helm \u5b89\u88c5 harbor<\/h4>\n<pre>helm&nbsp;install&nbsp;myharbor&nbsp;--namespace&nbsp;harbor&nbsp;harbor\/harbor&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.ingress.hosts.core=myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.ingress.hosts.notary=notary.myharbor.com&nbsp;\n&nbsp;&nbsp;--set-string&nbsp;expose.ingress.annotations.'nginx.org\/client-max-body-size'=\"1024m\"&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.tls.secretName=myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.registry.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.jobservice.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.database.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.redis.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.trivy.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.chartmuseum.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.enabled=true&nbsp;\n&nbsp;&nbsp;--set&nbsp;externalURL=https:\/\/myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;harborAdminPassword=Harbor12345<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u8fd9\u91cc\u7a0d\u7b49\u4e00\u6bb5\u65f6\u95f4\u5728\u67e5\u770b\u8d44\u6e90\u72b6\u6001<\/p>\n<pre>kubectl&nbsp;get&nbsp;ingress,svc,pods,pvc&nbsp;-n&nbsp;harbor<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/0b25ebc130657652c3508ea0d075fab4-25.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe24\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe24\" \/>  <\/p>\n<h4>5\u3001ingress \u6ca1\u6709 ADDRESS \u95ee\u9898\u89e3\u51b3<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u3010\u5206\u6790\u3011\uff0c\u53d1\u73b0&#8221;error: endpoints \u201cdefault-http-backend\u201d not found&#8221;<\/p>\n<pre>cat&nbsp;&nbsp;default-http-backend.yaml\n---\n\napiVersion:&nbsp;apps\/v1\nkind:&nbsp;Deployment\nmetadata:\n&nbsp;&nbsp;name:&nbsp;default-http-backend\n&nbsp;&nbsp;labels:\n&nbsp;&nbsp;&nbsp;&nbsp;app:&nbsp;default-http-backend\n&nbsp;&nbsp;namespace:&nbsp;harbor\nspec:\n&nbsp;&nbsp;replicas:&nbsp;1\n&nbsp;&nbsp;selector:\n&nbsp;&nbsp;&nbsp;&nbsp;matchLabels:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;app:&nbsp;default-http-backend\n&nbsp;&nbsp;template:\n&nbsp;&nbsp;&nbsp;&nbsp;metadata:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labels:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;app:&nbsp;default-http-backend\n&nbsp;&nbsp;&nbsp;&nbsp;spec:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;terminationGracePeriodSeconds:&nbsp;60\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;containers:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name:&nbsp;default-http-backend\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Any&nbsp;image&nbsp;is&nbsp;permissible&nbsp;as&nbsp;long&nbsp;as:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;1.&nbsp;It&nbsp;serves&nbsp;a&nbsp;404&nbsp;page&nbsp;at&nbsp;\/\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;2.&nbsp;It&nbsp;serves&nbsp;200&nbsp;on&nbsp;a&nbsp;\/healthz&nbsp;endpoint\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;image:&nbsp;registry.cn-hangzhou.aliyuncs.com\/google_containers\/defaultbackend:1.4\n#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;image:&nbsp;gcr.io\/google_containers\/defaultbackend:1.4\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;livenessProbe:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpGet:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path:&nbsp;\/healthz\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;port:&nbsp;8080\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scheme:&nbsp;HTTP\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;initialDelaySeconds:&nbsp;30\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timeoutSeconds:&nbsp;5\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ports:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;containerPort:&nbsp;8080\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resources:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;limits:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cpu:&nbsp;10m\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memory:&nbsp;20Mi\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;requests:\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cpu:&nbsp;10m\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memory:&nbsp;20Mi\n---\n\napiVersion:&nbsp;v1\nkind:&nbsp;Service\nmetadata:\n&nbsp;&nbsp;name:&nbsp;default-http-backend\n&nbsp;&nbsp;namespace:&nbsp;harbor\n&nbsp;&nbsp;labels:\n&nbsp;&nbsp;&nbsp;&nbsp;app:&nbsp;default-http-backend\nspec:\n&nbsp;&nbsp;ports:\n&nbsp;&nbsp;-&nbsp;port:&nbsp;80\n&nbsp;&nbsp;&nbsp;&nbsp;targetPort:&nbsp;8080\n&nbsp;&nbsp;selector:\n&nbsp;&nbsp;&nbsp;&nbsp;app:&nbsp;default-http-backend\nEOF\nkubectl&nbsp;apply&nbsp;-f&nbsp;default-http-backend.yaml<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>6\u3001\u5378\u8f7d\u91cd\u65b0\u90e8\u7f72<\/h4>\n<pre>#&nbsp;\u5378\u8f7d\nhelm&nbsp;uninstall&nbsp;myharbor&nbsp;-n&nbsp;harbor\nkubectl&nbsp;get&nbsp;pvc&nbsp;-n&nbsp;harbor|&nbsp;awk&nbsp;'NR!=1{print&nbsp;$1}'&nbsp;|&nbsp;xargs&nbsp;kubectl&nbsp;delete&nbsp;pvc&nbsp;-n&nbsp;harbor\n\n#&nbsp;\u90e8\u7f72\nhelm&nbsp;install&nbsp;myharbor&nbsp;--namespace&nbsp;harbor&nbsp;harbor\/harbor&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.ingress.hosts.core=myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.ingress.hosts.notary=notary.myharbor.com&nbsp;\n&nbsp;&nbsp;--set-string&nbsp;expose.ingress.annotations.'nginx.org\/client-max-body-size'=\"1024m\"&nbsp;\n&nbsp;&nbsp;--set&nbsp;expose.tls.secretName=myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.registry.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.jobservice.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.database.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.redis.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.trivy.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.persistentVolumeClaim.chartmuseum.storageClass=nfs-client&nbsp;\n&nbsp;&nbsp;--set&nbsp;persistence.enabled=true&nbsp;\n&nbsp;&nbsp;--set&nbsp;externalURL=https:\/\/myharbor.com&nbsp;\n&nbsp;&nbsp;--set&nbsp;harborAdminPassword=Harbor12345<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/b1e871e80a381d19658adef0c23f5bdc-26.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe25\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe25\" \/>  <\/p>\n<h4>5\u3001\u8bbf\u95ee harbor<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">https:\/\/myharbor.com<br \/>\u8d26\u53f7\/\u5bc6\u7801\uff1aadmin\/Harbor12345<br \/><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/b1e871e80a381d19658adef0c23f5bdc-27.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe26\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe26\" \/><\/p>\n<h4>6\u3001harbor \u5e38\u89c1\u64cd\u4f5c<\/h4>\n<h5>\u30101\u3011\u521b\u5efa\u9879\u76ee bigdata<\/h5>\n<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/5126b74c201a97c7c7cc542c3184569b-28.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe27\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe27\" \/>  <\/p>\n<h5>\u30102\u3011\u914d\u7f6e\u79c1\u6709\u4ed3\u5e93<\/h5>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u5728\u6587\u4ef6\/etc\/docker\/daemon.json\u6dfb\u52a0\u5982\u4e0b\u5185\u5bb9\uff1a<\/p>\n<pre>\"insecure-registries\":[\"https:\/\/myharbor.com\"]<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u91cd\u542f docker<\/p>\n<pre>systemctl&nbsp;restart&nbsp;docker<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h5>\u30103\u3011\u670d\u52a1\u5668\u4e0a\u767b\u5f55 harbor<\/h5>\n<pre>docker&nbsp;login&nbsp;https:\/\/myharbor.com\n#\u8d26\u53f7\/\u5bc6\u7801\uff1aadmin\/Harbor12345<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/5126b74c201a97c7c7cc542c3184569b-29.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe28\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe28\" \/>  <\/p>\n<h5>\u30104\u3011\u6253\u6807\u7b7e\u5e76\u628a\u955c\u50cf\u4e0a\u4f20\u5230 harbor<\/h5>\n<pre>docker&nbsp;tag&nbsp;rancher\/pause:3.6&nbsp;myharbor.com\/bigdata\/pause:3.6\ndocker&nbsp;push&nbsp;myharbor.com\/bigdata\/pause:3.6<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<h4>7\u3001\u4fee\u6539 containerd \u914d\u7f6e<\/h4>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u4ee5\u524d\u4f7f\u7528 docker-engine \u7684\u65f6\u5019\uff0c\u53ea\u9700\u8981\u4fee\u6539\/etc\/docker\/daemon.json \u5c31\u884c\uff0c\u4f46\u662f\u65b0\u7248\u7684 k8s \u5df2\u7ecf\u4f7f\u7528 containerd \u4e86\uff0c\u6240\u4ee5\u8fd9\u91cc\u9700\u8981\u505a\u76f8\u5173\u914d\u7f6e\uff0c\u8981\u4e0d\u7136 containerd \u4f1a\u5931\u8d25\u3002\u8bc1\u4e66\uff08ca.crt\uff09\u53ef\u4ee5\u5728\u9875\u9762\u4e0a\u4e0b\u8f7d\uff1a<br \/><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/1dc57918b5e59ebdca0381cec315424d-30.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe29\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe29\" \/><br \/>\u521b\u5efa\u57df\u540d\u76ee\u5f55<\/p>\n<pre>mkdir&nbsp;\/etc\/containerd\/myharbor.com\ncp&nbsp;ca.crt&nbsp;\/etc\/containerd\/myharbor.com\/<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u914d\u7f6e\u6587\u4ef6\uff1a\/etc\/containerd\/config.toml<\/p>\n<pre>[plugins.\"io.containerd.grpc.v1.cri\".registry]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;config_path&nbsp;=&nbsp;\"\"\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.auths]\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.configs]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.configs.\"myharbor.com\".tls]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ca_file&nbsp;=&nbsp;\"\/etc\/containerd\/myharbor.com\/ca.crt\"\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.configs.\"myharbor.com\".auth]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;username&nbsp;=&nbsp;\"admin\"\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;password&nbsp;=&nbsp;\"Harbor12345\"\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.headers]\n\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.mirrors]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[plugins.\"io.containerd.grpc.v1.cri\".registry.mirrors.\"myharbor.com\"]\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;endpoint&nbsp;=&nbsp;[\"https:\/\/myharbor.com\"]<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/1dc57918b5e59ebdca0381cec315424d-31.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe30\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe30\" \/><br \/>\u91cd\u542f containerd<\/p>\n<pre>#\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\nsystemctl&nbsp;daemon-reload\n#\u91cd\u542fcontainerd\nsystemctl&nbsp;restart&nbsp;containerd<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u7b80\u5355\u4f7f\u7528<\/p>\n<pre>#&nbsp;\u628adocker\u6362\u6210crictl&nbsp;\u5c31\u884c\uff0c\u547d\u4ee4\u90fd\u5dee\u4e0d\u591a\ncrictl&nbsp;pull&nbsp;myharbor.com\/bigdata\/mysql:5.7.38<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u6267\u884c crictl \u62a5\u5982\u4e0b\u9519\u8bef\u7684\u89e3\u51b3\u529e\u6cd5<\/p>\n<pre>WARN[0000]&nbsp;image&nbsp;connect&nbsp;using&nbsp;default&nbsp;endpoints:&nbsp;[unix:\/\/\/var\/run\/dockershim.sock&nbsp;unix:\/\/\/run\/containerd\/containerd.sock&nbsp;unix:\/\/\/run\/crio\/crio.sock&nbsp;unix:\/\/\/var\/run\/cri-dockerd.sock].&nbsp;As&nbsp;the&nbsp;default&nbsp;settings&nbsp;are&nbsp;now&nbsp;deprecated,&nbsp;you&nbsp;should&nbsp;set&nbsp;the&nbsp;endpoint&nbsp;instead.\nERRO[0000]&nbsp;unable&nbsp;to&nbsp;determine&nbsp;image&nbsp;API&nbsp;version:&nbsp;rpc&nbsp;error:&nbsp;code&nbsp;=&nbsp;Unavailable&nbsp;desc&nbsp;=&nbsp;connection&nbsp;error:&nbsp;desc&nbsp;=&nbsp;\"transport:&nbsp;Error&nbsp;while&nbsp;dialing&nbsp;dial&nbsp;unix&nbsp;\/var\/run\/dockershim.sock:&nbsp;connect:&nbsp;no&nbsp;such&nbsp;file&nbsp;or&nbsp;directory\"<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u8fd9\u4e2a\u62a5\u9519\u662f docker \u7684\u62a5\u9519\uff0c\u8fd9\u91cc\u6ca1\u4f7f\u7528\uff0c\u6240\u4ee5\u8fd9\u4e2a\u9519\u8bef\u4e0d\u5f71\u54cd\u4f7f\u7528\uff0c\u4f46\u662f\u8fd8\u662f\u89e3\u51b3\u597d\u70b9\uff0c\u89e3\u51b3\u65b9\u6cd5\u5982\u4e0b\uff1a<\/p>\n<pre>cat&nbsp;&nbsp;\/etc\/crictl.yaml\nruntime-endpoint:&nbsp;unix:\/\/\/run\/containerd\/containerd.sock\nimage-endpoint:&nbsp;unix:\/\/\/run\/containerd\/containerd.sock\ntimeout:&nbsp;10\ndebug:&nbsp;false\nEOF<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p style=\"margin: 0px 0px 20px;padding: 0px;max-width: 100%;clear: both;min-height: 1em;font-style: normal;font-weight: normal;text-indent: 0px;text-transform: none;text-decoration: none;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light,\">\u518d\u6b21\u62c9\u53d6\u955c\u50cf<\/p>\n<pre>crictl&nbsp;pull&nbsp;myharbor.com\/bigdata\/mysql:5.7.38<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236<br \/>\n<img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/001\/275\/013\/a0255df8201c56109a399e49230ffc35-32.png\" class=\"aligncenter\" title=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe31\" alt=\"\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u63d2\u56fe31\" \/>  <\/p>\n<p style=\"max-width:90%\">Kubernetes\uff08k8s\uff09\u6700\u65b0\u7248\u6700\u5b8c\u6574\u7248\u57fa\u7840\u73af\u5883\u90e8\u7f72+master \u9ad8\u53ef\u7528\u5b9e\u73b0\u8be6\u7ec6\u6b65\u9aa4\u5c31\u5230\u8fd9\u91cc\u4e86\uff0c\u6709\u7591\u95ee\u7684\u5c0f\u4f19\u4f34\u6b22\u8fce\u7ed9\u6211\u7559\u8a00\u54e6~<\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u8be6\u89e3 K8S \u9ad8\u53ef\u7528\u90e8\u7f72\uff0c\u8d85\u8be6\u7ec6\uff01\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e00\u3001\u524d\u8a00 \u4e8c\u3001\u57fa\u7840\u73af\u5883\u90e8\u7f72 1\uff09\u524d\u671f\u51c6\u5907\uff08\u6240\u6709\u8282\u70b9\uff09 2\uff09\u5b89\u88c5\u5bb9\u5668 docker\uff08\u6240\u6709\u8282\u70b9\uff09 3\uff09\u914d\u7f6e k8s yum \u6e90\uff08\u6240\u6709\u8282\u70b9\uff09 4\uff09\u5c06 sandbox_image \u955c\u50cf\u6e90\u8bbe\u7f6e\u4e3a\u963f\u91cc\u4e91 google_containers \u955c\u50cf\u6e90\uff08\u6240\u6709\u8282\u70b9\uff09 5\uff09\u914d\u7f6e containerd cgroup \u9a71\u52a8\u7a0b\u5e8f systemd\uff08\u6240\u6709\u8282\u70b9\uff09 6\uff09\u5f00\u59cb\u5b89\u88c5 kubeadm\uff0ckubelet \u548c kubectl\uff08master \u8282\u70b9\uff09 7\uff09\u4f7f\u7528 kubeadm \u521d\u59cb\u5316\u96c6\u7fa4\uff08master \u8282\u70b9\uff09 8\uff09\u5b89\u88c5 Pod \u7f51\u7edc\u63d2\u4ef6\uff08CNI\uff1aContainer Network Interface\uff09(master) 9\uff09node \u8282\u70b9\u52a0\u5165 k8s \u96c6\u7fa4 10\uff09\u914d\u7f6e IPVS 11\uff09\u96c6\u7fa4\u9ad8\u53ef\u7528\u914d\u7f6e 12\uff09\u90e8\u7f72 Nginx+Keepalived \u9ad8\u53ef\u7528\u8d1f\u8f7d\u5747\u8861\u5668 \u4e09\u3001k8s \u7ba1\u7406\u5e73\u53f0 dashboard \u73af\u5883\u90e8\u7f72 1\uff09dashboard \u90e8\u7f72 2\uff09\u521b\u5efa\u767b\u5f55\u7528\u6237 3\uff09\u914d\u7f6e hosts \u767b\u5f55 dashboard web [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[],"class_list":["post-16570","post","type-post","status-publish","format-standard","hentry","category-os"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/16570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=16570"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/16570\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=16570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=16570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=16570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}