国產又粗又猛又爽又黄|成人天堂资源WWW在线|联通卡怎么刷钻|冰漪全棵私拍|嫩草研究所官官人口|国产日韩美女视频网站|快猫vip破解版下载新版

您好,歡迎訪問上海聚搜信息技術有限公司官方網站!

當前位置: 首頁 > 新聞資訊 > 聚搜動態

騰訊云k8s如何配置域名解析?騰訊云服務器租用多少錢?

時間:2020-06-12 09:47:07 點擊:

在應用開發中,我們不應把遠程服務的 ip 硬編碼到應用中。有些同學習慣使用域名來標定遠程服務,通過修改解析,來區分開發測試和生產環境,這是一個挺好的習慣。

在 k8s 系統中,我們使用服務名來調用服務,并通過 coredns 來進行解析。但那些集群外的服務,并且已經被硬編碼的域名如何訪問呢?
方法1:修改容器的 hosts
設想:把 hosts 文件內容存儲在 configmap 中,通過 volume 綁定到 /etc/hosts。但很不幸,/etc/hosts 被 k8s 征用了,無法修改。
但 k8s 給我們提供了 hostAliases 來解決此問題。
apiVersion: apps/v1
kind: Deployment
metadata:
name: hosts-append
labels:
app: hosts-append
spec:
replicas: 1
selector:
matchLabels:
app: hosts-append
template:
metadata:
labels:
app: hosts-append
spec:
hostAliases:
- ip: "127.0.0.1"
hostnames:
- "foo.local"
- "bar.local"
- ip: "10.1.2.3"
hostnames:
- "foo.remote"
- "bar.remote"
containers:
- image: nginx:alpine
name: hosts-append
ports:
- containerPort: 80
protocol: TCP
部署后,pod 里面的 hosts 文件已經追加了解析記錄。結果如下:
$ kubectl exec hosts-append-5576848dcf-jnt4s -- cat /etc/hosts
# Kubernetes-managed hosts file.
127.0.0.1localhost
::1localhost ip6-localhost ip6-loopback
fe00::0ip6-localnet
fe00::0ip6-mcastprefix
fe00::1ip6-allnodes
fe00::2ip6-allrouters
10.4.0.224hostbiza-5576848dcf-jnt4s
# Entries added by HostAliases.
127.0.0.1foo.localbar.local
10.1.2.3foo.remotebar.remote
此方法的缺點是:不同環境下的域名映射是不一樣的,我必須為環境編寫不同的 yaml 文件。
方法2:使用私有dns解析
k8s 內部默認已經安裝了 coredns 服務,可以通過修改 coredns 的配置來達到內部解析的目的。
coredns 的配置寫在了 configmap 的 kube-system 命名空間下的 coredns 配置節點了。只需要增加 hosts 配置節點就好。
編輯他:
kubectl edit cm -n kube-system coredns
Corefile 配置示例(其中 hosts 節點是自定義的解析節點):
.:53 {
errors
health
kubernetes cluster.local. in-addr.arpa ip6.arpa {
pods insecure
upstream
fallthrough in-addr.arpa ip6.arpa
}
hosts {
127.0.0.1foo.local
8.8.8.8foo.remote
fallthrough
}
prometheus :9153
proxy . /etc/resolv.conf
cache 30
reload
loadbalance
}
修改完成后,要等等。配置下發完成即可生效??梢赃M入 pod 內部 ping 一下域名看看。
在一般的控制臺,這個節點無法修改。但借助命令行 kubectl 或者其他可視化工具(如 Lens),可以修改這個配置節點。
至于開發環境下的域名解析,自己改本機 hosts 就好啦。
當然,更好的做法是把配置文件與應用解耦,所有的配置,包括遠程服務的域名或 ip 都可以被遠程修改。
阿里云優惠券領取
騰訊云優惠券領取

熱門文章更多>

QQ在線咨詢
售前咨詢熱線
133-2199-9693
售后咨詢熱線
4008-020-360

微信掃一掃

加客服咨詢