按照官当文档,以及大家的实践进行k8s dns 服务发现搭建还是比较简单的,但是会有一个因为系统默认dns 配置造成的一个问题
1. linux 默认dns 配置在 /etc/resolv.conf
一般来只会有几个简单的配置信息
比如: nameserver XXXXXXXXX
但是今天在阿里云服务器上进行按照的时候出现了进行dns 解析测试的pod 能够解析,但是 自己创建的pod 不能使用
很是困惑,
阿里云dns 的配置如下:
options timeout:1 attempts:1 rotate
nameserver XXXXXX
nameserver XXXXXX
问题就出在 optinons 上注释即可
2. 解决之后每个pod 直接可以进行dns service 发现使用
备注: 一个mysql 后端暴露service的处理,方便进行管理
service
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "my-service"
},
"spec": {
"ports": [
{
"protocol": "TCP",
"port": 3306,
"targetPort": 3306
}
]
}
}
endpoint
{
"kind": "Endpoints",
"apiVersion": "v1",
"metadata": {
"name": "my-service"
},
"subsets": [
{
"addresses": [
{ "ip": "XXXXXXXX" }
],
"ports": [
{ "port": 3306 }
]
}
]
}