前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Kubernetes】通过ConfigMap修改容器的DNS

【Kubernetes】通过ConfigMap修改容器的DNS

作者头像
runzhliu
发布2020-08-06 00:04:23
1.4K0
发布2020-08-06 00:04:23
举报
文章被收录于专栏:容器计算

业务容器需要在 A 集群解析 B 集群的容器,已知 B 集群的 Pod 如果重启后,IP 会变化,所以在 B 集群创建 StatefulSet,并且创建 Headless Service,A 容器通过访问 B 集群这些服务的 ServiceName 来通信,因此 A 集群容器需要在访问 B 集群 ServiceName 的时候能够解析出 IP,所以这里通过给 B 集群的 kube-dns 创建负载均衡或者内网 IP,之后将内网 IP 写入 /etc/resolv.conf 文件中,在 A 集群创建 ConfigMap,最后将其挂载给业务容器。

假设这个 ConfigMap 如下。

代码语言:javascript
复制
apiVersion: v1
data:
  resolv.conf: |
    nameserver x.xx.xxx.xxx
kind: ConfigMap
metadata:
  name: huanandns
  namespace: test

Pod 的定义如下,主要注意 volumesvolumesmountsubpath 是到文件的。

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: testcm-755976b754-pxtpt
  namespace: test
  ownerReferences:
  - apiVersion: extensions/v1beta1
    blockOwnerDeletion: true
    controller: true
    kind: ReplicaSet
    name: testcm-755976b754
spec:
  containers:
  - args:
    - "36000"
    command:
    - sleep
    image: nginx:latest
    imagePullPolicy: Always
    name: new-container-1
    resources:
      limits:
        cpu: "1"
        memory: 100Mi
      requests:
        cpu: "1"
        memory: 100Mi
    volumeMounts:
    - mountPath: /etc/resolv.conf
      name: cm
      subPath: resolv.conf
  volumes:
  - configMap:
      name: huanandns
    name: cm

Reference

  1. https://kubernetes.io/zh/docs/tasks/configure-pod-container/configure-pod-configmap/
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/06/20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Reference
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档