采用VMware的虚拟机虚拟化三台Centos7的系统,作为我们安装Docker的环境系统;
docker_4,docker_6,docker_8
1.下载相应的centos的版本:http://101.96.10.26/mirror.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
2.安装相应的虚拟机,但是这个过程执行完之后,发现我们的虚拟机上不了网,错误提示如下;经过分析之后得出结论是,在安装虚拟机的时候没有配置网卡选项;
重新安装的过程中选择相应的网卡即可:安装的过程选择相应的网卡即可
1.根据官方提供的文档对在centos上安装Docker,
2.首先更新当前的软件包:
yum update
输入这个命令更新你的yum源
3.添加相应的yum源到虚机中,之后就可以进行相应的yum源安装了;
[dockerrepo]
name=Docker Repository
baseurl=https://yum.docherproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject/org/gpg
4.安装Docker软件包:docker-engine
yum install -y docker-engine
启动docker守护进程:
systemctl start 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 docker
systemctl start docker
systemctl status docker.service
6.安装需求:由多个docker节点构成docker的集群,采用kubernetes的容器编排技术进行管理构成的docker集群,kubernetes是google开源的容器管理系统,实现基于Docker构建容器,利用kubernetes可以很方便的管理含有多台Docker主机中的容器,将多个docker主机抽象为一个资源,以集群方式管理容器;
节点信息:
Master:docker_4->192.168.94.129
Minion: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.service
systemctl 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.systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd
------------------------------------------
2.systemctl start etcd
systemctl enable etcd
systemctl status etcd
------------------------------------------
3.systemctl start kube-apiserver
systemctl enable kube-apiserver
systemctl status kube-apiserver
------------------------------------------
4.systemctl start kube-scheduler
systemctl enable kube-scheduler
systemctl status kube-scheduler
------------------------------------------
5.systemctl start kube-controlled-manager
systemctl enable kube-controlled-manager
systemctl status kube-controlled-manager
如果每一个服务都启动成功的话,那么显示的信息为Active:Active(running)的状态;
5.在master节点修改etcd的配置:设定minion子网的范围