基于Centos7 部署kubernetes实践
2021/8/12 7:36:30
本文主要是介绍基于Centos7 部署kubernetes实践,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Centos7
- Linux 5.4.138-1.el7.elrepo.x86_64
docker
- 20.10.8
Kubernetes
- v1.21.3
- flannel v0.14.0
nodes
- master | 192.168.181.135 | 2core2g
- node1 | 192.168.181.136 | 2core4g
- node2 | 192.168.181.137 | 2core4g
目录- 一.Centos系统优化
- 1.更换yum源
- 2.配置静态ip
- 3.配置hostname
- 4.配置ssh互信
- 5..升级内核
- 6.脚本运行-> set_env.sh
- 二.docker安装
- 三.kubernetes安装
- 一.Centos系统优化
一.Centos系统优化
1.更换yum源
首先在国内镜像源,如华为源下载个Centos7的minimal iso镜像,安装后,先更换为阿里云的国内yum源。
# 备份原系统的yum源 cd /etc/yum.repo.d mkdir bak mv *.repo bak/ # 下载阿里云的yum源 yum install -y wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache yum update yum upgrade # 新装的server没有ifconfig命令 yum install -y net-tools
2.配置静态ip
本实验基于NAT
模式新建三台虚拟机,以master节点为例,其他从节点类似。
# 查看网卡 -> 通常是 ens33 ifconfig | ip addr # 修改配置文件 cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak vi /etc/sysconfig/network-scripts/ifcfg-ens33 ---修改后--- BOOTPROTO="static" NAME="ens33" DEVICE="ens33" ONBOOT="yes" IPADDR=192.168.181.135 NETMASK=255.255.255.0 GATEWAY=192.168.181.2 DNS1=114.114.114.114 ----------- # 重启网卡 service network restart ifconfig | ip addr
3.配置hostname
永久修改主机名,以master为例,其他类似。
# master节点,node1 node2同样设置hostname hostnamectl set-hostname master # exit 后重新 login # 修改hosts文件,追加模式 cat >> /etc/hosts << EOF > 192.168.181.135 master > 192.168.181.136 node1 > 192.168.181.137 node2 > EOF # 分发hosts文件,输入密码后确认 scp /etc/hosts node1:/etc/hosts scp /etc/hosts node2:/etc/hosts
4.配置ssh互信
在master节点上配置,然后分发即可
# 生成公私钥,一路回车 ssh-keygen # 分发,不指定公钥默认用 /root/.ssh/id_rsa.pub ssh-copy-id root@node1 ssh-copy-id root@node2 # 验证ssh互信,首次选择yes ssh node1 ssh node2
5..升级内核
Centos7的kernel版本为3.10,运行docker和k8s的时候,会出错,升级较新版本的kernel。
# 查看内核信息 uname -rs # elrepo pub key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # install elrepo, choose u own version yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm # 查看内核版本 yum --disablerepo="*" --enablerepo="elrepo-kernel" list available # 安装内核 lt代表long term 长期支持版本 yum --disablerepo='*' --enablerepo=elrepo-kernel install kernel-lt # 查看配置 awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg # 0 : CentOS Linux (4.4.186-1.el7.elrepo.x86_64) 7 (Core) # 1 : CentOS Linux (3.10.0-957.27.2.el7.x86_64) 7 (Core) # 2 : CentOS Linux (3.10.0-957.21.3.el7.x86_64) 7 (Core) # 默认用更新的内核,重启主机 grub2-set-default 0 && reboot
6.脚本运行-> set_env.sh
#!/bin/bash # 1.配置国内源 cd /etc/yum.repo.d mkdir bak mv *.repo bak/ yum install -y wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache yum update yum upgrade yum install -y net-tools # 2.配置静态IP cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak cat > /etc/sysconfig/network-scripts/ifcfg-ens33 << EOF BOOTPROTO="static" NAME="ens33" DEVICE="ens33" ONBOOT="yes" IPADDR=192.168.181.135 NETMASK=255.255.255.0 GATEWAY=192.168.181.2 DNS1=114.114.114.114 EOF service network restart # 3.配置hostname,手动分发hosts文件 hostnamectl set-hostname master cat >> /etc/hosts << EOF 192.168.181.135 master 192.168.181.136 node1 192.168.181.137 node2 EOF # 4.ssh互信参考上面,下同 # 5.升级内核
二.docker安装
三.kubernetes安装
这篇关于基于Centos7 部署kubernetes实践的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-05基于Kubernetes的自定义AWS云平台搭建指南
- 2024-11-05基于Kubernetes Gateway API的现代流量管理方案
- 2024-11-05在Kubernetes上部署你的第一个应用:Nginx服务器
- 2024-11-05利用拓扑感知路由控制Kubernetes中的流量
- 2024-11-05Kubernetes中的层次命名空间:更灵活的资源管理方案
- 2024-11-055分钟上手 Kubernetes:精简实用的 Kubectl 命令速查宝典!
- 2024-10-30K8s 容器的定向调度与亲和性
- 2024-10-28云原生周刊:K8s未来三大发展方向 丨2024.10.28
- 2024-10-25亚马逊弹性Kubernetes服务(EKS)实战:轻松搭建Kubernetes平台
- 2024-10-22KubeSphere 最佳实战:Kubernetes 部署集群模式 Nacos 实战指南