赞
踩
K8s是一组服务器集群
K8s所管理的集群节点上的容器
+ 自我修复:如果物理机上的容器故障或者物理机宕机,k8s会自动在其他机器启动容器
+ 弹性伸缩:实时根据服务器的并发情况增加或者缩减容器数量
+ 自动部署和回滚:使用yaml文件实现自动部署
+ 服务发现和负载均衡
+ 机密和配置共享管理
+ 储存编排
+ 批处理
K8s不能直接启动容器
先部署为单master再升级多maste
三个节点(2G内存 2核CPU)
master:
主机名:k8s-master1
IP:193.168.10.63
Worker1:
主机名:k8s-node1
IP:193.168.10.65
Worker2:
主机名:k8s-node1
IP:193.168.10.66
K8s版本:1.16
安装方式:离线二进制
操作系统:centos7.7(1904)
systemctl stop firewalld
systemctl disable firewalld
先临时关闭selinux:
setenforce 0 #如果没有打印信息就代表已经关闭了
vim /etc/selinux/config #编辑这个文件 设置disabled
SELINUX=disabled
hostnamectl set-hostname k8s-master1
hostnamectl set-hostname k8s-node1
hostnamectl set-hostname k8s-node2
hostname #执行该命令确定名字改好
vim /etc/hosts #将以下内容加入各个节点机器的hosts文件
193.168.10.63 k8s-master1
193.168.10.64 k8s-master2
193.168.10.65 k8s-node1
193.168.10.66 k8s-node2
选择一个节点作为服务端 剩下的作为客户端
使用master1作为时间服务器的服务端 其他节点作为时间服务器的客户端
+++
yum install chrony
vim /etc/chrony.config
对于master节点,使用自己的时间在集群内部完成时间同步,则把所有外部的server全部注释掉,添加一个127.0.0.1
systemctl start chronyd
systemctl enable chronyd
ss -unl | grep 123
安装时间同步 -> 修改配置文件 只用指定上游服务器
systemctl start chronyd
systemctl enable chronyd
注:客户端端口无所谓 查一下时间同步
chronyc sources
^*:时间已经同步
^?:时间未同步
swapoff -a #临时关闭
实现每次开机时候交换分区都关掉:
vim /etc/fstab #删除最后一行
确认交换分区关闭: free -m
Swap: 0 0 0
所有节点和etcd通信都是基于https,则需要自签一个证书实现加密传输。
注:关于加密: 1:对称加密:用相同的密钥,在传输过程中,加密解密使用的密钥是相同的
2:非对称加密:加密解密过程中使用的是密钥对,分为公钥和私钥,发送使用公钥加密,只能使用与之对应的那一个私钥进行解密
3:单向加密:只管加密不管解密,md5等进行数据校验
CA:证书颁发机构
项目所需所有资料
链接:https://pan.baidu.com/s/15PfdIqns3PSfrWvgcwrn3A
提取码:0br6
将文件按图放置到master的家目录下
含有两个目录:
./cfssl.sh
master:
主机名:k8s-master1
IP:193.168.10.63
Worker1:
主机名:k8s-node1
IP:193.168.10.65
Worker2:
主机名:k8s-node1
IP:193.168.10.66
修改结果(注意细节):
cd ~/TSL
./generate_etcd_cert.sh
会生成两个文件,可以理解为公钥和私钥,创建好ca后ca会先给自己颁发证书,要申请证书就要携带ca的密钥
etcd的安装包在k8sFiles/etcd.tar.gz
mv etcd.service /usr/lib/systemd/system
mv etcd /opt/
也可以放到其他位置,要修改etcd.service配置文件的位置和文件加start位置
vim /opt/etcd/cfg/etcd.conf
修改结果:
使用\cp去除别名
\cp
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。