51Testing软件测试论坛

标题: Docker的那些事(Kubernetes+docker) [打印本页]

作者: 天天酷派哦    时间: 2019-3-6 15:41
标题: Docker的那些事(Kubernetes+docker)
采用VMware的虚拟机虚拟化三台Centos7的系统,作为我们安装Docker的环境系统;
docker_4,docker_6,docker_8
1.下载相应的centos的版本:http://101.96.10.26/mirror.cento ... x86_64-DVD-1611.iso
2.安装相应的虚拟机,但是这个过程执行完之后,发现我们的虚拟机上不了网,错误提示如下;经过分析之后得出结论是,在安装虚拟机的时候没有配置网卡选项;

提示出现的问题


重新安装的过程中选择相应的网卡即可:安装的过程选择相应的网卡即可


选择相应的网卡


1.根据官方提供的文档对在centos上安装Docker,
2.首先更新当前的软件包:

  1. yum update
复制代码

输入这个命令更新你的yum源


跟新yum成功


3.添加相应的yum源到虚机中,之后就可以进行相应的yum源安装了;

  1. [dockerrepo]
  2. name=Docker Repository
  3. baseurl=https://yum.docherproject.org/repo/main/centos/7/
  4. enabled=1
  5. gpgcheck=1
  6. gpgkey=https://yum.dockerproject/org/gpg
复制代码

添加的yum源信息


4.安装Docker软件包:docker-engine

  1. yum install -y docker-engine
复制代码

安装成功


启动docker守护进程:

  1. systemctl start docker
复制代码

docker守护进程


5.配置docker
打开docker远程管理端口2375,配置docker hub的国内仓库:
1.新建docker的配置文件


vi /etc/sysconfig/docker在其内增加相应的配置项:DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:2375 --registry-mirror=仓库地址"仓库地址:可以申请daocloud的相应的docker国内地址即可;

2.启动docker守护进程的时候加载配置文件

  vi /lib/systemd/system/docker.servic 修改相应的配置: ExecStart=/usr/lib/dockerd $DOCKER_OPTS EnvironmentFile=-/etc/sysconfig/docker

3.重启docker守护进程

systemctl stop dockersystemctl start dockersystemctl status docker.service

docker启动状态


6.安装需求:由多个docker节点构成docker的集群,采用kubernetes的容器编排技术进行管理构成的docker集群,kubernetes是google开源的容器管理系统,实现基于Docker构建容器,利用kubernetes可以很方便的管理含有多台Docker主机中的容器,将多个docker主机抽象为一个资源,以集群方式管理容器;

节点信息:Master:docker_4->192.168.94.129Minion:docker_6->192.168.94.130       docker_8->192.168.94.131在Master节点上安装:kube-apiserver kube-scheduler kube-controller-manager;etcd节点;在Minion节点上安装:docker、kube-proxy、kubelet-node;kubernetes的角色构成:1.Pod:最小操作单元,一个pod由一个或多个容器构成,同一个pod只能运行在同一个主机上;2.Kubernetes是独立于docker存在的,安装docker之前要安装k8s软件;3.Kubernetes存在两部分的内容,其中master节点是承担管理集群中所有容器的工作;minion是容器的栖身之所;

6.1 首先我们要构造一个由三个节点构成的简单的docker集群,实现docker跨主机网络通信;Kubernetes使用的是Flannel解决的跨主机的通信问题; 在3台机器上装上docker服务,三台机器的系统为centos系统,首先应该关闭系统上的防火墙,centos系统默认是开启firewalld服务的。 在master节点是不安装docker的,这里只是管理节点;minion是工作节点,负责安装的docker,Flannel等服务,这里要清楚的知道这个区别;(集群的结构为:1master+2minion的结构部署)
6.2在三台虚拟机上关闭相应的防火墙的工作:

systemctl stop firewalld.servicesystemctl disable firewalld.service

6.3 Kubernetes的网络互联是通过flannel进行的: 安装master:

yum install -y kubernetes etcd ntp.x86_64 flannel

安装成功示意图


配置参数: 1./etc/etcd/etcd.conf:

需要修改的部分


2./etc/kubernetes/config:

需要修改的部分


3./etc/kubernetes/apiserver:

需要修改的部分


4.执行相应的开启服务操作验证安装的正确性:

  1. 1.systemctl start ntpd
  2.   systemctl enable ntpd
  3.   systemctl status ntpd
  4. ------------------------------------------
  5. 2.systemctl start etcd
  6.   systemctl enable etcd
  7.   systemctl status etcd
  8. ------------------------------------------
  9. 3.systemctl start kube-apiserver
  10.   systemctl enable kube-apiserver
  11.   systemctl status kube-apiserver
  12. ------------------------------------------
  13. 4.systemctl start kube-scheduler
  14.   systemctl enable kube-scheduler
  15.   systemctl status kube-scheduler
  16. ------------------------------------------
  17. 5.systemctl start kube-controlled-manager
  18.   systemctl enable kube-controlled-manager
  19.   systemctl status kube-controlled-manager
复制代码

如果每一个服务都启动成功的话,那么显示的信息为Active:Active(running)的状态;

启动成功



5.在master节点修改etcd的配置:设定minion子网的范围







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2