Kubernetes核心原理和搭建( 三 )


进入系统之后 , 使用“ifconfig”指令查看系统的ip地址 , 发现没有ip地址 , 如下图所示:
Kubernetes核心原理和搭建文章插图
没有ip地址的原因 , 查看之前2.2.8的配置步骤 , 发现已经配置了网络适配器为NAT , 那没有ip地址的原因可能就是系统在启动的时候没有加载网卡造成的 , 所以使用“vi”指令打开“/etc/sysconfig/network-scripts/ifcfg-ens33”文件 , 将其中的“ONBOOT=no”改为“ONBOOT=yes”,使用“wq”指令保存文件 , 如下图所示:
Kubernetes核心原理和搭建文章插图
修改文件之后 , 需要通过“service network restart”重启网络服务 , 之后再使用“ifconfig”指令查看 , 就会发现ip地址就有了 , 如下图所示:
Kubernetes核心原理和搭建文章插图
5.2.4 远程操作操作系统因为在操作系统的终端中直接操作指令不太方便 , 比较好的方法是使用第三方的终端模拟软件 , 比如Xshell、SecureCRT登录 , 我这里使用的是SecureCRT进行操作 。 打开SecureCRT软件 , 配置一个连接 , 连接CentOS 7操作系统 , 如下图所示:
Kubernetes核心原理和搭建文章插图
在远程连接成功之后 , 我们还需要配置CentOS 7的yum源 , 因为使用CentOS 7自带的yum源 , 在安装软件和下载依赖的时候会非常的慢 , 甚至有时候还会超时失败 , 所以这里不建议使用CentOS 7自带的yum源 , 我们可以执行如下命令 , 使用阿里云的源替换CentOS 7自带的yum源 , 如下图所示:
Kubernetes核心原理和搭建文章插图
考虑到后续我们需要安装Kubernetes集群需要各种网络 , 所以需要将防火墙关闭 , 避免因为防火墙的问题导致连网失败 , 如下图所示:
Kubernetes核心原理和搭建文章插图
在安装Kubernetes集群的时候 , 为了避免因为内存交互而影响性能以及稳定性 , 所以这里我们需要关闭Swap内存交互机制 。 使用“vi”指令打开“/etc/fstab”文件 , 将其中的swap配置注释掉 , 如下图所示:
Kubernetes核心原理和搭建文章插图
5.2.5 安装DockerKubernetes是以Docker为基础的一个全新的分布式系统架构,安装Kubernetes必须要先安装Docker , 可以参考Docker官方文档进行操作:#prerequisites
因为使用yum安装Docker的时候经常会超时失败 , 所以可以添加阿里云的Docker仓库 , 如下图所示:
Kubernetes核心原理和搭建文章插图
使用yum安装Docker最新版本 , 如下图所示:
Kubernetes核心原理和搭建文章插图
执行如下命令启动Docker并激活开机自动启动 , 如下图所示:
Kubernetes核心原理和搭建文章插图
5.3 Kubernetes集群搭建虚拟机环境我们在上边已经搭建好了 , 接下来我们就该搭建Kubernetes集群 , 我们将现在的虚拟机作为主节点 , 先安装Kubernetes , 之后再复制出两个虚拟机作为工作节点 。
5.3.1 安装Kubernetes我们可以参考Kubernetes官方文档进行安装Kubernetes , 下面是官方文档网址:, 官方仓库因为被墙的原因我们无法使用 , 所以还是使用阿里云的仓库 , 执行以下命令添加kubernetes仓库:
Kubernetes核心原理和搭建文章插图
Linux会对我们的访问进行控制 , 所以需要关闭 , 如下图所示:
Kubernetes核心原理和搭建文章插图
5.3.2 安装kubelet、kubeadm、kubectl执行以下的指令安装Kubernetes的kubelet、kubeadm、kubectl , 如下图所示:
Kubernetes核心原理和搭建文章插图
执行以下的指令配置kubelet的cgroup drive , 要和docker的cgroup drive保持一致 , 如下图所示:
Kubernetes核心原理和搭建文章插图
执行以下指令 , 启动kubelet
Kubernetes核心原理和搭建文章插图
但是启动kubelet会失败 , 因为缺少证书 , 但是不用担心 , 之后我们在执行kubeadm init命令的时候会创建证书 , 这里不启动也不影响后续的配置 。
5.3.3 下载Kubernetes的Docker镜像接下来我们需要使用Kubernetes官方提供的kubeadm工具来初始化Kubernetes集群 , 但是kubeadm init默认会访问谷歌服务器 , 使用的Docker镜像仓库是k8s.gcr.io , 国内是无法访问的 , 我们可以使用docker.io/mirrorgooglecontainers中转一下 , 所以需要执行以下命令 , 如下图所示: