介绍 

 kubernetes和docker以及服务之间的关系

kubernetes集群包括master主机和node从机  以下放个简单的关系图 具体文档介绍地址可参考 Kubernetes教程

1.安装准备

    1.1.所有机器更新yum源

yum update -y

   1.2 所有机器 安装 epel-release源  这个软件为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux这个软件包会自动配置yum的软件仓库。

yum -y install epel-release

  1.3 所有机器关闭防火墙 关闭 swap分区 关闭 SELinux (seLinux是一个安全增强型的linux内核模块,也是linux的一个安全子系统)

#关闭防火墙
systemctl stop firewalld

#禁用开机自启动
systemctl disable firewalld

#关闭SELinux
setenforce 0  #临时关闭
 
#永久关闭selinux:
vim /etc/sysconfig/selinux
SELINUX=enforcing 替换为SELINUX=disabled 需重启机器

#关闭swap
swapoff -a  #临时关闭

#永久关闭swap
vi /etc/fstab  #注释掉最后一行关于swap的配置  可参考我的Linux分类中的其他博客

  1.4 机器准备

服务器操作系统IP需要组件
mastercentOs7192.168.33.229etcd,kube-apiserver,kube-scheduler,kube-controller-manager,docker(看个人需要)
node1centOs7192.168.33.226kube-proxy,kubelet,docker
node2centOs7192.168.33.227kube-proxy,kubelet,docker

  1.5 组件介绍:

    master主机组件:

   etcd:提供分布式数据存储的数据库吧,用于持久化存储k8s集群的配置和状态

   kube-apiserver:api service提供了http rest接口,是整个集群的入口,K8s其它组件之间不直接通信,而是通过API server通信的。(只有API server连接了etcd,即其它组件更新K8s集群的状态时,只能通过API server读写etcd中的数据)

   kube-scheduler:scheduler负责资源的调度

   kube-controller-manager:整个集群的管理控制中心,此组件里面是由多个控制器组成的

   node机器组件:

   kube-proxy:用来负载均衡网络流量

   kubelet:用来管理node节点机上的容器

   docker:运行项目镜像容器的组件

      组件具体介绍这里可以参考 官方kubernetes组件介绍

 

2.在Master机器上安装kubernetes-master和etcd

   2.1 分别修改三台服务器的 /etc/hosts 文件 增加以下ip配置

  192.168.33.229  k8s-master
  192.168.33.226  k8s-node1
  192.168.33.227  k8s-node2

   2.2 使用yum安装etcd、kubernetes-master

yum -y install etcd kubernetes-master

   2.3.编辑  vi /etc/etcd/etcd.conf 修改如下

   2.4 编辑 vi /etc/kubernetes/apiserver 修改如下

  2.5 编辑  vi /etc/kubernetes/config 修改如下

 

2.6 启动 etcd ,kube-apiserver, kube-controller-manager, kube-scheduler 等服务 并设置开机自启动

for SERVICES in etcd docker kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES ; done

 

到此 以上Master主机配置完毕 

 

3.接下来配置node从机配置

   3.1 在node1机器上安装 kubernetes-node 组件 192.168.33.226

yum -y install kubernetes-node

  3.2 编辑 /etc/sysconfig/flanneld 修改如下 (flannel暂不安装后续单独做配置 该步骤可忽略 不影响其他)

  3.3  编辑 vi /etc/kubernetes/config 修改如下

  3.4. 编辑 vi /etc/kubernetes/kubelet 修改如下

  3.5 启动 kube-proxy,kubelet, docker 等服务 并设置开机自启

for SERVICES in docker kubelet kube-proxy;do systemctl start $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES; done

node2服务器参考node1配置

至此 k8s 的主从服务器都配置完毕 

然后在master服务器上执行如下命令 查看运行的node节点机器

kubectl get nodes

成功如下

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐