Kubernetes固定Pod IP和Mac地址

方案1:

在 Calico GitHub Issues#5196 问题的 commits#6249 提交中,引入新的 Pod 注释cni.projectcalico.org/hwAddr,用于将指定的 MAC 地址分配给容器端 Veth 接口。

将Calico升级至v3.24.1或以上版本,使用如下注解轻松设置Pod IP和Mac地址。

go 复制代码
annotations:  
      cni.projectcalico.org/ipAddrs: '["10.244.3.219"]'  # 固定IP地址
      cni.projectcalico.org/hwAddr: "7e:72:f2:7a:ed:4c"     # 固定Mac地址

方案二:

配置securityContext获取网络权限后,通过postStart钩子在容器启动后修改Mac地址,解决容器网卡Mac地址固定的问题。

go 复制代码
spec:
  ...
  template:
    ...
    spec:
      containers:
        - name: myapp-test
          image: 'docker.io/library/centos:latest'
          imagePullPolicy: Always
          ports:
            - containerPort: 80
              protocol: TCP
          resources: {}
          lifecycle:
            postStart:
              exec:
                command:
                  - /bin/sh
                  - '-c'
                  - 'ifconfig eth0 hw ether 76:15:a2:d8:40:5e'
          securityContext:
            capabilities:
              add:
                - NET_ADMIN
相关推荐
dog2502 小时前
Linux 6.19 TCP 的两个极限拉扯
linux·运维·tcp/ip
lisanmengmeng3 小时前
cephfs 在k8s挂载文档
云原生·容器·kubernetes
RisunJan5 小时前
Linux命令-jwhois(查询域名和IP地址注册信息)
linux·tcp/ip
是娇娇公主~5 小时前
TCP和UDP的区别全面对比讲解
网络·tcp/ip·udp
欧洵.5 小时前
深入理解TCP协议
java·网络·tcp/ip
txinyu的博客5 小时前
TCP的可靠性问题
网络·网络协议·tcp/ip
1telescope6 小时前
MacBook 安装 nvm 管理 Node.js 多版本教程
macos·node.js
佑白雪乐6 小时前
<Linux基础第3集>清华镜像源配置+网络基础概念理解(IP地址+网卡+网关+子网掩码+DNS...)
linux·网络·tcp/ip
爱吃苹果的梨叔7 小时前
NTP 网络时间服务器硬件驯服技术说明(投标技术响应说明)
linux·运维·服务器·网络·嵌入式硬件·tcp/ip
1telescope7 小时前
MacBook 安装 Oh My Zsh 完整教程
macos·mac