基于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-12-20/kubernetes 1.32版本更新解读:新特性和变化一目了然
- 2024-12-19拒绝 Helm? 如何在 K8s 上部署 KRaft 模式 Kafka 集群?
- 2024-12-16云原生周刊:Kubernetes v1.32 正式发布
- 2024-12-13Kubernetes上运行Minecraft:打造开发者平台的例子
- 2024-12-12深入 Kubernetes 的健康奥秘:探针(Probe)究竟有多强?
- 2024-12-10运维实战:K8s 上的 Doris 高可用集群最佳实践
- 2024-12-022024年最好用的十大Kubernetes工具
- 2024-12-02OPA守门人:Kubernetes集群策略编写指南
- 2024-11-26云原生周刊:K8s 严重漏洞
- 2024-11-15在Kubernetes (k8s) 中搭建三台 Nginx 服务器怎么实现?-icode9专业技术文章分享