k8s集群换IP

k8s集群搭建及节点加入时需要确定IP,但安装完成后设备移动到新环境可能出现网段更换或者IP被占用的情况,导致无法ping通节点或者无法打开原IP的服务。

解决方法为保持原有IP不更换,给网卡再加一个IP

这边使用两个ubuntu虚拟机模拟服务器和window主机模拟客户机

|------------|---------------|
| 机器 | IP |
| ubuntu虚拟机1 | 192.168.1.121 |
| ubuntu虚拟机2 | 192.168.1.122 |
| windows | 192.168.1.135 |

如图:

k8s集群已经在两台虚拟机上搭建完毕,使用客户机浏览器访问一下kubesphere

验证一下在上面开启的服务是否能访问

验证完毕,集群正常

然后服务器模拟搬到新环境,新环境需要的网段为172.20.10.*,但两个原IP为192.168.1.121和192.168.1.122的k8s因为IP问题将无法使用。所以需要给服务器的网卡设置第二个IP,让网络互通。预计更改如下:

|------------|------------------------------|
| 机器 | IP |
| ubuntu虚拟机1 | 192.168.1.121=>172.20.10.12 |
| ubuntu虚拟机2 | 192.168.1.122=>172.20.10.13 |
| windows | 172.20.10.11 |

如图:

接下来要对两个ubuntu网络进行更改,两台服务器分别输入

复制代码
cd /etc/netplan
ls

查看到网络配置文件为:

修改配置文件:

复制代码
vi 00-installer-config.yaml

虚拟机1原本IP为192.168.1.121,在原本的基础上修改为,设置两个IP:

复制代码
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses: [192.168.1.121/24,172.20.10.12]
      gateway4: 172.20.10.1
      nameservers:
        addresses:
        - 114.114.114.114
        - 8.8.8.8
        search: []
  version: 2

同理虚拟机2原本IP为192.168.1.122,在原本的基础上修改为,设置两个IP:

复制代码
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses: [192.168.1.122/24,172.20.10.13/24]
      gateway4: 172.20.10.1
      nameservers:
        addresses:
        - 114.114.114.114
        - 8.8.8.8
        search: []
  version: 2

记得gateway4网关改成新IP的

改完后生效一下:

复制代码
netplan apply

再看一下两个机器的IP

已经有两个IP了

但是客户机ping不通

这边要改一下虚拟机NAT网络的地址,当然正式环境服务器不是虚拟机就不需要这些操作了

我这边用的是VMware虚拟机软件,点击编辑-虚拟网络编辑器

然后点击更换配置

选择NAT模式,修改下面的子网为新环境的,所以我这边设置172.20.10.0

然后点击应用,打开终端再ping一下。通了

打开浏览器用新IP访问一下kubesphere,可以访问

再看看上面部署的服务,也可以访问

结束

相关推荐
舒一笑20 小时前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
NineData1 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
元Y亨H1 天前
华硕主机重装 Ubuntu 系统完全指南
ubuntu
梦想很大很大2 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
Sinclair2 天前
内网服务器离线安装 Nginx+PHP+MySQL 的方法
运维
叶落阁主2 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
字节逆旅3 天前
ubuntu应用深度守护
ubuntu
可观测性用观测云3 天前
云原生网关 Ingress-Nginx 链路追踪实战:OpenTelemetry 采集与观测云集成方案
nginx·kubernetes
甲鱼9293 天前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
blasit4 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip