云计算基于LAMP(Linux、Apache、MySQL、PHP/Python/Perl)集群的高级架构设计是一种常见的Web应用程序架构,可以提供高可用性、可伸缩性和性能优化。在实现此架构时,需要考虑私有网络、安全组和对等连接的配置。
-
私有网络配置: 在云计算平台中,私有网络是指在公共云环境中创建的一个隔离的、受控制的网络空间。在搭建基于LAMP集群的架构时,可以在云平台上创建一个私有网络,并将所有的虚拟机实例部署在这个私有网络中,以确保安全性和网络隔离。私有网络也可以提供更高的网络性能和更好的管理控制。
-
安全组配置: 安全组是云计算平台中用于管理实例的网络访问控制的一种机制。在LAMP集群架构中,您可以通过配置安全组来限制不同节点之间的相互访问,确保数据的安全性和隐私保护。可以根据需要设置访问控制规则,例如只允许特定IP地址访问数据库节点的MySQL端口,或者只允许Web服务器节点访问应用服务器节点的Apache端口。
-
对等连接配置: 对等连接是指在同一私有网络中的不同实例之间建立安全、私密的通信连接。在LAMP集群架构中,可以通过设置对等连接来实现不同节点之间的数据交换和通信,提高集群节点之间的协同工作效率。对等连接可以确保数据的安全传输,防止数据被未经授权的访问者窃取。
总结: 通过合理配置私有网络、安全组和对等连接,可以有效地构建基于LAMP集群的高级架构,提高系统的安全性、性能和可靠性。这些配置不仅可以保护系统免受网络攻击,还可以提高系统的可管理性和可监控性,为用户提供稳定可靠的服务。
1先创建私有网络和子网
192.168.1.0/24 前端网络 | 192.168.2.0/24 后端网络 | 192.168.3.0/24 存储网络 |
2创建安全组
创建HTTP安全组放行TCP:80端口
创建MySQL安全组放行
(1)前端网络 | 192.168.1.0/24 TCP:3306端口 |
(2)后端网络 | 192.168.2.0/24 TCP:3306端口 |
创建NFS安全组放行
前端网络 | 192.168.1.0/24 TCP:111端口 |
后端网络 | 192.168.2.0/24 TCP:111端口 |
前端网络 | 192.168.1.0/24 UDP:111端口 |
后端网络 | 192.168.2.0/24 UDP:111端口 |
3创建对等连接
后端-存储 后端网络 | 192.168.2.0/24-存储网络 | 192.168.3.0/24 |
前端-存储 前端网络 | 192.168.1.0/24-存储网络 | 192.168.3.0/24 |
前端-后端 前端网络 | 192.168.1.0/24-后端网络 | 192.168.2.0/24 |
4创建4台实例
前端(http) | 后端(MySQL1和MySQL2) | 存储(nfs) |
使用以上的私有网络和子网、安全组、对等连接
5设置路由表
在前端网络---前端网络 对等连接 前端-后端 | 192.168.1.0/24 ---后端网络 对等连接 前端-存储 |
在后端网络---存储网络 对等连接 后端-存储 | 192.168.2.0/24---前端网络 对等连接 前端-后端 |
在存储网络---后端网络 对等连接 前端-存储 | 192.168.3.0/24 ---前端网络 对等连接 前端-后端 |
- 为存储实例安装 nfs-utils*、防火墙关闭
- 创建共享目录/cunchu文件/{http,mysql1,mysql2}
mkdir /cunchu/{http,mysql1,mysql2}
- 给共享目录文件权限chmod -R 757
chmod -R 757 /cunchu/{mysql1,mysql2}
- 创建mysql*和http不能登录账号
useradd mysql* -s /sbin/nologin
useradd http -s /sbin/nologin
- 查看
下的http的anonuidcat /etc/passwd
- 进
配置文件设定vi /etc/exports
-
/cunchu/http 192.168.1.7(rw,anonuid=1001,sync)
/cunchu/mysql1 192.168.2.10(rw,no_root_squash,sync)
/cunchu/mysql2 192.168.2.12(rw,no_root_squash,sync)
=
(6)重启服务nfs rpcbind 然后exportfs -r
exportfs -r
如果存储实例(使用云硬盘)例:/vdb /vdc /vdd
Lsblk(验证硬盘有没有挂载成功)
fdisk /dev/vdb
fdisk /dev/vdc
fdisk /dev/vdd
mkfs -t ext4 /dev/vdb1(先格式化)
mount /dev/vdb1 /cunchu/http/(后挂载)
mkfs -t ext4 /dev/vdc1
mount /dev/vdc1 /cunchu/mysql1/
mkfs -t ext4 /dev/vdd1
mount /dev/vdd1 /cunchu/mysql2/
lsblk
为后端实例安装 mariadb* 、nfs-utils* 启动服务、防火墙关闭(两台实例mysql1和mysql2)
- 先安装软件已经存在/var/lib/mysql目录了
- 使用mount命令挂载
mount 192.168.3.17:/cunchu/msyql1 /var/lib/mysql
- 然后重新安装
重启服务mariadbyum reinstall -y mariadb*
- 重置数据库
进入数据库mysql_secure_installation
- 授权
grant replication slave on *.* to 'repl'@'192.168.2.14(mysql1)’ identified by ‘123456'; grant all privileges on *.* to 'root'@'192.168.1.4(http地址)' identified by '123456';
- 刷新数据库
flush privileges;
- 主获取log_pos,log_file,数据库内:
show master status;
- 从根据主获取的log_pos,log_file链接主如果是mysql1是192.168.2.1(本机)、mysql2是192.168.2.11
change master to
MASTER_HOST='192.168.2.1',
MASTER_USER='repl',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000003', (变化)
MASTER_LOG_POS=1947; (变化)
- 链接之后启动服务:start slave; 验证链接成功:
show slave status\G;
- 验证主创建或者做任意操作,从跟随
systemctl start mariadb 启动失败,,,,,看系统日志
就/var/lib/mysql下得目录必须是空白的
为前端实例安装http* php php-mysql nfs-utils* 启动服务、防火墙关闭
- 开启httpd rpcbind nfs服务
-
mkdir -p /var/www/html
- 挂载nfs的共享目录
mount 192.168.3.17(nfs地址):/cunchu/http /var/www/html
- 使用df -Th命令检验是否挂载成功
- 创建弹性公网IP绑定http实例
- 创建负载均衡
- 所属网络为----后端网络:192.168.2.0/24
- 配置监听器,监听协议为TCP,监听器端口为3306
- 再绑定后端服务msyql1和mysql2
- 安装论坛
- 进入nfs实例上传Discuz_X2_SC_UTF8.zip安装包
- 通过网盘分享的文件:论坛安装包
链接: https://pan.baidu.com/s/1S9XIeFGhVNJIkvzR76R-og?pwd=9898 提取码: 9898 - 安装unzip解压软件
- 使用解压到共享目录
unzip Discuz_X2_SC_UTF8.zip -d /cunchu/http
- 赋权限
chmod -R 755 /cunchu/http
- 进入http实例
cd /var/www/html
- 把upload文件全部移动到当前目录
mv upload/* .
- 并且将所有的文件赋权
chmod -R 757 data config uc_*