| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Nginx+keepalived实现高可用集群的具体配置 -> 正文阅读 |
|
[系统运维]Nginx+keepalived实现高可用集群的具体配置 |
一.准备工作? ? ? 首先我们需要准备两台主机,在此之前要在两台机器上安装nginx和keepalived服务,这两个服务在安装之前都需要安装依赖的.首先是nginx的安装:
然后就是keepalived的安装,也是先安装依赖:
接下来就是要确保防火墙,selinux以及时间同步问题. 二.具体配置? ? 由于我们是nginx和keepalived相结合,最后是在网页上访问的,所以我们需要先配置一个nginx访问界面的html.这个文件是在:/usr/local/nginx/html/下的index.html,具体配置如下:
这里面的ip地址设置为本机ip地址即可,主机的配置如上所示,从机的配置也是这样,唯一要修改的就是IP地址,这样我们访问的时候就可以看出不同了,下面我会给大家看一下访问的网页. ? ?以上就是两台机器的nginx网页了,第一张是主机,第二张是从机的. 接下来我们就要写个脚本了,要使用脚本监控nginx. 首先要:
接下来我们要创建脚本文件,在/etc/keepalived/创建一个check_nginx,sh文件,具体内容如下:
两台机器上都需要创建这个脚本文件.接下来就是keepalived的集体配置了.
如上图是我们主机的配置,在这里我们需要注意的就是我们check_nginx.sh 的文件路径以及文件名称,对照着上面的配置进行修改基本上是没有什么问题的. 三.测试? ?接下来我们配置完成,服务重启之后就要进行网页测试了,首先我们访问一下虚拟ip, ?我们会发现网页上的ip地址为主机的ip地址,接下来我们模拟宕机,先将主机的服务关闭,然后继续访问虚拟ip,看看会发生什么变化. ?看上面的图我们可以发现在主机服务关闭时,我们还是可以继续访问虚拟IP的,只是这时候的访问页面就跳到了我们从机的IP. 四.总结和排错思路? ? ? 本次的配置过程其实并不是很难,主要是让我们通过动手配置来真切的体会到了keepalived的高可用以及在一台服务器出现宕机其他从机都可以代替主机的身份继续保持服务的继续运行,这一点时非常实用的,接下来我也会与大家分享一下我在这次配置中所遇到的问题. 问题一:我在写nginx的网页配置时发现无法添加本机的ip地址,但是服务重启并不会报错,我发现我所添加的 文本格式也是没有问题的,接下来我们就要思考一下为什么index.html修改不生效呢?我们就要去到nginx的源文件目录下的defalut.conf文件中,后来我发现原来是目录写错了,我配置的文件在/usr/local/nginx/html目录下,而我的配置文件写的识别目录在/usr/share/nginx/html目录下,在修改之后再次刷新网页就发现多加了IP. 问题二:我的从机在访问网页时显示的并不是nginx服务的页面,而是apache ?这个时候我们就要思考是否是nginx服务没有启动,果然由于我在修改完配置文件之后直接运行了重启命令,并没有查看服务状态,随后我查看了nginx服务的运行状态发现出现报错了,之后我们需要查看报错日志. ? ?我发现报错日志里写道80端口被占用, ? ? ? ? 然后我们使用netstat命令来查看并过滤一下80端口被什么服务占用,我们发现原来是被apache服务占用了80端口,所以nginx服务无法启动,我们在关闭apache服务后,nginx就可以正常启动了,再一次刷新网页也正常了.在这里我在访问页面出现apache的时候我就知道了是apache服务占用了端口,但是我之所以说的这么详细就是要和大家分享排错思路,我们在发现错误时第一个要想到是什么造成了错误的发生,在配置文件检查无误之后就要想到去查看日志文件,然后再继续进行后面的排错.希望本次的分享对大家的学习和排错有了一点点的帮助,另外祝大家七夕节快乐!!!! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 9:42:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |