二进制部署k8s集群(1):前期准备,安装虚拟机与DNS软件bind9

前期准备工作-安装centos 7.6虚拟机

 

首先准备六台centos 7.6版本虚拟机。

六台虚拟机主机名和IP分别为:

主机名:yyee-centos-1,IP:192.168.0.101
主机名:yyee-centos-2,IP:192.168.0.102
主机名:yyee-centos-3,IP:192.168.0.103
主机名:yyee-centos-4,IP:192.168.0.104
主机名:yyee-centos-5,IP:192.168.0.105
主机名:yyee-centos-6,IP:192.168.0.106

其中 yyee-centos-1这台虚拟机用来安装GitLab、Harbor;yyee--centos-2用来安装k8s管理节点;yyee-centos-3到yyee-centos-6用来安装工作节点。

   

关闭防火墙,安装epel-release源,安装常用工具

关闭所有虚拟机的防火墙.

systemctl stop firewalld.service

 

所有虚拟机安装 epel-release 源

yum install -y epel-release

 

每台虚拟机上安装常用工具 wget,net-tools, telnet ,tree, nmap, sysstat, lrzsz, dos2unix, bind-utils

yum install -y wget net-tools telnet tree nmap sysstat lrzsz dos2unix bind-utils

 

在管理节点上安装DSN解析软件bind 9

(1) 安装bind

只需要在k8s管理节点上安装bind9软件,现在打算用 yyee-centos-2(192.168.0.102)这台主机来作为管理节点,所以只需要在 192.168.0.102这台机上安装bind9软件就可以了。

yum install -y bind

 

查看bind版本

rpm -qa bind

 

 

 版本是bind-9.11.4

 

(2) 更改bind配置文件

 

vi /etc/named.conf

 

1) 将监听地址 listen-on port 53 { 127.0.0.1; }; 改成任何地址 listen-on port 53 { any;  };  ,或改成本机 IP地址   listen-on port 53 { 192.168.0.102;  }; ,#意大括号前后各有一个空格

2) 删除listen-on-v6 port 这一行配置。

3) 把allow-query     { localhost; };  改成  allow-query     { any; };

4) 增加 forwarders       { 192.168.0.1; };  #192.168.0.1是宿主机的默认网关(虚拟机用的桥接模式);如果虚拟机用的NAT模式,这个地方填vmware的NAT8模式的网关地址。

5) 递归模式要用recursion,下面三个参数照这样设置:

recursion yes;

dnssec-enable no;
dnssec-validation no;

      (改动前)

 

  

     (改动后)

验证更改后的配置文件是否有语法错误

named-checkconf /etc/named.conf

 

    如果没有报错表示验证通过。

 

named.conf 配置文件参数说明:

options {}模块中更改如下:

#监听任意主机
listen-on port 53 { any; };

#允许dns查询的客户机列表
allow-query     { any; };

#是否允许客户机进行递归查询
recursion yes;

#表示不启用安全策略,不然无法解析外网
dnssec-enable no;
dnssec-validation no;

#forwarder转发,当值是First,默认情况下,使服务器先查询设置的forwarders,如果它没有得到回答,服务器就会自己寻找答案。如果设定的是only,服务器就只会把请求转发到其它服务器上去。
#forwarders设定转发使用的ip地址。
forward first;
forwarders { ipaddress };

注:转发服务器的查询模式必须允许递归查询(即,recursion yes;),默认递归查询是开启的。

#引用的区域配置文件,如果注释掉需要在全局配置文件中加入区域配置项
include "/etc/named.rfc1912.zones";

 

 (3)  区域配置文件修改

在 /etc/named.rfc1912.zones 文件的尾部追加主机域和业务域,

用host.com代表主机域,这个域名可以随便取名,比如:abc.com,  k8s.com 都可以。

用od.com代表业务域,这个域名可以随便取名,比如: service.com 。

zone "host.com" IN {
        type master;
        file "host.com.zone";
        allow-update { 192.168.0.102; };
};

zone "od.com" IN {
        type master;
        file "od.com.zone";
        allow-update { 192.168.0.102; };
};

 

检查主配置文件语法

named-checkconf /etc/named.conf

  

  没有报错表示语法检查正确, 报错的话说明配置有错误。

  

区域配置文件参数说明

#主机区域配置模块
zone "host.com" IN {            //指定域名
        type master;            //区域类型。hint为根区域;master为主区域; slave为辅助区域
        file "host.com.zone";  //该区域对应的区域数据配置文件名
//    allow-transfer {ipaddress;}; dns主从配置的参数,允许本区域传输至特定的从DNS服务器,(可指定多个)
     allow-update { 192.168.0.102; };    dns主从配置的参数,允许动态更新的客户端IP地址(none表示全部禁止)
}; 

#业务区域配置模块
zone "od.com" IN {    //将网段倒过来写,格式不可变
        type master;
        file "od.com.zone";
//    allow-transfer {ipaddress;}    dns主从配置的参数,允许本区域传输至特定的从DNS服务器,(可指定多个)
     allow-update { 192.168.0.102; };      dns主从配置的参数,允许动态更新的客户端IP地址(none表示全部禁止)
};

 

(4) 配置主机域数据文件

vi /var/named/host.com.zone

/var/named/host.com.zone 内容为:

$ORIGIN  host.com.
$TTL  600      ; 10 minutes
@       IN SOA   dns.host.com.  dnsadmin.host.com.  (
                                2020062401      ; serial
                                10800           ; refresh (3 hours)
                                900             ; retry (15 minutes)
                                604800          ; expire (1 week)
                                86400 )         ; minimum ( 1 day)
        NS      dns.host.com.
$TTL  60      ; 1 minutes
dns                     A       192.168.0.102
yyee-centos-1           A       192.168.0.101
yyee-centos-2           A       192.168.0.102
yyee-centos-3           A       192.168.0.103
yyee-centos-4           A       192.168.0.104
yyee-centos-5           A       192.168.0.105
yyee-centos-6           A       192.168.0.106

 注意:2020062401表示2020年6月24号第一条记录,要根据当天日期改。

注意第一句 $ORIGIN  host.com.

检查主机域文件语法

cd /var/named
named-checkzone  host.com  host.com.zone

 

 zone host.com/IN: loaded serial 2020062401

OK

没有报错表示语法正确,报错的话说明配置有错误。

 

区域数据文件参数说明:

A(Address);    域名向IP地址转换的记录
PTR:         IP地址向域名转换的记录
NS;          代表域内的dns服务器
MX:          代表域内的邮件服务区
CNAME:        域名的别名
SOA:         用于表示域内主DNS服务器

 

(5) 配置业务域数据文件

vi /var/named/od.com.zone

 /var/named/od.com.zone 文件内容为:

$ORIGIN  od.com.
$TTL  600      ; 10 minutes
@       IN SOA   dns.host.com.  dnsadmin.host.com.  (
                                2020062401      ; serial
                                10800           ; refresh (3 hours)
                                900             ; retry (15 minutes)
                                604800          ; expire (1 week)
                                86400 )         ; minimum ( 1 day)
        NS      dns.host.com.
$TTL  60      ; 1 minutes
dns                     A       192.168.0.102

 

注意:2020062401表示2020年6月24号第一条记录,要根据当天日期改。

注意第一句 $ORIGIN  od.com.

 

检查业务域文件语法

cd /var/named/
named-checkzone od.com od.com.zone

 

  zone od.com/IN: loaded serial 2020062401

OK

没有报错表示语法正确,报错的话说明配置有错误。

 

(6) 启动bind9,设置开机启动。

systemctl start named
systemctl enable named

 

  bind9启动成功。

 

如果启动named服务时出现 错误: 

Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.

说明是 /var/named/host.com.zone 或  /var/named/od.com.zone 两个配置文件有错误,请检查配置文件。

 

 (7) 验证bind9是否启动成功。

netstat -luntp | grep 53

  bind9默认用的53端口,已经启动成功。

(8) 验证 DSN是否通达

dig -t A yyee-centos-1.host.com @192.168.0.102 +short

 

 

 输出域名的IP地址,表示DSN已经通了。

修改虚拟机DNS

修改 yyee-centos-1到yyee-centos-6 虚拟机的DSN为192.168.0.102,把DNS指向bind9这台DNS服务器。

将/etc/sysconfig/network-scripts/ifcfg-ens33网络配置文件的DNS1的值改成192.168.0.102,指向bind DNS服务器。

vi /etc/sysconfig/network-scripts/ifcfg-ens33

 

  

 

   

 重启网络让改动生效

systemctl restart network

  

查看当前DNS配置

cat /etc/resolv.conf

 

 

重启network后验证DNS是否通达,ping baidu.com 是否通达,ping 虚拟机yyee-centos-2到yyee-centos-6是否通达。

ping baidu.com
ping yyee-centos-2.host.com
ping yyee-centos-3.host.com
ping yyee-centos-4.host.com
ping yyee-centos-5.host.com
ping yyee-centos-6.host.com

 

 

  

 验证自建DSN都是通达的。

配置windows宿主机可以访问虚拟机域名

让windows宿主机能在浏览器中访问虚拟机的域名,需要修改windows宿主机的首先DNS。

步骤:

本地出网的网络 > 属性 > Internet协议版本4(TCP/IPv4) > 属性 > 首选 DNS服务器地址 > 改成192.168.0.102

 

 

 

 

 

 

然后在windows的cmd窗口,ping 其中一台虚拟机域名,。

ping yyee-centos-2.host.com  #虚拟机域名
ping yyee-centos-3.host.com
ping yyee-centos-4.host.com
ping yyee-centos-5.host.com
ping yyee-centos-6.host.com
ping dns.host.com #主机域
ping dns.od.com #业务域

 

 

配置后,windows也可以ping通虚拟机域名了。

 

posted @ 2020-06-21 18:58  民工黑猫  阅读(906)  评论(0编辑  收藏  举报