-、背景描述

背景:在场内进行部署完成后标准版产品,打包服务器到客户现场后服务不能正常使用,因为客户现场的IP地址不能再使用场内的IP,导致部署完的产品环境在客户现场无法使用;此方案就是针对这一问题撰写的;通过创建网卡配置多个ip来实现。

描述

在机器运到客户现场后,客户配置了自己的IP之后需要按照以下操作进行;如果客户现场中没有重新配置IP可以按照实际情况进行IP的配置

二、客户IP配置

IP地址列表

主机名 客户IP 原始IP
master 暂定为(192.168.122.90) 10.130.48.78

修改网卡配置文件

配置文件在/etc/sysconfig/network-scripts/下 ####主要修改IPADDR和GATEWAY,10.130.48.78是场内部署完成时的ip,192.168.122.90为客户ip地址 ####每个节点都得修改

例如需要修改的网卡是eth0,现在需要执行命令

cp -r /etc/sysconfig/network-scripts/ifcfg-eth0  /etc/sysconfig/network-scripts/ifcfg-eth0:1
vim  /etc/sysconfig/network-scripts/ifcfg-eth0\:1

eht0默认网卡配置文件

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=eth0
UUID=ade4b6c3-e0cc-4828-b6b1-b2897c420998
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.122.90
NETWASK=255.255.255.0
GATEWAY=192.168.122.1

eth0:1修改后网卡配置文件

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=eth0:1 ####需要改成eth0:1
UUID=ade4b6c3-e0cc-4828-b6b1-b2897c420998
DEVICE=eth0:1 ####需要改成eth0:1
ONBOOT=yes
IPADDR=10.0.0.10 ####修改成场内IP
NETWASK=255.255.0.0 ###如果在场内使用的IP是1个以上的网段需要配置成255.255.0.0,则不需要做路由转发

修改完重启网卡

ifdown eth0   ifup eth0(这个命令依赖net-tools包)

验证查看是否IP地址生效

ifconfig 或者 ip addr都可以,如果有你设置的ip地址证明生效

####补充截图只是控参考,现场环境中需要按照实际为准

踩坑换完IP后docker、kubelet、etcd都能正常启动,在启动apiserverd提示报错信息如下

注意如果apiserver起不来,可以尝试把这个文件mv移走,最后把这个文件移走apiserver就能正常启动了

三、验证k8s集群

查看k8s集群pod状态

####全部为running为正常

验证重建pod

删除随便一个flannel pod查看是否能够自动创建成功   #####目前有三个节点也就是有三个flannel

删除flannel之后可以从下面截图中看出已经成功删除flannel并且成功创建flannel状态为running

验证k8s服务可用性

验证k8s服务可以访问

curl 客户IP地址:6443没有问题

k8s集权IP更换的更多相关文章

  1. 记一次服务器迁移 TFS客户端ip更换

    服务器迁移,TFS服务端IP由原10.58.8.231更换至10.58.1.230 TFS客户端更换ip操作比较复杂,请谨慎操作,避免脱库的风险!!! 打开注册表,运行->regedit 找到H ...

  2. ip更换

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  3. k8s v1.18.2 centos7 下环境搭建

    准备 服务器:3台机器--1台主.2台工作节点,可以使用virtualbox 搭建虚拟机 主机名 centos version ip docker version flannel version 主机 ...

  4. Linux下检测IP地址冲突及解决方法

    问题说明:在公司办公网内的一台物理机A上安装了linux系统(ip:192.168.9.120),在上面部署了jenkins,redmine,svn程序.由于是在办公网内,这台机器和同事电脑都是在同一 ...

  5. k8s Kubernetes v1.10 最简易安装 shell

    k8s Kubernetes v1.10 最简易安装 shell # Master 单节点快速安装 # 最简单的安装shell,只为快速部署k8s测试环境 #环境centos 7.4 #1 初始化环境 ...

  6. selenium在scrapy中的使用、UA池、IP池的构建

    selenium在scrapy中的使用流程 重写爬虫文件的构造方法__init__,在该方法中使用selenium实例化一个浏览器对象(因为浏览器对象只需要被实例化一次). 重写爬虫文件的closed ...

  7. K8S的网络接口CNI及灵雀云的实践

    K8S的网络模型 我们从底层网络来看,分为三个层面.首先是Pod之间的多个容器的网络互通.我们知道,K8S的Pod可以由多个容器组成,这个层面网络互通是比较简单的,因为所有的容器都是共享一个网卡,可以 ...

  8. Lvs IP负载均衡技术

    Lvs集群的通用结构 Lvs集群采用IP负载均衡技术,属于IP层的交换(L4),具有很好的吞吐率.调度器分析客户端到服务器的IP报头信息,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器 ...

  9. 腾讯云API弹性公网IP踩坑

    由于自己管理的云服务器数量比较多,时不时需要更换IP,在管理台上一下下点击,实在浪费时间,于是就想到了通过API调用的方式,将更换IP一系列动作,全部集成到Python代码里面,实现一行命令,完成IP ...

随机推荐

  1. java中为什么只存在值传递(以传入自定义引用类型为例)

    java中只有值传递 为什么这么说?两个例子: public class Student { int sage = 20; String sname = "云胡不归"; publi ...

  2. Kotlin协程解析系列(上):协程调度与挂起

    vivo 互联网客户端团队- Ruan Wen 本文是Kotlin协程解析系列文章的开篇,主要介绍Kotlin协程的创建.协程调度与协程挂起相关的内容 一.协程引入 Kotlin 中引入 Corout ...

  3. Word 分栏符怎么使用

    如果你使用栏来设置文档格式(如在某些新闻稿布局中),则文本将自动从一栏排列到另一栏.可以插入你自己的分栏符,以更好地控制文档格式. 单击"布局"选项卡--"页面设置&qu ...

  4. APT 安装 MySQL 提示错误:dpkg: error: dpkg frontend lock is locked by another process

    在安装 MySQL 的时候提示错误: ubuntu@VM-0-6-ubuntu:/opt$ sudo dpkg -i mysql-apt-config_0.8.22-1_all.deb dpkg: e ...

  5. Vue3中插槽(slot)用法汇总

    Vue中的插槽相信使用过Vue的小伙伴或多或少的都用过,但是你是否了解它全部用法呢?本篇文章就为大家带来Vue3中插槽的全部用法来帮助大家查漏补缺. 什么是插槽 简单来说就是子组件中的提供给父组件使用 ...

  6. javaweb-thymeleaf,加载jar包---视图基础

    1.加载完thymeleaf的jar包 将thymeleaf的jar包复制到项目下lib文件夹中 右击lib文件夹,点击Add as librarb... 打开Project Structure,找到 ...

  7. win10+Android(华为)系统原生日历同步方案+Sol日历桌面显示

    前言:本文是参考了其他博客基础上,新增了Android的免费桌面[月试图显示]功能.以及适配于上海交通大学的Canvas教学日历.方便进行多设备同步的日历管理.任务提醒. 目录 1.效果展示 2.方案 ...

  8. MYSQL 安装及语法

    Ubuntu 16.04 安装MySql 目录 一.安装MySql服务器和客户端 1.登录 2.创建数据库 3.选择数据库 4.查看数据库 5.创建数据表 6.查看数据表 7.更改数据表名字 8.更改 ...

  9. Elasticsearch: Reindex接口

    在我们开发的过程中,我们有很多时候需要用到Reindex接口.它可以帮我们把数据从一个index到另外一个index进行重新reindex.这个对于特别适用于我们在修改我们数据的mapping后,需要 ...

  10. Shell脚本中判断字符串是否被包含在内并且使用grep 精确匹配

    str1="abcdefgh" str2="def" result=$(echo $str1 | grep "${str2}") if [[ ...