一,安装要求:
1、2G内存,2个cpu,硬盘30G或更多。
2,保证网络互通。
3,可以访问外网,保证后续的pull合并使用。
4,禁止交换分区。
二,准备环境:
1,关闭安全策略:
关闭防火墙:
[root @ test]:systemctl停止firewalld
[root @ test]:systemctl禁用firewalld
关闭selinux:
[root @ test]:sed -i's / enforcing / disabled /'/ etc / selinux / config
[root @ test]:setenforce 0
关闭交换分区:
[root @ test]:swapoff -a#临时
[root @ test]:vim / etc / fatab#永久
2,添加地址解析:
vim / etc / hosts
192.168.100.145主
192.168.100.142节点1
192.168.100.144节点2
3,修改主机名:
hostnamectl设置主机名主机
hostnamectl设置主机名node1
hostnamectl设置主机名node2
4,安装基本的工具:
yum -y install wget vim lrzsz
三,所有摘要安装docker / kubeadm / kubelet(注意:所有例程)
1,安装docker
[root @ test]:wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root @ test]:yum -y安装docker-ce-18.06.1.ce-3.el7
[root @ test]:systemctl启用docker && systemctl启动docker
[root @ test]:docker --version(查看版本)
2,添加阿里云的yum源
vim /etc/yum.repos.d/kubernetes.repo
[kubernetes]
名称= Kubernetes
baseurl = https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
已启用= 1
gpgcheck = 1
repo_gpgcheck = 1
gpgkey = https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
[root @ test]:yum makecache加载
3,安装kubeadm,kubelet和kubectl(可以指定安装版本)
[root @ test]:yum install -y kubelet-1.14.0 kubeadm-1.14.0 kubectl-1.14.0
[root @ test]:systemctl启用kubelet
4,在master部署部署Kubernetes Master
[root @ test]:kubeadm init \
--apiserver-advertise-address = 192.168.100.145 \ #apiserver的IP地址
--image-repository Registry.aliyuncs.com/google_containers \
--kubernetes-version v1.14.0 \
--service-cidr = 10.1.0.0 / 16 \
--pod-network-cidr = 10.244.0.0 / 16
将加载完后提示的令牌复制保存的一个文件中后面用得到安装提示将配置做完
[root @ test]:vim token.txt
kubeadm加入192.168.100.145:6443-令牌vnq2ut.8972os24pgysikj8 \
--discovery-token-ca-cert-hash sha256:e5a627f557972a6b732213a1b2da6d96e7f55c98339c87ef68b363989e8a8a1c
[root @ test]:mkdir -p $ HOME / .kube
[root @ test]:cp -i /etc/kubernetes/admin.conf $ HOME / .kube / config
[root @ test]:chown $(id -u):$(id -g)$ HOME / .kube / config
[root @ test]:kubectl获取节点#查看到主信息
名称状态角色年龄版本
大师NotReady大师5m20s v1.14.0
安装Pod网络插件(CNI)
[root @ test]:vim kube-flannel.yml
访问将内容粘贴到上面文件中:
https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml
[root @ test]:kubectl apply -f kube-flannel.yml#(文件目录下执行或者绝对路径)
[root @ test]:kubectl get pods -n kube-system#(查看状态是否为运行)
四,加入Kubernetes节点
[root @ test]:#将复制保存的令牌执行
[root @ test]:kubectl获取节点#查看节点节点状态是否为就绪
名称状态角色年龄版本
大师Ready大师9m9s v1.14.0
node1就绪<无> 87s v1.14.0
node2就绪<无> 81s v1.14.0
五,在Kubernetes部署中创建一个pod,验证是否正常运行:
[root @ test]:kubectl创建部署nginx --image = daocloud.io / library / nginx
[root @ test]:kubectl公开部署nginx --port = 80 --type = NodePort#映射段端口
[root @ test]:kubectl get pod,svc#查看状态是否为runnig
[root @ test]:kubectl get pod,svc -o wide#查看pod的详细信息,分配到那个队列
访问地址:http:// NodeIP:Port#看到nginx初始页面代表成功