openshift/origin工作记录(6)——本地DNS服务器的创建与配置

之前在建立openshift集群时,是直接修改各个节点的/etc/hosts文件,加上静态的域名解析。当节点数量很多或者后续执行集群节点扩容时,都需要修改大量的/etc/hosts文件,很麻烦。

这里选择在本地搭建一个DNS服务器。我选择将DNS服务器部署到了Master节点上。

登录Master节点执行操作。

修改/etc/hosts配置

根据自己的实际情况配置,整合之前配置的静态域名解析。

添加dnsmasq配置

添加wildcard域名指向。创建文件/etc/dnsmasq.d/openshift-cluster.conf,内容如下:

10.126.3.207是我master的ip。

local=/example.com/
address=/.apps.example.com/10.126.3.207

启动dnsmasq服务

# systemctl start dnsmasq
# systemctl enable dnsmasq

配置iptables

sed指令如下:

# sed -i '/.*--dport 22 -j ACCEPT.*/a\-A INPUT -p tcp -m state --state NEW -m tcp --dport 53 -j ACCEPT' /etc/sysconfig/iptables
# sed -i '/.*--dport 22 -j ACCEPT.*/a\-A INPUT -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT' /etc/sysconfig/iptables

重启iptables

# systemctl restart iptables

配置Master域名解析

# nmcli con mod $(nmcli con show |grep -v docker|head -2|tail -1|awk '{print $1}') ipv4.dns $(hostname -i)
# systemctl restart NetworkManager

nmcli con show |grep -v docker|head -2|tail -1|awk '{print $1}'是拿网卡名。

hostname -i是拿ip地址。

配置各个Node节点的域名解析

  • 添加dnsmasq配置 创建文件/etc/dnsmasq.d/openshift-cluster-node.conf,内容如下: 10.126.3.207是我master的ip。server=10.126.3.207
  • 重启dnsmasq
# systemctl restart dnsmasq
# systemctl enable dnsmasq
  • 配置域名解析
# nmcli con mod $(nmcli con show |grep -v docker|head -2|tail -1|awk '{print $1}') ipv4.dns $(hostname -i)
# systemctl restart NetworkManager

测试DNS解析

在node2节点上进行测试,node2的/etc/hosts文件内容如下:

这里写图片描述

可以看出我已经删除了node2的静态域名解析。

测试

# ping master.example.com -c 3
# ping node1.example.com -c 3
# ping node2.example.com -c 3

域名解析正确。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维小白

Linux基础(day38)

10.32/10.33 rsync通过服务同步 rsync 通过服务的方式同步 要编辑配置文件/etc/rsyncd.conf 启动服务rsync --daem...

1896
来自专栏Ryan Miao

CentOS6 安装redis

1495
来自专栏云计算D1net

Docker发布集群工具SwarmKit

最近Docker公司开源了Docker集群管理和容器编排工具SwarmKit,其主要功能包括节点发现、基于raft算法的一致性和任务调度等。基本概念服务器上运行...

3556
来自专栏散尽浮华

Linux下FTP环境部署梳理(vsftpd和proftpd)

在日常运维工作中,常部署到的FTP是vsftpd和proftd。之前写了Linux下FTP虚拟账号环境部署总结,下面简单说下本地用户下的FTP环境部署过程: 简...

3747
来自专栏移动开发之家

快速将Android项目发布的JCenter

demo https://github.com/CarGuo/PublishToJcenter

952
来自专栏性能与架构

iptables示例:限制来自某一IP的并发访问

下面模拟一个iptables的应用场景 场景描述 有两台机器 A 和 B A 上运行WEB服务,B 向 A 发送大量请求 A 想限制 B 的并发数量,通过 ip...

3054
来自专栏L宝宝聊IT

MFS搭建分布式文件系统

1476
来自专栏运维小白

10.32/10.33 rsync通过服务同步

rsync 通过服务的方式同步 要编辑配置文件/etc/rsyncd.conf 启动服务rsync --daemon 格式:rsync -av test1/ 1...

21010
来自专栏云计算教程系列

加固你的服务器,防止SSH攻击

Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实...

2362
来自专栏xingoo, 一个梦想做发明家的程序员

Nodejs·理解Buffer

Node里面的Buffer其实就是用于网络请求、文件读取等等操作,而且是分配在堆外,不会占用堆内的内存,这也是因为本来V8的内存就很小,如果读取大文件,那就....

2087

扫码关注云+社区