<ul><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#docker">安装docker</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#kubernetes">安装kubernetes</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#k8s">配置k8s集群</a>
<ul><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#section">配置虚拟机网络</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#masterk8s-kubeadm-">配置Master节点的k8s,并使用 kubeadm 拉取镜像</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#flannel-masternode">配置内部通信 flannel 网络(master和node都要配)</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#node">配置 node节点</a></li></ul></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#ningx">部署ningx应用,测试集群</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#yaml">通过yaml部署应用</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#dashboard">部署 Dashboard</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#section-1">报错解决</a>
<ul><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#nodenotready--unable-to-update-cni-config-no-networks-found-in-etccninetd">node节点一直NotReady,报错 Unable to update cni config: no networks found in /etc/cni/net.d</a></li><li><a href="https://zhang0peter.com/2020/01/30/k8s-install-and-use-and-fix-bug/#k8s-1">拉取k8s需要的镜像</a></li></ul></li></ul>
<p>此文首发于我的个人博客:<a href="https://zhang0peter.com/">zhang0peter的个人博客</a></p>
<hr>
<p>这几天在学习K8S的安装和使用,在此记录一下</p>
<p>此文参考了视频教程:</p>
<ul><li><a href="https://www.bilibili.com/video/av57580105">两小时Kubernetes(K8S)从懵圈到熟练——大型分布式集群环境捷径部署搭建_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili</a><br> 镜像+讲义+安装包,链接:<a href="https://pan.baidu.com/s/1qO697oBuR7TwQ2J8boI3EA">https://pan.baidu.com/s/1qO697oBuR7TwQ2J8boI3EA</a> 提取码:4mvs</li><li><a href="https://www.bilibili.com/video/av49783277">1 天入门 Kubernetes/K8S_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili</a><br> docker+k8s+jenkins 视频与课件 <a href="https://pan.baidu.com/s/1ZUpqnkwp4B4fDExcVLADrg">https://pan.baidu.com/s/1ZUpqnkwp4B4fDExcVLADrg</a></li></ul>
<p>报错解决在文章最后</p>
<h2 id="docker">安装docker</h2>
<p>先安装docker:</p>
<pre class="blockcode"><code>curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt update && apt install docker-ce
docker run hello-world
</code></pre>
<h2 id="kubernetes">安装kubernetes</h2>
<p>docker成功运行后配置k8s的更新源,推荐阿里云:</p>
<pre class="blockcode"><code>echo "deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo gpg --keyserver keyserver.ubuntu.com --recv-keys BA07F4FB #对安装包进行签名
sudo gpg --export --armor BA07F4FB | sudo apt-key add -
sudo apt-get update
</code></pre>
<p>关闭虚拟内存</p>
<pre class="blockcode"><code>sudo swapoff -a #暂时关闭
nano /etc/fstab #永久关闭,注释掉swap那一行,推荐永久关闭
</code></pre>
<p>安装最新版的k8s:</p>
<pre class="blockcode"><code>apt-get install kubelet kubeadm kubectl kubernetes-cni
</code></pre>
<p>其中<code>kubeadm</code>用于初始化环境,<code>kubectl</code>用于操作<code>kubelet</code>。 设置开机启动:</p>
<pre class="blockcode"><code>sudo systemctl enable kubelet && systemctl start kubelet
</code></pre>
<p>查看<code>kubectl</code>版本:</p>
<pre class="blockcode"><code>root@ubuntu:/home/ubuntu# kubectl version
Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.2", GitCommit:"59603c6e503c87169aea6106f57b9f242f64df89", GitTreeState:"clean", BuildDate:"2020-01-18T23:30:10Z", GoVersion:"go1.13.5", Compiler:"gc", Platform:"linux/amd64"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?
</code></pre>
<h2 id="k8s">配置k8s集群</h2>
<p>刚刚已经装好一台虚拟机的k8s,现在要配置2台额外的虚拟机,总共3台,形成k8s集群。</p>
<p>推荐的做法是直接使用<code>vmware</code>自带的克隆功能,这样可以免去重装的烦恼。</p>
<p>共3台机器,分别为 master, node1, node2.</p>
<h3 id="section">配置虚拟机网络</h3>
<p>在<code>/etc/hostname</code>中配置主节点为master,node1为 node1,node2为 node2</p>
<p>配置每台机器的<code>/etc/netplan/50-cloud-init.yaml</code>,把DHCP的IP改为固定IP:</p>
<pre class="blockcode"><code>network:
ethernets:
ens33:
addresses: [192.168.32.132/24]
|
|