前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kubernetes-V1.14.2 二进制编译安装(环境准备篇)

Kubernetes-V1.14.2 二进制编译安装(环境准备篇)

原创
作者头像
运维搬砖
修改2019-11-12 17:40:41
2.5K5
修改2019-11-12 17:40:41
举报
文章被收录于专栏:LeorizonLeorizon

一、操作系统环境初始化和准备工作:

1、节点规划

准备部署一个 一主两从三节点 Kubernetes集群,整体节点规划如下表所示:

主机名

IP

角色

k8s-master

192.168.189.139

k8s主节点

k8s-node-1

192.168.189.131

k8s从节点

k8s-node-2

192.168.189.132

k8s从节点

下面介绍一下各个节点的软件版本:

  • 操作系统:CentOS-7.6(1810)-64Bit
  • 内核版本:4.18.9
  • Docker版本:18.09.6-3.el7
  • Kubernetes版本:1.14.2

2、安装系统并升级内核

1、安装CentOS 7.6-64bit最小化系统,注意:在安装过程中记得设置好网络参数

IPV4: 选择手动设置地址,DNS等,可以将IPV6忽略掉

2、系统安装好后,先安装一些基础工具

代码语言:shell
复制
yum -y install bash-completion.noarch net-tools \
 vim lrzsz wget tree screen lsof tcpdump unzip tree 

3、上载先准备好的 kernel-ml-4.18.9.tar.gz

代码语言:shell
复制
tar xf  kernel-ml-4.18.9.tar.gz 
cd /tmp && yum -y install *.rpm 
sed -i 's#GRUB_DEFAULT#\#GRUB_DEFAULT#' /etc/default/grub  
sed -i '3a GRUB_DEFAULT=0' /etc/default/grub 
grub2-mkconfig -o /boot/grub2/grub.cfg 
reboot 
#重启系统查看内核版本 
uname -r   
# 版本号  4.18.9-1.el7.elrepo.x86_64 

3、系统准备和优化

代码语言:shell
复制
#关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
setenforce 0
#关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
#远程连接优化
sed -i 's#GSSAPIAuthentication yes#GSSAPIAuthentication no#g' /etc/ssh/sshd_config
sed -i 's#\#UseDNS yes#UseDNS no#g' /etc/ssh/sshd_config
##开启密码登陆
sed -i 's#PasswordAuthentication no#PasswordAuthentication yes#g' /etc/ssh/sshd_config
#开启root远程登陆
sed -i 's#PermitRootLogin without-password#PermitRootLogin yes#g' /etc/ssh/sshd_config
#重启sshd服务
systemctl restart sshd
#修改系统时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#修改配置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/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
#安装基础命令
yum -y install bash-completion.noarch net-tools vim lrzsz wget tree screen lsof tcpdump
#关闭swapp
swapoff -a
/etc/fstab swapp全部注释

# centos7 下需要给网卡建立桥接
vim /etc/sysctl.conf
vm.swappiness = 0
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
 
sysctl -p

###PS:建立桥接时文件不存在错误用 modprobe br_netfilter

4、安装docker

代码语言:shell
复制
#卸载旧版本
yum remove docker docker-client docker-client-latest docker-common \
docker-latest docker-latest-logrotate docker-logrotate docker-engine
 
#安装docker yum源
yum install -y yum-utils
yum-config-manager --add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#安装docker-ce
yum -y install docker-ce-18.06.1.ce-3.el7

# 修改配置文件(指定私有仓库,可忽略跳过)
# tee /etc/docker/daemon.json <<-'EOF'
#{
#  "storage-driver": "overlay2",
#  "registry-mirrors":["https://r2hd8p9u.mirror.aliyuncs.com"],
#  "insecure-registries":["*.*.*.*:5000","192.168.4.126"]
#}
#EOF

systemctl restart docker
systemctl enable docker && systemctl start docker

5、主机名、DNS设置、免密认证

1)设置各节点主机名

代码语言:shell
复制
hostnamectl --static set-hostname  k8s-master
hostnamectl --static set-hostname  k8s-node-1
hostnamectl --static set-hostname  k8s-node-2

2)所有节点 主机名/IP加入 hosts解析

代码语言:shell
复制
vim /etc/hosts

192.168.189.139 k8s-master
192.168.189.131 k8s-node-1
192.168.189.132 k8s-node-2

3)免密认证

代码语言:shell
复制
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys
 
scp -rp /root/.ssh k8s-node-1:/root
scp -rp /root/.ssh k8s-node-2:/root
ssh k8s-master
ssh k8s-node-1
ssh k8s-node-2

6、创建kubernetes目录

代码语言:javascript
复制
mkdir -p /app/kubernetes/{cfg,bin,ssl,log} 

至此,编译安装kubernetes 1.14.2 二进制版准备工作完成

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

========================================================================================

Kubernetes-1.14.2的源码包+kernel-ml-4.18.9.tar.gz 有百度云盘资源:

链接:https://pan.baidu.com/s/1NZW2DV64DkybD6QI42lw7Q

提取码:t5bv

========================================================================================

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档