当前位置: 首页 > article >正文

搭建主从服务器

任务需求

客户端通过访问 www.nihao.com 后,能够通过 dns 域名解析,访问到 nginx 服务中由 nfs 共享的首页文件,内容为:Very good, you have successfully set up the system. 各个主机能够实现时间同步,并且都开启防火墙来保证服务安装。

主机规划:

(注:上述主机均配置了本地仓库)

1.分别修改主机名和IP地址

web:

[root@localhost ~]# hostnamectl hostname web
[root@localhost ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.10.8/24 ipv4.gateway 192.168.10.2 ipv4.dns 223.5.5.5 connection.autoconnect yes
[root@localhost ~]# nmcli c up ens160

nfs:

[root@localhost ~]# hostnamectl hostname nfs
[root@localhost ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.10.9/24 ipv4.gateway 192.168.10.2 ipv4.dns 223.5.5.5 connection.autoconnect yes
[root@localhost ~]# nmcli c up ens160

dns1:

[root@localhost ~]# hostnamectl hostname dns1
[root@localhost ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.10.18/24 ipv4.gateway 192.168.10.2 ipv4.dns 223.5.5.5 connection.autoconnect yes
[root@localhost ~]# nmcli c up ens160

dns2:

[root@localhost ~]# hostnamectl hostname dns2
[root@localhost ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.10.28/24 ipv4.gateway 192.168.10.2 ipv4.dns 223.5.5.5 connection.autoconnect yes
[root@localhost ~]# nmcli c up ens160

client:

[root@localhost ~]# hostnamectl hostname client
[root@localhost ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses 192.168.10.7/24 ipv4.gateway 192.168.10.2 ipv4.dns "192.168.10.18 192.168.10.28" connection.autoconnect yes
[root@localhost ~]# nmcli c up ens160

关闭几台服务器的selinux:

[root@web ~]# sed -i 's/SELINUX=enforcing/SELINUX=Permissive/g' /etc/selinux/config

 2.配置NFS服务器

2.1安装NFS软件

[root@nfs ~]# mount /dev/sr0 /mnt/
[root@nfs ~]# dnf install nfs-utils -y

2.2启动NFS服务

[root@nfs ~]# systemctl start nfs-server
[root@nfs ~]# systemctl enable nfs-server

2.3在防火墙中放行服务

[root@nfs ~]# firewall-cmd --permanent --add-service=nfs
success
[root@nfs ~]# firewall-cmd --reload
success

2.4配置NFS服务

在nfs主机上创建共享目录,暴露给web端,并赋予写的权限(w)

[root@nfs ~]# mkdir /nfs/data -p
[root@nfs ~]# cat /etc/exports
/nfs/data 192.168.10.8(rw)
[root@nfs ~]# systemctl restart nfs-server.service 
[root@nfs ~]# showmount -e 192.168.10.9
[root@nfs ~]# chmod o+w /nfs/ -R

 3.配置web服务器

3.1安装nginx,nfs软件

[root@web ~]# mount /dev/sr0 /mnt/
[root@web ~]# dnf install nginx nfs-utils -y

 3.2在防火墙中放行服务

[root@web ~]# firewall-cmd --permanent --add-service=nfs
success
[root@web ~]# firewall-cmd --permanent --add-service=http
success
[root@web ~]# firewall-cmd --reload
success

 3.3创建nihao.conf的配置文件

[root@web ~]# cat /etc/nginx/conf.d/nihao.conf 
server {
        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        server_name www.nihao.com;
        root /var/www/nihao;
}

3.4创建nfs的挂载目录

[root@web ~]# mkdir /var/www/nihao -p

3.5执行挂载

[root@web ~]# mount -t nfs 192.168.10.9:/nfs/data /var/www/nihao/

3.6在nfs端写入www.nihao.com的首页文件

[root@nfs ~]# echo Very good, you have successfully set up the system. > /nfs/data/index.html

3.7在web端查看

[root@web ~]# cat /var/www/nihao/index.html 
Very good, you have successfully set up the system.

3.8重启nginx服务

[root@web ~]# systemctl restart nginx

 4.配置dns服务端

4.1在两台dns服务端下载dns

[root@dns1 ~]# mount /dev/sr0 /mnt/
[root@dns1 ~]# dnf install bind -y

4.2在两台dns服务端放行服务

[root@dns1 ~]# firewall-cmd --permanent --add-service=dns
success
[root@dns1 ~]# firewall-cmd --reload
success

4.3在dns1服务端修改主配置文件

[root@dns1 ~]# cat /etc/named.conf 
options {
	listen-on port 53 { 192.168.10.18; };
	directory 	"/var/named";
	allow-query     { any; };
};
zone "nihao.com" IN {
	type master;
	file "nihao.com";
};

 4.4在dns1服务端配置区域文件

[root@dns1 ~]# cat /var/named/nihao.com 
$TTL    1D
@       IN      SOA     @       admin.nihao.com. (0  1D  2H   3W  2D)
        IN      NS      ns1
        IN      NS      ns2
ns1     IN      A       192.168.10.18
ns2     IN      A       192.168.10.28
www     IN      A       192.168.10.8

4.5在dns2服务端修改主配置文件

[root@dns2 ~]# cat /etc/named.conf 
options {
        listen-on port 53 { 192.168.10.28; };
        directory       "/var/named";
};
zone "nihao.com" IN {
        type slave;
	masters { 192.168.10.18; };
        file "slaves/nihao.com";
};

4.6检查配置语句

[root@dns1 ~]# named-checkconf
[root@dns1 ~]# named-checkzone nihao.com /var/named/nihao.com
zone nihao.com/IN: loaded serial 0
OK

4.7在两台dns服务端重启服务

[root@dns1 ~]# systemctl restart named

 4.8测试dns解析

dns1:

[root@dns1 ~]# dig -t NS nihao.com @192.168.10.18
[root@dns1 ~]# dig -t A nihao.com @192.168.10.18

dns2:

[root@dns2 ~]# dig -t NS nihao.com @192.168.10.28
[root@dns2 ~]# dig -t A nihao.com @192.168.10.28

5.客户端测试

[root@client ~]# curl www.nihao.com
Very good, you have successfully set up the system.

附:

测试dns解析截图:

dns1:

dns2:


http://www.kler.cn/a/591625.html

相关文章:

  • pandas中excel自定义单元格颜色
  • 利用余弦相似度在大量文章中找出抄袭的文章
  • 深度学习框架PyTorch——从入门到精通(3)数据集和数据加载器
  • 3.5 Spring Boot邮件服务:从基础发送到模板邮件进阶
  • 国内首台太空采矿机器人亮相,宇宙资源开发迈入新阶段
  • 【Java/数据结构】ArrayList的实现及使用
  • 【linux】用SSH连接服务器进行通信
  • 北斗+多技术融合地面沉降监测:精准守护城市安全
  • 计算机网络的框架结构
  • Python+Django网页前后端rsp云端摄像头人数监控系统
  • Ubuntu连接到SSH(live server和desktop版本同样适用)适用于20-24各个版本
  • 基于ChatGPT、DeepSeek、GIS与Python机器学习的地质灾害风险评估、易发性分析、信息化建库及灾后重建
  • 设备管理VTY(Telnet、SSH)
  • Qt C++ 使用 LZ4 库压缩成 zip格式;使用 QuaZip 打包
  • IT6636: 3-IN 1-OUT HDMI 2.1 (48 Gbps) Retiming Switch with Embedded MCU
  • 将 YOLO 格式的标注文件(.txt)转换为 VOC 格式的 XML 标注文件
  • 前后端图像分类系统搭建文档
  • docker 安装mysql
  • win10搭建opengl环境搭建并测试--输出立方体球体和碗型并在球体上贴图
  • 前端项目打包构建优化