【最全Kubernetes容器编排安装教程】(二)

简介: 【最全Kubernetes容器编排安装教程】

设置系统默认内核

查看系统上的所有内核版本:

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

设置默认内核为我们刚才升级的内核版本

备份

cp /etc/default/grub /etc/default/grub-bak 

设置默认内核版本

grub2-set-default 0 

编辑/etc/default/grub

vi /etc/default/grub

将GRUB_DEFAULT=saved修改为GRUB_DEFAULT=0

重新创建内核配置

grub2-mkconfig -o /boot/grub2/grub.cfg

查看默认内核

grubby --default-kernel
grub2-editenv  list

效果如下:

更新软件包并重启

yum makecache
reboot

效果如下:

初始化

安装K8S之前需要对系统进行一些设置,比如 关闭防火墙,selinux,swap,设置主机名,ip解析,时间同步 。

关闭防火墙

通过ansible把三台机器的防火墙关闭,并设置开机不启动。执行如命令:

ansible k8s -m shell -a "systemctl stop firewalld"
ansible k8s -m shell -a "systemctl disable firewalld"

关闭selinux

通过ansible把三台机器的selinux永久关闭,执行如命令:

ansible k8s -m shell -a "sed -i 's/enforcing/disabled/' /etc/selinux/config"

关闭swap

执行swapoff -a 临时关闭,通过修改/etc/fstab文件实现永久关闭。执行如下命令

ansible k8s -m shell -a "sed -ri 's/.*swap.*/#&/' /etc/fstab"

修改主机名

分别对三台主机进行主机名的修改,通过图形页面直接修改更快,效果如下:

也可以执行如下的命令进行修改:

根据规划设置主机名【k8s-master节点上操作】

hostnamectl set-hostname k8s-master

根据规划设置主机名【k8s-node1节点操作】

hostnamectl set-hostname k8s-node1

根据规划设置主机名【k8s-node2节点操作】

hostnamectl set-hostname k8s-node2

修改hosts文件

在master节点上修改hosts文件,根据规划进行修改,命令如下:

sudo nano /etc/hosts 

然后添加以下内容,如下:

192.168.122.130 k8s-master1
192.168.122.131 k8s-node1
192.168.122.132 k8s-node2

保存并退出nano编辑器,命令为Ctrl+X,输入Y确认保存,按Enter键,然后可以通过ping或者ssh命令测试hostname是否生效,例如:

ping k8s-master1
ssh k8s-node1

将桥接的IPv4流量传递到iptables的链

在/etc/sysctl.d/目录上新增k8s.conf,内容如下:

# 允许桥接设备对 IPv6 进行 iptables 调用
net.bridge.bridge-nf-call-ip6tables = 1
# 允许桥接设备对 IPv4 进行 iptables 调用
net.bridge.bridge-nf-call-iptables = 1
# 开启 IPv4 转发功能
net.ipv4.ip_forward = 1

把该文件拷贝到其他两台机器上,如下:

ansible k8s -m copy -a "src=/etc/sysctl.d/k8s.conf dest=/etc/sysctl.d/k8s.conf"

执行 sysctl --system命令使配置生效,代码如下:

ansible k8s -m shell -a "sysctl --system"

配置时间同步

使用yum命令安装ntpdate,如下:

ansible k8s -m shell -a "yum install ntpdate -y"

配置NTP网络时间同步服务器地址为 ntp.aliyun.com,执行如下命令:

ansible k8s -m shell -a "ntpdate ntp.aliyun.com"

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
4月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
795 108
|
3月前
|
存储 Kubernetes 网络安全
关于阿里云 Kubernetes 容器服务(ACK)添加镜像仓库的快速说明
本文介绍了在中国大陆地区因网络限制无法正常拉取 Docker 镜像的解决方案。作者所在的阿里云 Kubernetes 集群使用的是较旧版本的 containerd(1.2x),且无法直接通过 SSH 修改节点配置,因此采用了一种无需更改 Kubernetes 配置文件的方法。通过为 `docker.io` 添加 containerd 的镜像源,并使用脚本自动修改 containerd 配置文件中的路径错误(将错误的 `cert.d` 改为 `certs.d`),最终实现了通过多个镜像站点拉取镜像。作者还提供了一个可重复运行的脚本,用于动态配置镜像源。虽然该方案能缓解镜像拉取问题,
366 2
|
3月前
|
Kubernetes Devops Docker
Kubernetes 和 Docker Swarm:现代 DevOps 的理想容器编排工具
本指南深入解析 Kubernetes 与 Docker Swarm 两大主流容器编排工具,涵盖安装、架构、网络、监控等核心维度,助您根据团队能力与业务需求精准选型,把握云原生时代的技术主动权。
290 1
|
5月前
|
NoSQL Redis Docker
使用Docker Compose工具进行容器编排的教程
以上就是使用Docker Compose进行容器编排的基础操作。这能帮你更有效地在本地或者在服务器上部署和管理多容器应用。
458 11
|
9月前
|
存储 Kubernetes 监控
K8s集群实战:使用kubeadm和kuboard部署Kubernetes集群
总之,使用kubeadm和kuboard部署K8s集群就像回归童年一样,简单又有趣。不要忘记,技术是为人服务的,用K8s集群操控云端资源,我们不过是想在复杂的世界找寻简单。尽管部署过程可能遇到困难,但朝着简化复杂的目标,我们就能找到意义和乐趣。希望你也能利用这些工具,找到你的乐趣,满足你的需求。
840 33
|
9月前
|
存储 人工智能 Kubernetes
ACK Gateway with AI Extension:面向Kubernetes大模型推理的智能路由实践
本文介绍了如何利用阿里云容器服务ACK推出的ACK Gateway with AI Extension组件,在Kubernetes环境中为大语言模型(LLM)推理服务提供智能路由和负载均衡能力。文章以部署和优化QwQ-32B模型为例,详细展示了从环境准备到性能测试的完整实践过程。
|
9月前
|
存储 运维 Kubernetes
容器数据保护:基于容器服务 Kubernetes 版(ACK)备份中心实现K8s存储卷一键备份与恢复
阿里云ACK备份中心提供一站式容器化业务灾备及迁移方案,减少数据丢失风险,确保业务稳定运行。

热门文章

最新文章

推荐镜像

更多