Windows Azure下Apache服务可用性集配置介绍

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

wKioL1ZC5ceDVMPNAADiriddlGw507.png虚拟机的hostnameWebserver01

wKioL1ZC5dSQdzK8AAC1sebn9ew574.png选择已经存在的云服务即可;可根据自己的环境来进行配置

wKioL1ZC5e3z81vlAADD7nFM4oM245.png开始创建vm

wKioL1ZC5f_SKFyJAAEE1pkqCpQ131.png创建完成

wKioL1ZC5g_C0uXGAADb31P3b6E556.png查看配置

wKiom1ZC5djiU_CKAADs6H4BV0o869.png然后我们按照以上的方法进行部署第二台服务器。

wKiom1ZC5eaCAqKPAADRuLwaK8o011.png

 在此我们需要注意,我们需要将该VM和上面的VM放在同一个云服务下可实现高可用性

wKioL1ZC5lzTbTghAACc5hSJeA8787.png配置完成

wKioL1ZC5n3CPnOOAAC-f-DPCK0426.png接下来我们查看网络配置信息,两台VM使用的是同一个网络信息

wKioL1ZC5pzgjQ4aAACUFRDbHgs231.png然后我们在同一云服务下运行两台vm

wKioL1ZC5qrhWShoAACpb15kSWM806.png

接下来就是开始配置可用性集了

我们单击进入服务器配置----配置---可用性集合

wKiom1ZC5nHhGswDAACQAptym2I877.png选择创建可用性集,然后定义可用性集名称

wKioL1ZC5syAVbDwAACKpLp7-P0662.png配置完成

wKioL1ZC5vHRb5kaAADE3RFqU9g768.png

接着我们同样将webserver02加入到该可用性集即可

我们选择-刚才新建的可用性集合--保存即可加入到可用性集合中

wKiom1ZC5r3yLWjYAACvdUkVKwI765.png可用性集合部署配置完成

wKiom1ZC5suyosdRAACe6-vPqYs295.png

可用性配置完成后,我们接下来配置开发端口了-----终端

单击vm---终端店---添加

wKioL1ZC5ybxSvkAAACZQ2SLGAQ748.png首先添加独立的终结点

wKiom1ZC5veyIo7dAAEukYgQob0141.png

在此我们需要选择需要开发的端口--终结点---HTTP

注:需要勾选创建负载均衡节点

wKioL1ZC51iBfL8dAAD4JxVAPlA796.png定义负载均衡名

wKioL1ZC52aAD5SUAAC_bFBtuvw552.png终结点负载均衡创建完成

wKioL1ZC53KTZK3FAADL4l-xZxs605.png我们按照同样的方法需要创建HTTPS负载均衡服务

wKiom1ZC50qB7W_0AAFprGyENxc196.png

我们所需服务的对应的端口已经创建了负载平衡集

HTTPS   443

HTTP     80

wKioL1ZC56rQAGl-AADA20Vbiv4280.png接下来就是配置webserver02了,我们需要按照同样的方法操作,唯一区别就是webserver02只需要添加到刚才新建的负载平衡集合中即可

wKiom1ZC53OykEcEAACZRUgenO4676.png我们选择将中街店添加到现有的负载平衡集中wKiom1ZC54nBkSN7AAETJ_f_344590.png终结点负载平衡添加完成

wKioL1ZC5-XDylnRAADA7pky8V8948.png我们按照同样的方法将HTTPS也添加到已存在的负载平衡集中

wKioL1ZC5_OC8EovAAEPQlGQ1hY143.png添加完成

wKiom1ZC57XT2eUNAACy8yL0J3s218.png我们可以查看云服务状态

wKioL1ZC6A7SaWwxAACr1z_Z2Is077.png

接下来我们就使用xshell连接到两台服务器上开始安装及配置服务

连接前我们需要确认的是,如果从外部ssh的话需要确认端口,因为两台vm使用的是同一个云服务,ssh的默认端口是22,所以我们需要确认端口信息

Webserver01的外网ssh端口为22

wKiom1ZC5-PCaWLVAAC9tH1HRwQ595.pngWebserver02ssh外网端口为51658

wKioL1ZC6EWSIZTKAAC_Hu_kTs8507.png通过以上信息,我们就可以ssh登录了

wKiom1ZC6BThlqERAABnAfU6JWo776.png

登录的第一件事是我们需要启用root管理员,因为默认azure是没有启用root的,所以我们需要启用root管理员信息

Sudo -su root

输入gavin默认账户的信息进行确认

wKiom1ZC6CmhwvsnAAAoqxTkSyw709.png

然后我们passwd root 修改root的密码进行启用

Passwd root
New pwd

wKioL1ZC6IGSji59AAAs7EwrVRE712.png

root登录后,我们接下来就是修改计算机名了

Hostnamectl  
set-hostname  web-server01

关闭防火墙

Systemctl stop firewalld
Systemctl disable firewalld

wKioL1ZC6JmRQ3b_AABWWHx0VbA782.png

关闭性能调试

Vim /etc/selinux/config

wKioL1ZC6KWRd16XAABq_Ud0swI738.png

如果需要以上服务生效的话我们需要重启系统

Reboot

wKiom1ZC6IWReNy6AABQlxn71LY806.png接着我们按照以上方法需要修改webserver02的相关信息

wKioL1ZC6N-Cjlw8AABOBQpuBFQ008.png

接下来就是安装apache服务了

Yum install -y httpd

wKioL1ZC6POjQxyhAACzABdlJnM985.png

安装完成后,可以通过rpm查看httpd的版本,我们查看到已安装的是httpd-2.4.6-31

rpm -qa | grep httpd

wKiom1ZC6L-whVpKAAAn9gZ4cT4514.png

我们首先是备份httpd.conf的文件,因为我们需要修改httpd.conf的文件,所以建议操作前备份一下

Cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

wKioL1ZC6SOQfBOUAAAtTwfSu_k790.png

Ls /etc/httpd/conf/

wKiom1ZC6PHQGvquAAASxTLfrt0797.png

启动httpd服务
Systemctl start httpd
Netstat -anlpt

wKiom1ZC6T_h9m7TAABdhSOgO_E618.png接下来我们就尝试访问web服务

wKioL1ZC6ZfS_wo0AALLHtdRGnQ760.png

接下来为了更好的演示页面,所以我们修改默认页面内容:

我们都知道apache默认的访问页面在

/etc/httpd/conf.d/welcome.conf

wKiom1ZC6WiSPkVIAACMMHxA68o761.png

接下来我们创建一个默认的index.html文件来定义显示内容

Cd /var/www/html

wKioL1ZC6cbiMx3YAAAU7JVxNns435.png该默认路径没有index.html文件,所以我们要创建一个,然后编辑内容

vim index.html

wKiom1ZC6Y_AWmBEAABpqw5z248773.png

保存后,我们重启httpd服务,继续访问

Systemctl restart httpd

wKiom1ZC6cOTztKkAAAQNcuvZns962.png

继续访问测试,结果是可以的

wKioL1ZC6h2BrbZ6AABhrAJ90SA064.png

接着我们开始配置webserver02的以上信息

我们yum install -y httpd

wKiom1ZC6fPxeSK3AADAxh94rBY992.png

然后我们在server01上运行scpindex.html文件拷贝到server02

scp/var/www/html/index.html 10.10.10.5:/var/www/html/index.html

wKiom1ZC6hXAajSAAABzQhwFc10606.png接下来我们在webserver02上修改显示信息

wKioL1ZC6m7j47AYAABrYVDS1bc235.png

保存后,我们就重启服务

Systemctl restart httpd

wKiom1ZC6jnAMZsOAABROBOGKoI825.png接着来我们测试高可用性

wKioL1ZC6o_zYn_AAABiIQ_SOQw253.png

接下来我们进行两次高可用测试

首先我们在server01上停止httpd服务,然后尝试访问

wKioL1ZC6rOSGmoaAABypVQOvyg672.png继续访问呢;

由于server01httpd停止,所以会访问server02的信息

wKiom1ZC6nrhzMkrAABbp770HR8500.png现在我们将server01httpd启用,然后将server02httpd停止

wKioL1ZC6tbwmzdKAABM52oQop0977.png

继续访问测试;会跳转到server01的配置页面

wKioL1ZC6uOBiTDdAABgEbEHRqY275.png

在此windowsazure下的高可用配置介绍完成,

最后我们再说说azure上可以实现对可用性服务的缩放服务,所谓的缩放服务就是对高可用群集服务进行停机维护,当服务在满负载的情况下会运行,服务不高的时候会自动停机来节省费用

因为在windows azure上定义高可用性集就是所谓的多台vm对应一个云服务,所以我们配置缩放需要在云服务下进行配置

单击云服务----缩放

wKiom1ZC6qrQ19ydAADA7Y_KyIc386.png

我们可以看见缩放可以根据:CPU、队列进行缩放配置;当然我们也可以通过时间段进行缩放配置呢:

1.如果根据时间进行缩放的话,可以定义一个时间段对某个服务进行停机,然后经过定义的时间段会自动启动

wKioL1ZC6wDQeEQDAAFqmoWvf8U273.png2.通过CPU定义的话,如果CPU超过定义值,服务器具会自动启动

wKiom1ZC6tCiIxC4AADc1xizBXw066.png

3.通过队列进行定义,如果队列超过了指定的值,服务器也会自动启动

wKiom1ZC6tfD6urFAADA-tRscMs101.png

 如果需要配置Apache SSL的话我们可以参考一下文档

http://gaowenlong.blog.51cto.com/451336/1671672


本文出自 “高文龙” 博客,谢绝转载!

你可能感兴趣的:(windows)