Windows Azure下Apache服务可用性集配置介绍
Azure现在不是一个什么新鲜话题了,但可以说Azure的功能还在逐渐增加,包括性能上的优化,具体就不多介绍了,近期呢闲着没事,就尝试在Azure上部署Apache服务的高可用性部署,如果在本地部署Apache服务的高可用性的话,会用到LVS+Keepalived等服务来实现Apache的高可用性配置,如果我们将Apache服务部署到windows azure上的话,就省去了LVS+Keepalived的配置,所以相对比较简单一点。在Azure上部署高可用性配置的基本原理为,将多台VM配置到同一个云服务下(一个云服务代表一个公网IP),然后配置相应的终结点高可用性和负载平衡器就可以实现了,Apache和Nginx的配置一样,具体见下:
环境介绍:
Hostname:Webserver01.iternalsoft.com
IP:10.10.1.20
Role:Apache Server
Hostname:Webserver02.iternalsoft.com
IP:10.10.1.21
Role:Apache Server
Cloud Service:Iternal
我们选择从库中选择Centos7
虚拟机的hostname:Webserver01
选择已经存在的云服务即可;可根据自己的环境来进行配置
开始创建vm
创建完成
查看配置
然后我们按照以上的方法进行部署第二台服务器。
在此我们需要注意,我们需要将该VM和上面的VM放在同一个云服务下可实现高可用性
配置完成
接下来我们查看网络配置信息,两台VM使用的是同一个网络信息
然后我们在同一云服务下运行两台vm
接下来就是开始配置可用性集了
我们单击进入服务器配置----配置---可用性集合
选择创建可用性集,然后定义可用性集名称
配置完成
接着我们同样将webserver02加入到该可用性集即可
我们选择-刚才新建的可用性集合--保存即可加入到可用性集合中
可用性集合部署配置完成
可用性配置完成后,我们接下来配置开发端口了-----终端
单击vm---终端店---添加
首先添加独立的终结点
在此我们需要选择需要开发的端口--终结点---HTTP
注:需要勾选创建负载均衡节点
定义负载均衡名
终结点负载均衡创建完成
我们按照同样的方法需要创建HTTPS负载均衡服务
我们所需服务的对应的端口已经创建了负载平衡集
HTTPS 443
HTTP 80
接下来就是配置webserver02了,我们需要按照同样的方法操作,唯一区别就是webserver02只需要添加到刚才新建的负载平衡集合中即可
我们选择将中街店添加到现有的负载平衡集中终结点负载平衡添加完成
我们按照同样的方法将HTTPS也添加到已存在的负载平衡集中
添加完成
我们可以查看云服务状态
接下来我们就使用xshell连接到两台服务器上开始安装及配置服务
连接前我们需要确认的是,如果从外部ssh的话需要确认端口,因为两台vm使用的是同一个云服务,ssh的默认端口是22,所以我们需要确认端口信息
Webserver01的外网ssh端口为22
Webserver02的ssh外网端口为51658
通过以上信息,我们就可以ssh登录了
登录的第一件事是我们需要启用root管理员,因为默认azure是没有启用root的,所以我们需要启用root管理员信息
Sudo -su root
输入gavin默认账户的信息进行确认
然后我们passwd root 修改root的密码进行启用
Passwd root New pwd
root登录后,我们接下来就是修改计算机名了
Hostnamectl set-hostname web-server01
关闭防火墙
Systemctl stop firewalld Systemctl disable firewalld
关闭性能调试
Vim /etc/selinux/config
如果需要以上服务生效的话我们需要重启系统
Reboot
接着我们按照以上方法需要修改webserver02的相关信息
接下来就是安装apache服务了
Yum install -y httpd
安装完成后,可以通过rpm查看httpd的版本,我们查看到已安装的是httpd-2.4.6-31
rpm -qa | grep httpd
我们首先是备份httpd.conf的文件,因为我们需要修改httpd.conf的文件,所以建议操作前备份一下
Cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
Ls /etc/httpd/conf/
启动httpd服务 Systemctl start httpd Netstat -anlpt
接下来我们就尝试访问web服务
接下来为了更好的演示页面,所以我们修改默认页面内容:
我们都知道apache默认的访问页面在
/etc/httpd/conf.d/welcome.conf
接下来我们创建一个默认的index.html文件来定义显示内容
Cd /var/www/html
该默认路径没有index.html文件,所以我们要创建一个,然后编辑内容
vim index.html
保存后,我们重启httpd服务,继续访问
Systemctl restart httpd
继续访问测试,结果是可以的
接着我们开始配置webserver02的以上信息
我们yum install -y httpd
然后我们在server01上运行scp讲index.html文件拷贝到server02上
scp/var/www/html/index.html 10.10.10.5:/var/www/html/index.html
接下来我们在webserver02上修改显示信息
保存后,我们就重启服务
Systemctl restart httpd
接着来我们测试高可用性
接下来我们进行两次高可用测试
首先我们在server01上停止httpd服务,然后尝试访问
继续访问呢;
由于server01的httpd停止,所以会访问server02的信息
现在我们将server01的httpd启用,然后将server02的httpd停止
继续访问测试;会跳转到server01的配置页面
在此windowsazure下的高可用配置介绍完成,
最后我们再说说azure上可以实现对可用性服务的缩放服务,所谓的缩放服务就是对高可用群集服务进行停机维护,当服务在满负载的情况下会运行,服务不高的时候会自动停机来节省费用
因为在windows azure上定义高可用性集就是所谓的多台vm对应一个云服务,所以我们配置缩放需要在云服务下进行配置
单击云服务----缩放
我们可以看见缩放可以根据:CPU、队列进行缩放配置;当然我们也可以通过时间段进行缩放配置呢:
1.如果根据时间进行缩放的话,可以定义一个时间段对某个服务进行停机,然后经过定义的时间段会自动启动
2.通过CPU定义的话,如果CPU超过定义值,服务器具会自动启动
3.通过队列进行定义,如果队列超过了指定的值,服务器也会自动启动
如果需要配置Apache SSL的话我们可以参考一下文档
http://gaowenlong.blog.51cto.com/451336/1671672
本文出自 “高文龙” 博客,谢绝转载!