栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

kubernetes安装脚本-非高可用版。一键安装含Master和Node。

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

kubernetes安装脚本-非高可用版。一键安装含Master和Node。

文章目录
    • Master:
    • Node:

Master:
#!/bin/bash
#请设置好主机名为k8s-master;并配置ip地址
echo "DNS1=223.5.5.5" >> /etc/sysconfig/network-scripts/ifcfg-eth0
echo "DNS1=223.6.6.6" >> /etc/sysconfig/network-scripts/ifcfg-eth0
echo "nameserver 223.5.5.5" >> /etc/resolv.conf
echo "nameserver 223.6.6.6" >> /etc/resolv.conf
#设置iptables
iptables -P FORWARD ACCEPT

swapoff -a
# 防止开机自动挂载 swap 分区
sed -i '/ swap / s/^(.*)$/#1/g' /etc/fstab
#关闭防火墙
x sed -ri 's#(SELINUX=).*#1disabled#' /etc/selinux/config
setenforce 0 
systemctl disable firewalld && systemctl stop firewalld

sleep 3
# 修改内核参数
cat <  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward=1
vm.max_map_count=262144
EOF
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf
#配置yum源
curl -o /etc/yum.repos.d/CentOS-base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
cat < /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
        http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum clean all && yum makecache
if [ $? -ne 0 ]
then
  exit 1 
fi
sleep 3
#安装docker以及registry
yum list docker-ce --showduplicates | sort -r && yum install docker-ce -y 

mkdir -p /etc/docker
cat << EOF > /etc/docker/daemon.json
{
  "insecure-registries": [    
    "172.21.32.15:5000" 
  ],                          
  "registry-mirrors" : [
    "https://8xpk5wnt.mirror.aliyuncs.com"
  ]
}
EOF
systemctl enable docker && systemctl start docker && systemctl status docker
if [ $? -ne 0 ]
then
  exit 1 
fi
docker run -d -p 5000:5000 --restart always -v /opt/registry-data/registry:/var/lib/registry --name registry registry:2

sleep 5
#部署k8s
#安装kubeadm,kubelet,kubectl
yum install -y kubelet-1.16.0 kubeadm-1.16.0 kubectl-1.16.0
kubeadm version
systemctl enable kubelet
if [ $? -ne 0 ]
then
  exit 1 
fi
#初始化kubeadm
kubeadm init --apiserver-advertise-address=172.16.3.57 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
if [ $? -ne 0 ]
then
  exit 1 
fi
#下载镜像文件
kubeadm config images list --config kubeadm.yaml
kubeadm config images pull --config kubeadm.yaml
if [ $? -ne 0 ]
then
  exit 1 
fi
sleep 5

kubeadm init --config kubeadm.yaml
if [ $? -ne 0 ]
then
  exit 1 
fi
sleep 5
#配置kubectl客户端的认证
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config


sleep 3
#安装flannel插件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/documentation/kube-flannel.yml

Node:
#!/bin/bash
#请设置好主机名为k8s-master;并配置ip地址
echo "DNS1=223.5.5.5" >> /etc/sysconfig/network-scripts/ifcfg-eth0
echo "DNS1=223.6.6.6" >> /etc/sysconfig/network-scripts/ifcfg-eth0
echo "nameserver 223.5.5.5" >> /etc/resolv.conf
echo "nameserver 223.6.6.6" >> /etc/resolv.conf
#设置iptables
iptables -P FORWARD ACCEPT

swapoff -a
# 防止开机自动挂载 swap 分区
sed -i '/ swap / s/^(.*)$/#1/g' /etc/fstab
#关闭防火墙
x sed -ri 's#(SELINUX=).*#1disabled#' /etc/selinux/config
setenforce 0 
systemctl disable firewalld && systemctl stop firewalld

sleep 3
# 修改内核参数
cat <  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward=1
vm.max_map_count=262144
EOF
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf
#配置yum源
rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
cat < /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
        http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum clean all && yum makecache
if [ $? -ne 0 ]
then
  exit 1 
fi
sleep 3
#安装docker以及registry
yum list docker-ce --showduplicates | sort -r && yum install docker-ce -y

mkdir -p /etc/docker
cat << EOF > /etc/docker/daemon.json
{
  "insecure-registries": [    
    "172.21.32.15:5000" 
  ],                          
  "registry-mirrors" : [
    "https://8xpk5wnt.mirror.aliyuncs.com"
  ]
}
EOF
systemctl enable docker && systemctl start docker
if [ $? -ne 0 ]
then
  exit 1 
fi
docker run -d -p 5000:5000 --restart always -v /opt/registry-data/registry:/var/lib/registry --name registry registry:2

sleep 5
#部署k8s
#安装kubeadm,kubelet,kubectl
yum install -y kubelet-1.16.0 kubeadm-1.16.0 kubectl-1.16.0
kubeadm version
systemctl enable kubelet
if [ $? -ne 0 ]
then
  exit 1 
fi
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/documentation/kube-flannel.yml
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/460180.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号