前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >k8s中服务添加hosts及一键转换脚本

k8s中服务添加hosts及一键转换脚本

原创
作者头像
Ewdager
修改2020-07-31 10:39:17
1.1K0
修改2020-07-31 10:39:17
举报
文章被收录于专栏:Gvoidy备份小站Gvoidy备份小站

项目管理k8s集群用的是rancher,可是rancher没有提供给deployment批量添加hosts的图形化界面,所以还是只能按照k8s官方的方法修改yaml文件。

示例

使用 HostAliases 向 Pod /etc/hosts 文件添加条目

代码语言:txt
复制
apiVersion: v1
kind: Pod
metadata:
  name: hostaliases-pod
spec:
  restartPolicy: Never
  hostAliases:
  - ip: "127.0.0.1"
    hostnames:
    - "foo.local"
    - "bar.local"
  - ip: "10.1.2.3"
    hostnames:
    - "foo.remote"
    - "bar.remote"
  containers:
  - name: cat-hosts
    image: busybox
    command:
    - cat
    args:
    - "/etc/hosts"

一键转换脚本

本脚本仍需要一定的手动操作

  • 将需要修改的hosts文件改为csv格式(记得设置表头)
代码语言:txt
复制
import pandas as pd
import ruamel.yaml

data = pd.read_csv(r"hosts.csv")

ip = data.loc[:, "ip"].tolist()
hosts = data.loc[:, "hosts"].tolist()

res = {
    "hostAliases": []
}

for i in range(len(ip)):
    res_side = {
        "ip": ip[i],
        "hostnames": [hosts[i]]
    }
    res['hostAliases'].append(res_side)

with open('hosts.yaml', 'w') as f:
    yaml = ruamel.yaml.YAML()
    yaml.default_style = "\""
    yaml.dump(res, f)
    f.close()

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

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