安装k8s前置操作(Ubuntu / CentOS)

Ubuntu 系统与 CentOS/RedHat 在配置方法上有一些区别,但同样可以实现类似的功能和配置。以下是详细的步骤说明:


1. 关闭防火墙

Ubuntu 默认使用的是 ufw(Uncomplicated Firewall),而非 firewalld。关闭防火墙的操作如下:

Ubuntu:

bash 复制代码
sudo systemctl stop ufw
sudo systemctl disable ufw

如果 ufw 未启用,可以使用以下命令确认:

bash 复制代码
sudo ufw status

CentOS:

bash 复制代码
sudo systemctl stop firewalld
sudo systemctl disable firewalld

2. 关闭 SELinux

Ubuntu 默认不启用 SELinux。如果您启用了 SELinux,可以通过以下命令将其禁用:

Ubuntu:

bash 复制代码
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

CentOS:

bash 复制代码
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

注意:在 CentOS 和 Ubuntu 中,可以通过以下命令确认 SELinux 的状态:

bash 复制代码
getenforce

3. 清空 iptables 规则

Ubuntu :

在 Ubuntu 中,可以通过以下命令清空 iptables 的规则:

bash 复制代码
sudo iptables -F
sudo iptables -t nat -F

如需检查规则是否清空,可以使用:

bash 复制代码
sudo iptables -L

CentOS:

bash 复制代码
sudo iptables -F
sudo iptables -t nat -F

4. 禁用 swap 分区

Ubuntu :

临时禁用当前的 swap 分区:

bash 复制代码
sudo swapoff -a

为了永久禁用 swap,需要编辑 /etc/fstab 文件,注释掉 swap 分区的相关行:

bash 复制代码
sudo sed -i '/swap / s/^\(.*\)$/#\1/g' /etc/fstab

CentOS:

bash 复制代码
sudo swapoff -a
sudo sed -i '/swap / s/^\(.*\)$/#\1/g' /etc/fstab

5. 修改 /etc/hosts 文件

Ubuntu :

编辑 /etc/hosts 文件,添加主机名与 IP 地址的映射:

bash 复制代码
sudo nano /etc/hosts

CentOS:

bash 复制代码
sudo vi /etc/hosts

添加以下内容(根据实际 IP 地址和主机名调整):

plaintext 复制代码
172.16.200.166  master
172.16.200.167  node

保存并退出。


6. 配置主机间 SSH 免密登录

为了方便主机间的通信,设置 SSH 免密登录。

Ubuntu 和 CentOS:

  1. 在所有主机上生成 SSH 密钥对:

    bash 复制代码
    ssh-keygen -t rsa

    按提示直接回车即可。

  2. 将公钥拷贝到目标主机(例如从 master 拷贝到 node):

    bash 复制代码
    ssh-copy-id user@172.16.200.167
  3. 测试免密登录:

    bash 复制代码
    ssh user@172.16.200.167

其他注意事项

  1. 设置固定 IP 地址
    Ubuntu :

    Ubuntu 使用 netplan 进行网络配置。要设置固定 IP,可以编辑 /etc/netplan/*.yaml 文件,例如:

    yaml 复制代码
    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0:
          dhcp4: no
          addresses:
            - 192.168.1.100/24
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 8.8.4.4]

    应用配置:

    bash 复制代码
    sudo netplan apply

    CentOS :

    编辑 /etc/sysconfig/network-scripts/ifcfg-eth0 文件:

    bash 复制代码
    sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

    修改内容:

    plaintext 复制代码
    BOOTPROTO=none
    IPADDR=192.168.1.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    DNS2=8.8.4.4
    ONBOOT=yes

    重启网络服务:

    bash 复制代码
    sudo systemctl restart network
  2. 永久禁用 swap 后的验证
    Ubuntu 和 CentOS :

    禁用 swap 后,可以通过以下命令确认:

    bash 复制代码
    sudo swapon --show

    如果未显示任何 swap 分区,说明操作成功。

完成以上配置后,您的 Ubuntu 系统将具备与 CentOS/RedHat 系统类似的设置,适合用于运行如 Kubernetes 集群等需要特定环境的应用。

相关推荐
Cat_Rocky5 小时前
k8s-持久化存储,粗浅学习
java·学习·kubernetes
ILL11IIL7 小时前
k8s的pod管理及优化
云原生·容器·kubernetes
埃菲尔铁桶11 小时前
踩坑一周|OpenSandbox + AI Agent 冷启动从 2 分钟降到 1 秒,我们做了这些事
kubernetes
数智工坊11 小时前
VMware 17 Pro 中 Ubuntu 虚拟机共享 Windows 文件夹(完美踩坑版)
linux·人工智能·windows·ubuntu
小猪写代码12 小时前
壹:烧录Linux系统
linux·ubuntu
沧州刺史13 小时前
k8s 拉取镜像时,请求提前断开(EOF)导致拉取失败
云原生·容器·kubernetes
牛奶咖啡1314 小时前
k8s容器编排技术实践——k8s的介绍及其整体运行架构
云原生·kubernetes·k8s是什么?有啥用?·k8s的应用场景·k8s的优缺点边界·k8s的重要概念·k8s的整体运行架构
小坏讲微服务15 小时前
小白搭建K8S集群0基础教程实战
docker·云原生·容器·kubernetes
xingfujie16 小时前
Ubuntu K8s 1.28 kubeadm 高可用集群部署实战
linux·运维·服务器·docker·kubernetes
9命怪猫16 小时前
[K8S小白问题集] - K8S为什么选择etcd而不是别的key-value DB?比如Redis
云原生·容器·kubernetes