版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
一、简单理解docker和k8s
1、docker
- docker有两句话口号:
第一句,是“Build, Ship and Run”
“搭建、发送、运行”
可以这样理解,搭建了一个房子,我把这个房子打包成一个镜像,我在其它地方要搭建一个房子,不需要重新一步一步的搭建,只需要将之前的镜像发送过来,运行即可,这样就能获得一个一模一样的房子。
- 第二句口号就是:“Build once,Run anywhere
搭建一次,到处能用
第二句是在第一句中提升出来的,搭建这个房子,只需要搭建一次,将它打包成一个镜像后,可以将它发送到一个专门管理镜像的地方,在其他地方需要搭建这个房子,只需要去下载镜像直接运行使用即可!
docker三大核心概念:
- 镜像(Image):提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一>些为运行时准备的一些配置参数(例如环境变量) | 本质就是一些命令按照固定的顺序打包在一起的一个包(只是一个固定的框架,里面的内容是固定的)
- 容器(Container):运行镜像后产生的那个东西,就比如我运行镜像后产生的这个房子,就是一个容器
- 仓库(Repository):放多个镜像的一个目录(地方)
2、k8s
k8s的全称是kubernetes,是一个基于容器的集群管理平台。
- 一个k8s系统,通常称为一个k8s集群(cluster)
包括两个部分:
- 1)一个Master 节点(主节点)
负责管理和控制 - 2)一群Node节点(计算节点)
是工作负载节点,里面是具体的容器
二、Docker+K8S 集群环境搭建
1、所有主机关闭防火墙和SELinux
# systemctl stop firewalld
# getenforce
Disabled
2、实验环境展示
IP 主机名 角色
1.1.1.1 allen1 k8s-master RHEL7
1.1.1.2 allen2 k8s-node01 RHEL7
1.1.1.3 allen3 k8s-node02 CentOS7
各集群之间必须时间同步
[root@allen1 ~]# for i in allen2 allen3;do echo $i && date;done && hostname && date
allen2
Fri May 31 11:46:46 CST 2019
allen3
Fri May 31 11:46:46 CST 2019
allen1
Fri May 31 11:46:46 CST 2019
3、配置yum源(所有节点)
allen1(master):
# cd /etc/yum.repos.d/
# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# vim /etc/yum.repos.d/kubernetes.repo
1 [kubernetes]
2 name=Kubernetes Repo
3 baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
4 gpgcheck=1
5 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
6 enabled=1
# wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
# rpm --import yum-key.gpg
# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
# rpm --import rpm-package-key.gpg
# scp docker-ce.repo kubernetes.repo allen2:/etc/yum.repos.d/
# scp docker-ce.repo kubernetes.repo allen3:/etc/yum.repos.d/
allen2和allen3(node)
# wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
# rpm --import yum-key.gpg
# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
# rpm --import rpm-package-key.gpg
4、每个节点安装相关软件
# yum install -y docker-ce kubelet kubeadm kubectl
各个节点启动docker
# systemctl daemon-reload
# systemctl start docker
# systemctl enable docker kubelet
# echo KUBELET_EXTRA_ARGS="--fail-swap-on=false" > /etc/sysconfig/kubelet
没做出来,待续!