安装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 集群等需要特定环境的应用。

相关推荐
勤奋的凯尔森同学2 小时前
webmin配置终端显示样式,模仿UbuntuDesktop终端
linux·运维·服务器·ubuntu·webmin
月光水岸New3 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
莫忘初心丶3 小时前
在 Ubuntu 22 上使用 Gunicorn 启动 Flask 应用程序
python·ubuntu·flask·gunicorn
希忘auto5 小时前
详解Redis在Centos上的安装
redis·centos
Bright16685 小时前
centos9安装k8s集群
云原生·容器·kubernetes
xidianjiapei0017 小时前
Kubernetes的Ingress 资源是什么?
云原生·容器·kubernetes
bugtraq202110 小时前
XiaoMi Mi5(gemini) 刷入Ubuntu Touch 16.04——安卓手机刷入Linux
linux·运维·ubuntu
土豆沒加10 小时前
K8S的Dashboard登录及验证
云原生·容器·kubernetes
终端行者12 小时前
kubernetes1.28部署mysql5.7主从同步,使用Nfs制作持久卷存储,适用于centos7/9操作系统,
数据库·容器·kubernetes
大地爱12 小时前
在Ubuntu 22.04 LTS 上安装 MySQL两种方式:在线方式和离线方式
mysql·ubuntu·adb