博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于k8s安装脚本方面的草稿
阅读量:4983 次
发布时间:2019-06-12

本文共 3258 字,大约阅读时间需要 10 分钟。

周六作的,

慢慢完善。

#! /usr/bin/env bashset -eset -uset -x#让此脚本可以重复执行,所以加了一些判断#使用系统的PATH环境export PATH=$(echo $PATH)function iptables_clear() {    #重置iptables    iptables -P INPUT ACCEPT    iptables -P FORWARD ACCEPT    iptables -P OUTPUT ACCEPT    iptables -t nat -P PREROUTING ACCEPT    iptables -t nat -P POSTROUTING ACCEPT    iptables -t nat -P OUTPUT ACCEPT    iptables -t mangle -P PREROUTING ACCEPT    iptables -t mangle -P OUTPUT ACCEPT    iptables -F    iptables -t nat -F    iptables -t mangle -F    iptables -X    iptables -t nat -X    iptables -t mangle -X}function root_init() {    #停止firewall防火墙,并禁止开机自启动    systemctl stop firewalld.service    systemctl disable firewalld.service    iptables_clear        #禁止selinux安全    sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config    sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/sysconfig/selinux    set +e    setenforce 0    set -e    #关闭swap交换内存,K8S强制的,不然安装会报错    swapoff -a    sed -i 's/.*swap.*/#&/' /etc/fstab    # 安装工具及加载br_netfilter, ipvs    yum install bridge-utils ipset ipvsadm -y    modprobe br_netfilter    modprobe -- ip_vs    modprobe -- ip_vs_rr    modprobe -- ip_vs_wrr    modprobe -- ip_vs_sh    modprobe -- nf_conntrack_ipv4    modprobe -- nf_conntrack_ipv6    ipvs_no=$(cat /etc/rc.local|grep ip_vs|wc -l)    if [ $ipvs_no -eq 0 ]; then        echo "modprobe br_netfilter" >> /etc/rc.local        echo "modprobe -- ip_vs" >> /etc/rc.local        echo "modprobe -- ip_vs_rr" >> /etc/rc.local        echo "modprobe -- ip_vs_wrr" >> /etc/rc.local        echo "modprobe -- ip_vs_sh" >> /etc/rc.local        echo "modprobe -- nf_conntrack_ipv4" >> /etc/rc.local        echo "modprobe -- nf_conntrack_ipv6" >> /etc/rc.local    fi        # 为k8s证书生成目录    mkdir -p /etc/kubernetes/pki/etcd    chown -R docker.docker /etc/kubernetes/pki    chmod -R 755 /etc/kubernetes/pki    #配置k8s内核参数    k8s_kernel_conf=/etc/sysctl.d/k8s.conf    if [ -e $k8s_kernel_conf ]; then        rm -f $k8s_kernel_conf    fi    cat<
$k8s_kernel_conf net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-arptables = 1 vm.swappiness=0EOF #使配置生效 sysctl -p sysctl --system #安装必须软件,将其cp到指定运行目录 yum install conntrack-tools socat -y yum localinstall /tmp/*.rpm -y # tar xf cni-plugins-amd64-v0.7.5.tgz -C /opt/cni/bin /bin/cp /usr/bin/kube* /usr/local/bin/ #所有服务都设置为开机自启动 systemctl enable kubelet #配置docker用户可以命令行的相关命令 k8s_sudoers_conf=/etc/sudoers.d/k8s_sudoers if [ -e $k8s_sudoers_conf ] then rm -f $k8s_sudoers_conf fi cat<
$k8s_sudoers_conf docker ALL=(ALL)NOPASSWD: /usr/local/bin/kubeadm, kubectl, kubelet, systemctl, service, iptables, ipvsadm, dockerEOF cat<
/etc/sysconfig/kubelet KUBELET_EXTRA_ARGS="--cgroup-driver=$DOCKER_CGROUPS --pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.1"EOF} function k8s_reset() { kubeadm reset ifconfig cni0 down ip link delete cni0 ifconfig flannel.1 down ip link delete flannel.1 rm -rf /var/lib/cni/ iptables_clear ipvsadm -C}

 

转载于:https://www.cnblogs.com/aguncn/p/10549533.html

你可能感兴趣的文章
汉字转拼音
查看>>
Python中Web框架编写学习心得
查看>>
dataTable/dataSet转换成Json格式
查看>>
asp.net core模块学习
查看>>
MySQL远程连接不上的解决方法
查看>>
如何使用JMeter从文件中提取数据
查看>>
AndroidBase基础类文档
查看>>
使用delphi 开发多层应用(十九) ios通过soap 访问kbmmw服务器
查看>>
三大特征 封装 继承 多态
查看>>
Python 3 函数分类
查看>>
通过.frm表结构和.ibd文件恢复数据
查看>>
R语言之——字符串处理函数
查看>>
架构师速成5.1-小学gtd进阶
查看>>
Spring-aop(一)
查看>>
ucos在xp平台下开发环境搭建
查看>>
python基础入门while循环 格式化 编码初识
查看>>
cmake方式使用vlfeat
查看>>
windows下用纯C实现一个简陋的imshow:基于GDI
查看>>
struts2 自定义类型转换器
查看>>
cocos2d-x xna在有vs2012和vs2010的情况下的环境部署
查看>>