docker (centOS 7) 使用笔记5 - skydns

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker (centOS 7) 使用笔记5 - skydns相关的知识,希望对你有一定的参考价值。

skydns被用于kubenets作为DNS服务。本次测试是单独使用skydns作为DNS服务器,且作为loadbalance使用。

前提:需要先安装配置etcd服务 (在前面的文章里,已经安装部署了etcd服务)

 

1. 下载安装

go get github.com/skynetservices/skydns
cd ~/go/src/github.com/skynetservices/skydns
go build -v

 

2. 启动

#etcd的client URL
export ETCD_MACHINES="http://10.10.10.101:2379"
#指定监听地址为内网IP
nohup ./skydns -addr 10.10.10.101 &

 

3.测试

配置域名

# 1.api_test.skydns.local
etcdctl set /skydns/local/skydns/api_test/1 {"host":"10.10.10.102"}
# 2.api_test.skydns.local
etcdctl set /skydns/local/skydns/api_test/2 {"host":"10.10.10.103"}

添加DNS解析(/etc/resolv.conf添加一行)

nameserver 10.10.10.101

测试DNS的loadbalance能力(4级域名最左边的名称去除)

# telnet api_test.skydns.local 8080
Trying 10.10.10.102...
telnet: connect to address 10.10.10.102: Connection refused
Trying 10.10.10.103...
telnet: connect to address 10.10.10.103: Connection refused

 

可以看到telnet重试的时候使用了第二个IP

如果使用了域名全称,则指向具体的IP

# telnet 1.api_test.skydns.local 8080
Trying 10.10.10.102...
telnet: connect to address 10.10.10.102: Connection refused

 

以上是关于docker (centOS 7) 使用笔记5 - skydns的主要内容,如果未能解决你的问题,请参考以下文章

Docker 学习笔记总结

Docker 学习笔记总结

60Docker 学习笔记(CentOS 7.1)

基于Docker构建CentOS7_Java8_Tomcat8.5 的镜像及Web应用的部署

基于Docker构建CentOS7_Java8_Tomcat8.5 的镜像及Web应用的部署

Centos6.5安装和使用docker