gpt4 book ai didi

HostAliases 中的 Kubernetes 服务

转载 作者:行者123 更新时间:2023-12-02 11:30:01 26 4
gpt4 key购买 nike

是否可以在 hostAliases 下使用服务名称?在 Kubernetes 中?我想将一个不存在的域名指向服务而不是 IP。

类似于以下内容:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: deployment-name
spec:
replicas: 1
template:
spec:
containers:
hostAliases:
- ip: "my-service-name"
hostnames:
- "my.domain.com"

如果没有,你们将如何为服务的 pod 设置本地主机文件条目?我需要解决 不存在 域到服务。

最佳答案

正如@VKR 在另一条评论中解释的那样,HostAliases 基本上只是注入(inject)到/etc/hosts 中,它只允许 A-record 类型的条目。

对于 CNAME 条目,解决方法是将别名注入(inject) CoreDNS。

这可以通过编辑 CoreDNS 的 ConfiMap 来完成:

$ kubectl edit configmap coredns -n kube-system

apiVersion: v1
data:
Corefile: |
.:53 {
errors
health
rewrite name orderer0.example.com orderer0-example-com.orbix-mvp.svc.cluster.local
rewrite name peer0.example.com peer0-example-com.orbix-mvp.svc.cluster.local
kubernetes cluster.local {
pods insecure
upstream
fallthrough in-addr.arpa ip6.arpa
}
prometheus :9153
proxy . /etc/resolv.conf
cache 30
}

我添加了以 rewrite name 开头的两行一旦 CoreDNS 重新启动,新条目就可以在整个集群中使用。

可以使用以下命令重新启动 CoreDNS:
kubectl exec -n kube-system coredns-980047985-g2748 -- kill -SIGUSR1 1
以上需要为两个 CoreDNS pod 运行。

关于HostAliases 中的 Kubernetes 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54686396/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com