自定义设置BCI Pod的hosts
更新时间:2025-02-08
某些场景下,您可能需要自定义设置BCI Pod的hosts,例如拉取自建镜像仓库的镜像时,需要通过hosts明确镜像仓库的实际IP地址。本文介绍如何自定义设置BCI Pod级别的hosts(即/etc/hosts)。
配置说明
您可以通过bci.virtual-kubelet.io/pod-host-aliases 的Annotation自定义设置BCI Pod的hosts,支持传入多组IP和域名的映射关系,格式为:
Plain Text
1[{\"ip\":\"10.10.xx.xx\",\"hostnames\":[\"example.com\"]},{\"ip\":\"10.10.yy.yy\",\"hostnames\":[\"foo.com\",\"bar.com\"]}]
- Annotation请添加在Pod的metadata下,例如:创建Deployment时,Annotation需添加在spec>template>metadata下。
- 仅支持在创建BCI Pod时添加BCI相关Annotation来生效BCI功能,更新BCI Pod时添加或者修改BCI相关Annotation均不会生效。
配置示例
例如拉取自建镜像仓库的镜像时,需要通过hosts明确镜像仓库的实际IP地址时,可参考以下YAML示例:
Plain Text
1apiVersion: apps/v1
2kind: Deployment
3metadata:
4 name: nginx
5 labels:
6 app: nginx
7spec:
8 replicas: 2
9 selector:
10 matchLabels:
11 app: nginx
12 template:
13 metadata:
14 name: nginx
15 labels:
16 app: nginx
17 annotations:
18 bci.virtual-kubelet.io/pod-host-aliases: "[{\"ip\":\"10.10.xx.xx\",\"hostnames\":[\"example.com\"]}]"
19 spec:
20 containers:
21 - name: nginx
22 image: example.com/test/nginx:1.7.9
23 ports:
24 - containerPort: 80