centos7 docker 安装rancher 部署k8s
#!/bin/bash
#设置系统时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date
#同步系统时间
yum install ntpdate -y
ntpdate time.windows.com
#可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
#安装常用软件
yum install man man-pages ntp vim lrzsz zip unzip telnet perl net-tools -y
#临时停止firewall
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service
##查看防火墙状态,是否是
systemctl status firewalld.service
#关闭iptables
iptables -F
#操作系统对未知软件的安装有可能拒绝或者警告,我们需要禁用这个功能 关闭selinux
sed -r -i 's#^SELINUX=.+#SELINUX=disabled#g' /etc/selinux/config
setenforce 0
#不重启电脑,禁用启用swap,立刻生效
sudo swapoff -a
#永久禁用swap,注释掉swap项
sed -i '/^\/dev\/mapper\/centos-swap/s/^/#&/g' /etc/fstab
#性能调优 配置操作系统参数支持k8s集群
cat >> /etc/sysctl.conf<<EOF
#如果在 CentOS 使用 Docker 看到下面的这些警告信息:添加 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1
#WARNING: bridge-nf-call-iptables is disabled
#WARNING: bridge-nf-call-ip6tables is disabled
#net.bridge.bridge-nf-call-iptables=1
#net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
net.ipv4.neigh.default.gc_thresh1=4096
net.ipv4.neigh.default.gc_thresh2=6144
net.ipv4.neigh.default.gc_thresh3=8192
# 禁用内存与硬盘交换
vm.swappiness=1
# 设置虚拟内存大小
vm.max_map_count=655350
EOF
#执行如下命令生效
sysctl -p
#优化 修改文件描述符
cat >> /etc/security/limits.conf<<EOF
#线程数
* soft nproc 655350
* hard nproc 655350
#文件句柄数
* soft nofile 655350
* hard nofile 655350
#内存锁定交换
* soft menlock unlimited
* hard menlock unlimited
EOF
cat >> /etc/systemd/system.conf<<EOF
DefaultLimitNOFILE=655350
DefaultLimitNPROC=32000
DefaultLimitMEMLOCK=infinity
EOF
#Centos7 更新配置为阿里源步骤
mkdir /etc/yum.repos.d/repobak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobak
mv /etc/yum.repos.d/*.rpmnew /etc/yum.repos.d/repobak
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
yum install -y epel-release
#卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# 1.先安装yml
yum install -y yum-utils device-mapper-persistent-data lvm2
# 2.设置阿里云镜像
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 3.查看可安装的docker版本
yum list docker-ce --showduplicates | sort -r
#4. 安装docker
yum -y install docker-ce-20.10.10-3.el7
#5. 查看docker版本
docker -v
#配置开机自启动
systemctl enable docker.service
#6. 启动docker
systemctl start docker
#7. 查看docker 启动状态
systemctl status docker
#创建docker用户组
sudo groupadd docker
#将当前用户加入docker用户组
sudo usermod -aG docker $USER
#dokcer配置加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://oqbdfm43.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
#创建Rancher挂载目录
mkdir -p /data/rancher_home/rancher
mkdir -p /data/rancher_home/auditlog
#部署Rancher
docker run -d --privileged --restart=unless-stopped -p 80:80 -p 443:443 \
-v /data/rancher_home/rancher:/var/lib/rancher \
-v /data/rancher_home/auditlog:/var/log/auditlog \
-v /etc/localtime:/etc/localtime \
--name rancher rancher/rancher:v2.5.7
进入web界面
点击添加集群
3个全选,静静等待就好了