k8s-最新版k8s安装(基于Centos)
目录
- 整体环境
- 安装后续用到的包
- firewalld
- iptables
- selinux
- swap
- 调整时区
- 修改内核参数
- 开启IPVS
- docker ce配置
- kubeadm、kubelet、kubectl
- 安装镜像
- Master节点初始化
- 安装CNI网络插件calico
- Node节点添加
- 参考
注意:除了Master节点初始化及Node节点添加分别在Master节点和Node节点执行外,其余所有命令均在所有节点执行
整体环境
一台master节点,多台node节点。采用了Centos 7,有网络,互相可以ping通。
安装后续用到的包
yum install -y yum-utils conntrack ntpdate ntp ipvsadm ipset jq sysstat libseccomp
firewalld
关闭firewalld
systemctl stop firewalld && systemctl disable firewalld
iptables
安装iptables,设置空表
yum -y install iptables-services && systemctl start iptables && systemctl enable iptables && iptables -F && service iptables save
selinux
关闭selinux
setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
swap
关闭分区交换
swapoff -a && sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
调整时区
调整为上海,保持集群所有节点时间一致
timedatectl set-timezone Asia/Shanghai
timedatectl set-local-rtc 0
#重启依赖于系统时间的服务
systemctl restart rsyslog
systemctl restart crond
修改内核参数
修改网桥等内核参数
cat > /etc/sysctl.d/k8s.conf <<EOF
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
net.ipv4.tcp_tw_recycle=0
vm.swappiness=0 # 禁止使用swap空间,只有当系统00M时才允许使用它
vm.overcommit_memory=1 # 不检查物理内存是否够用
vm.panic_on_oom=0 # 开启oom
fs.inotify.max_user_instances=8192
fs.inotify.max_user_watches=1048576
fs.file-max=52786963
fs.nr_open=52706963
net.ipv6.conf.all.disable_ipv6=1
net.netfilter.nf_conntrack_max=2310720
EOF
sysctl -p /etc/sysctl.d/k8s.conf
以下命令在Master节点初始化前运行也可以
modprobe br_netfilter
lsmod | grep br_netfilter
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system
开启IPVS
cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
docker ce配置
cat > /etc/docker/daemon.json <<EOF
{"exec-opts":["native.cgroupdriver=systemd"],"log-driver":"json-file","log-opts":{"max-size": "100m"},"storage-driver": "overlay2"
}
EOFmkdir -p /etc/systemd/system/docker.service.d #重启docker服务
systemctl daemon-reload && systemctl restart docker && systemctl enable docker
kubeadm、kubelet、kubectl
使用阿里云的源,你可以科学上网的话就用官网的
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
EOF
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
sudo systemctl enable --now kubelet
安装镜像
kubeadm config images pull \
--image-repository registry.cn-hangzhou.aliyuncs.com/google_containers
Master节点初始化
kubeadm init --pod-network-cidr=172.16.0.0/16 --apiserver-advertise-address=your_master_ip --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers | tee kubeadm-init.log
注意修改your_master_ip为你的master节点的ip
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
export KUBECONFIG=/etc/kubernetes/admin.conf
安装CNI网络插件calico
wget https://docs.projectcalico.org/v3.18/manifests/calico.yaml
修改为init时的网段
kubectl create -f calico.yaml
Node节点添加
在kubeadm-init.log下找到类似
kubectl join master_ip:port --token xxx --discovery-token-ca-cert-hash xxx
的命令,在Node节点运行即可。
之后,可以在master节点使用
kubectl get nodes
查看三个节点的状态
参考
Container Runtimes
Install kubeadm
Create cluster with kubeadm
calico
k8s-最新版k8s安装(基于Centos)相关推荐
- 【K8S】K8S 1.18.2安装dashboard(基于kubernetes-dashboard 2.0.0版本)
写在前面 K8S集群部署成功了,如何对集群进行可视化管理呢?别着急,接下来,我们一起搭建kubernetes-dashboard来解决这个问题. 有关K8S集群的安装可以参考<[K8S]基于单M ...
- K8s学习之yum安装
文章目录 常用命令 1.K8S的架构 K8s核心组件介绍 K8s附加组件 2.K8s安装 1.修改ip地址.主机和host域名解析 2.master安装etcd 3.master安装kubernete ...
- K8S——单master节点和基于单master节点的双master节点二进制部署(本机实验,防止卡顿,所以多master就不做3台了)
K8S--单master节点和基于单master节点的双master节点二进制部署 一.准备 二.ETCD集群 1.master节点 2.node节点 三.Flannel网络部署 四.测试容器间互通 ...
- K8S组件介绍及安装
K8S组件介绍以及安装 一.K8S组件 1. 组件作用 1.1 master组件 1.2 node组件 1.3 插件组件 1.3.1 kubeDNS 1.3.2 Dashboard(Web界面) 1. ...
- Kubernetes(K8s)集群安装部署
Kubernetes(K8s)集群安装 Kubernetes(K8s)集群安装 1 .基本环境配置 1.1.Kubernetes集群规划 1.2.基础环境配置(所有节点) 1.2.1.Host文件修改 ...
- Centos7国内环境下安装kubeadm、kubelet、kubectl并建立k8s集群、安装gitlab,测试spring boot 项目的CICD
一.建立k8s集群 1.官网安装: 安装kubeadm 安装k8s集群.安装k8s高可用集群 2.开始 1.防火墙 关闭防火墙: systemctl stop firewalld.service. 开 ...
- 二进制安装K8S - NODE 节点的安装
二进制安装K8S - NODE 节点的安装 安装系统 Linux node02 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x8 ...
- centos7 下google Kubernetes(k8s)集群安装部署
centos7 下google Kubernetes(k8s)集群安装部署 简介 安装环境 安装前准备 ECTD集群配置 命令含义: master节点配置 1.安装kubernetes和etcd 2. ...
- 【网址收藏】k8s中helm方式安装postgresql及pgadmin
k8s中helm方式安装postgresql及pgadmin 安装命令: $ helm repo add runix https://helm.runix.net/ $ helm install my ...
- 基于CentOS 7 安装Percona XtraDB Cluster(PXC) 5.7
转载来源:https://blog.csdn.net/robinson_0612/article/details/78962190 基于CentOS 7 安装Percona XtraDB Cluste ...
最新文章
- html读取url中文件,HTML5基础知识 - JavaScript API - File - 读取文件为DataURL
- tomcat日志格式中的含义
- frida 安装特定版本
- Sitecore A / B测试
- jenkins用ssh agent插件在pipeline里实现scp和远程执行命令
- (王道408考研操作系统)第二章进程管理-第二节1:调度的基本概念及分类以及进程优先级
- 用 CSS 实现元素垂直居中
- 学用NHibernate(一)
- mysql垂直分库_mysql垂直分库,水平分库,垂直分表,水平分表
- java网上购物系统_Java Web 应用教程——网上购物系统的实现
- failed shard on node [XXX], failed recovery, failure RecoveryFailedException
- python编程 从入门到实践 第五章 if语句
- 六州歌头 本周(1216-1220)部分GAN论文
- ACM——01——1003: 【入门】求任意三位数各个数位上数字的和 【运算符】
- 后端接口如何提高性能?
- flash as3_vinson_01:绘制扇形
- 代数基础 | Kronecker积
- 手工测试2年面临职场危机,3个月进阶自动化测试后,老板终于留我了...
- 设计一个类代表二维空间的一个点,设计一个类代表二维空间的一个圆。要求两个成员变量。一个是圆心,一 个是半径,提供计算面积的方法。为上述Cricle类添加一个方法,计算一个点(Point)是否在圆内
- 每日一课 | Python处理文件系统的10种方法
热门文章
- 什么是渲染? 通俗易懂的理解
- SEO培训: 《搜索引擎优化知识完全手册》
- EXCEL之VLOOKUP函数——查找、分组、排序
- json的格式是什么?json的作用是什么?json是如何传递数据的?
- MySQL | 视图
- Thingsboard之魔鬼编译,编译失败问题整理,ServerUI
- pytorch中的数据加载(dataset基类,以及pytorch自带数据集)
- Bus Hound 工具抓取串口数据(PC端抓取USB转串口数据)
- 【jitpack】android implementation 远程仓库
- 2018ICPC青岛区域赛 zoj4062 Plants vs. Zombies