Linux——综合实验

要求

  1. 按照上面的架构部署一个简单的web节点
  2. 所有的服务器使用DNS服务器作为自己的DNS服务器
    1. 就是/etc/reslov.conf 中nameserver的值必须是途中dns服务器的地址
  3. 所有的数据库都是用mysql应用 
  4. nfs共享导出在客户端(web服务器上)使用autofs在自动挂载,或者写入/etc/fstab 保证共享的数据对于web服务持续可用 (注意权限)
  5. 两个从节点的配置选择自己可以实现的方式就好

一、搭建三台虚拟机

web

192.168.1.130

从1

dns

192.168.1.134

从2

Nfs

192.168.1.133

二、配置dns

2.1安装DNS软件 

yum -y install unbound

2.2启动DNS服务 

systemctl enable --now unbound

2.3防火墙放行DNS服务 

firewall-cmd --add-service=dns --permanent

firewall-cmd --reload

2.4修改配置文件

vim /etc/unbound/unbound.conf

2.5添加自定义解析

2.6打开指定DNS配置文件

vim /etc/resolv.conf

2.7遇到错误

2.7.1.存在53端口占用

解决办法:停止其他端口

2.7.2.配置文件语法格式错误

2.8验证

[root@client ~]# dig -x 192.168.1.130

[root@client ~]# dig -x 192.168.1.134

[root@client ~]# dig -t a ax1.test.com.

[root@client ~]# dig -t a ax2.test.com.

2.9在其他节点设置dns

在主节点设置dns

[root@server ~]# vim /etc/resolv.conf

验证

在第二从节点设置dns

[root@client ~]# vim /etc/resolv.conf

验证

三、设置NFS服务器

3.1配置共享目录

下载

[root@client ~]# yum install nfs-utils rpcbind

创建共享目录/share_nfs

mkdir /share_nfs

创建一个只做nfs的用户

useradd -M -s /sbin/nologin -u 1111 nfs

编辑nfs配置文件 设置允许ip

vim /etc/exports

更改属主

chown 1111 /share_nfs/ -R

启动nfs服务

systemctl start nfs-server.service

配置防火墙策略

firewall-cmd --add-service=nfs --permanent

firewall-cmd --permanent --add-service=rpc-bind

firewall-cmd --permanent --add-service=mountd

firewall-cmd --reload

3.2 配置主服务器

安装自动挂载服务

yum -y install autofs.x86_64

编辑自动挂载父目录配置文件

vim /etc/auto.master

安装自动挂载服务

yum -y install autofs.x86_64

编辑自动挂载父目录配置文件

vim /etc/auto.master

编辑自动挂载子目录配置文件

vim /etc/auto.misc

启动服务

systemctl restart autofs.service

查看挂载

df -h

四、配置数据库主从同步

4.1安装

三台服务器上都把MySQL数据库安装好

yum -y install mysql*

4.2配置

编辑主服务器配置文件

vim /etc/my.cnf.d/mysql-server.cnf

三台都启动

systemctl enable --now mysqld.service

登录主节点数据库

mysql -u root

创建一个用户用来做主从同步

CREATE USER root@’192.168.1.%’ IDENTIFIED BY 'Redhat12~';

赋予root用户replication slave 权限

GRANT REPLICATION SLAVE ON . TO root@’192.168.1.%’;

展示主节点状态

从节点同步主节点二进制文件

CHANGE MASTER TO

-> MASTER_HOST='wangA.wld.com', //主节

点地址

-> MASTER_USER='replica

user',MASTER_PASSWORD='Redhat1~',

-> MASTER_LOG_FILE='source-bin.000004',

//二进制文件名

-> MASTER_LOG_POS=157,

//上图的position

-> GET_MASTER_PUBLIC_KEY=1;

//一种加密

防火墙放行MySQL

firewall-cmd --add-service=mysql --permanent

firewall-cmd --reload

4.3验证

重启线程

stop slave;

start slave;

show slave status\G

五、配置WEB服务

5.1安装

进入主服务器

安装web服务

yum -y install httpd php php-fpm

配置防火墙

firewall-cmd --add-service=http

firewall-cmd --add-service=http --permanent

启动服务

systemctl enable --now php-fpm.service httpd.service

5.2 挂载

更改挂载目录位置

vim /etc/auto.master

vim /etc/auto.misc

重启服务

systemctl restart autofs.service

自动挂载成功

5.3配置2号服务器 

下载git工具

yum -y install git-core.x86_64

使用git拉取Discuzx应用

git clone https://gitee.com/Discuz/DiscuzX.git

将其复制到共享目录下

cp -rf DiscuzX/upload/ /share_nfs/luntan

进入主服务器看看有没有

ll /var/www/html/

更改属主

chown -R apache share_nfs/luntan/

5.4 返回主服务器

为我们的应用创建一个库,和用户

下载一个交互工具

yum -y install php-mysqlnd

编辑一个数据库连接脚本,测试数据库是否能正常连接

vim /var/www/html/db_con.php

修改布尔值

setsebool  -P  httpd_use_nfs  1

setsebool  -P  httpd_can_network_connect 1

5.5验证

访问论坛安装页面

主数据库

从数据库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/675593.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

free5gc+ueransim配置

ueransim已完成配置,可以观察到在make后,ueransim的build下生成以下几个文件 nr-gnb-------------5G gnb(RAN)的主要可执行文件 nr ue---------------5G ue的主要可执行文件 nr-cli---------------5G gNB和UE的cli工具 nr-binder-…

基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

品深茶的抗癌功能是否涉及虚假宣传?

品深茶说到底,本质还是中国传统茶叶,茶叶本就是一种含有多种成分的饮品,包括茶多酚、生物碱、氨基酸、有机酸等。这些成分对人体有一定的益处,如抗氧化、抗炎、抗菌等作用。 一些研究表明,茶叶中的某些成分如茶多酚、…

46. UE5 RPG 实现角色死亡效果

在上一篇文章中,我们实现了敌人受到攻击后会播放受击动画,并且还给角色设置了受击标签。并在角色受击时,在角色身上挂上受击标签,在c里,如果挂载了此标签,速度将降为0 。 受击有了,接下来我们将…

从零开始的软件测试学习之旅(六)测试网络基础知识

测试网络基础知识 HTTP和HTMLURLDNS客户端和服务器请求方法和状态码面试高频Fiddler抓包工具教学弱网 HTTP和HTML 概念 html: HyperText Markup Language 超文本标记语言 http: HyperText Transfer Protocol 超文本传输协议 超文本: 图片, 音频, 视频 关系:http 可以对 html 的…

谷歌推出10门免费AI课程,无需教科书及费用

谷歌面向小白以及开发者分别推出了不同的AI课程~ 包含初级、中级和高级。课程章节大致包括:(含教学视频、参考材料、测验) 基础入门:45分钟深入了解生成式AI 简单实操:30分钟掌握大语言模型 了解如何释放生成式 AI S…

SparkSQL优化

SparkSQL优化 优化说明 缓存数据到内存 Spark SQL可以通过调用spark.sqlContext.cacheTable("tableName") 或者dataFrame.cache(),将表用一种柱状格式( an inmemory columnar format)缓存至内存中。然后Spark SQL在执行查询任务…

JAVA中的线程、死锁、异常

线程 Thread 一、程序 1.一段静态代码(静态) 二、进程 1.动态的,有开始,有结束;2.程序的一次执行过程,3.操作系统调度分配资源的最小单位; 三、…

TCN-BiGRU-Attention(12种算法优化TCN-BiGRU-Attention)(多输入单输出)

12种算法优化TCN-BiGRU-Attention模型预测的代码。其中Attention模型可以改为单头或者多头,在代码中就是改个数字而已。代码注释已写好如何更改。 TCN-BiGRU-Attention(12种算法优化TCN-BiGRU-Attention)(多输入单输出)代码获取戳…

【C++】C++11--- 类的新功能

目录 类的新功能 默认成员函数 示例 类成员变量初始化 强制生成默认函数的关键字default 禁止生成默认函数的关键字delete 类的新功能 默认成员函数 构造函数析构函数拷贝构造函数拷贝赋值重载取地址重载const取地址重载 C11在原先的6个默认成员函数的基础上&#xff0c…

WebDriver使用带用户名密码验证的IP代理解决方案

背景,使用python3 selenium 先定义一个方法,这里主要用到了chrome插件的功能,利用这个插件来放进代理内容。 def create_proxy_auth_extension(proxy_host, proxy_port,proxy_username, proxy_password, schemehttp):manifest_json "…

【Java基础】Maven继承

1. 前言 Maven 在设计时,借鉴了 Java 面向对象中的继承思想,提出了 POM 继承思想。 2. Maven继承 当一个项目包含多个模块时,可以在该项目中再创建一个父模块,并在其 POM 中声明依赖,其他模块的 POM 可通过继承父模…