当前位置:网站首页>使用树莓派做Apache2 HA实验
使用树莓派做Apache2 HA实验
2022-07-24 13:45:00 【Ki1381】
听闻树莓派也已经是个理财产品了,默默关闭了某宝网页的我不禁陷入了沉思,然后翻出了之前买的一堆3B。话说回来,虽然账面上浮盈了,但乐不出来。按郭德纲的说法,真乐出来这堆树莓派治不好我。要不就挑两个做个HA的实验吧,这个做成了可能还乐的出来一点。
所以尝试这么个场景:
有个网站假设很重要,一台服务器挂了能有另一台顶上
以下就是实验设备的基本信息:
节点1:hostname ki01;IP:192.168.1.81
节点2:hostname ki02;IP:192.168.1.82
将这两个节点做个群集,虚拟出一个新地址 192.168.1.83。访问网站使用这个地址。
怎么设置固定IP,怎么设置hostname就略过不说了。
【以下操作两个节点上都要执行】
1、修改/etc/hosts,强制加入ki01和ki02对应的IP
192.168.1.81 ki01
192.168.1.82 ki02
2、安装必备的HA服务并做简单初始配置:
sudo apt install pacemaker pcs resource-agents
sudo systemctl start pcsd.service
sudo systemctl enable pcsd.service
sudo passwd hacluster
设置hacluster的密码并牢记。
【以下操作仅需在任意一个节点上操作】
3、形成群集
# 强制清理
sudo pcs cluster destroy
# 注册群集节点并形成群集
sudo pcs --force host auth ki01 ki02 -u hacluster -p 刚才设置的密码
sudo pcs --force cluster setup kicluster ki01 ki02
4、启动群集并设置成开机后自动启动:
sudo pcs cluster start –-all
sudo pcs cluster enable --all
5、禁用stonith和仲裁(针对这个实验这些个都没必要)
sudo pcs property set stonith-enabled=false
sudo pcs property set no-quorum-policy=ignore
【以下操作两个节点上都要执行】
6、安装Apache2,并设置禁止自动启动:
sudo apt install -y apache2
sudo systemctl stop apache2
sudo systemctl disable apache2
7、编辑/var/www/html/a.html,以便观察效果(这个是以ki01举例的。ki02就改KI02):
<html>
<body>THIS IS KI01.</body>
</html>
8、查看 /etc/apache2/mods-available/status.conf,确认有以下语句:
<Location /server-status>
SetHandler server-status
Require local
</Location>
【以下操作仅需在任意一个节点上操作】
9、配置群集资源:WebSite(对应Apache2)和虚拟IP
# 创建 WebSite 群集资源
sudo pcs --force resource create WebSite ocf:heartbeat:apache \
configfile=/etc/apache2/apache2.conf \
statusurl="http://localhost/server-status" \
op monitor interval=1min
# 创建 虚拟IP 群集资源
sudo pcs --force resource create ClusterIP ocf:heartbeat:IPaddr2 ip=192.168.1.8310、设置WebSite和虚拟IP的依赖关系、启动顺序、节点权重等。正常情况应该WebSite和虚拟IP是在一个节点上的:
sudo pcs constraint colocation add WebSite with ClusterIP INFINITY
sudo pcs constraint order ClusterIP then WebSite
sudo pcs constraint location WebSite prefers ki01=50
11、可以随时用 sudo pcs status 查看群集的状态。重点关注节点的online/offline状态、资源的状态。

此时可以用浏览器访问http://192.168.1.83/a.html。此刻资源在ki01上,那么就会显示THIS IS KI01。
12、手动切换测试(以下语句针对当前资源在ki01上的):
sudo pcs resource move WebSite ki02使用sudo pcs status命令,以及浏览器访问192.168.1.83看看是不是已经切过去了。
13、自动切换测试:
使用sudo pcs status命令或访问192.168.1.83确定当前资源在哪个节点上。然后关闭该节点。正常情况就是应该很快就切到存活的节点上了。在存活的节点上继续使用sudo pcs status命令,以及浏览器访问192.168.1.83确认是否工作正常。

当关闭的节点重新打开上线后,因为设置了优先级ki01=50(数字越大优先级越高),资源还是会切回ki01:

参考资料:
https://clusterlabs.org/quickstart-redhat.html
pcs(8) — pcs — Debian unstable — Debian Manpages
边栏推荐
猜你喜欢
随机推荐
网络安全——中间人攻击渗透测试
群体知识图谱:分布式知识迁移与联邦式图谱推理
Statistical table of competition time and host school information of 2022 national vocational college skills competition (the second batch)
【无标题】
One problem encountered:
数据修改插入
How to configure webrtc protocol for low latency playback on easycvr platform v2.5.0 and above?
关于不定方程解的个数的问题
Network security - Cookie injection
Nmap安全测试工具使用教程
Exploration of sustainable learning ability to support the application of ecological evolution of Pengcheng series open source large models
网络安全——文件上传白名单绕过
网络安全——Web信息收集
如何在Ubuntu 18.04和Debian 9上安装PHP 5.6
[untitled]
Group intelligence decision-making in an open environment: concepts, challenges and leading technologies
How can the easycvr platform access special devices without authentication?
Browser failed to get cookies, browser solution
Network security - file upload content check bypass
一些简单命令

![[untitled] rhcsa first operation](/img/ba/6b9c11edbc18ffb52f6046360b5b10.png)







