网站首页 > 技术教程 正文
创作不易,关注、点赞,分享了解互联网前沿知识。
Keepalived高可用软件
Keepalived软件专为LVS负载平衡软件设计,可管理和监视LVS群集系统中各个服务节点的状态,并在以后提供高可用性VRRP功能。
Keepalived软件主要通过VRRP协议提供高可用性功能。VRRP是虚拟路由冗馀协议(virtual router redundancy protocol)的缩写,VRRP的目的是解决静态路由的单点故障问题,如果单个节点关闭,整个网络可以不间断地运行。因此,keepalived具有LVS配置管理功能。安装并启用keepalived
Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。
安装前准备
以主机pmonapp01、pmonapp02为例,通过Keepalived对外IP地址为ip.100,当pmonapp01其中一台服务器异常时,Keepalived自动将ip.100映射到pmonapp02上,反之亦然。
Keepalived安装以pmonapp01为例。
在/tmp目录下创建plugin目录,用于临时存放Keepalived安装介质。
/tmp目录下plugin目录不存在时需要重新创建。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir -p /tmp/plugin | 在/tmp/下创建plugin目录 |
执行示意
[root@pmondbs01 ~] # mkdir /tmp/plugin |
然后以通过FTP方式上传keepalived-1.4.4.tar.gz、libnfnetlink-devel-1.0.1-4.el7.x86_64.rpm。
- 修改操作系统参数
修改文件句柄最大数量,运行cat >>/etc/sysctl.conf <<eof依次输入:
fs.file-max=65535
eof
[root@pmonapp01 ~] # cat >>/etc/security/limits.conf<<eof > fs.file-max 65535 > eof |
Keepalived安装
依赖安装
本操作完成操作系统依赖包安装,依赖包包括openssl-devel、libnfnetlink-devel,其中libnfnetlink-devel需要最后单独安装,操作系统依赖包来源于操作系统镜像rhel-server-7.6-x86_64-dvd.iso。
操作如下:
- 首先将rhel-server-7.6-x86_64-dvd.iso ISO镜像通过FTP方式上传至/tmp目录,然后挂载ISO镜像。本次安装不需要永久挂载镜像文件。
使用命令
执行顺序 | 命令 | 说明 |
1 | mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt | 从/tmp目录挂载镜像文件rhel-server-7.6-x86_64-dvd.iso到/mnt, |
执行示意
[root@pmondbs01 ~]# mount -t iso9660 -o loop /tmp/rhel-server-7.6-x86_64-dvd.iso /mnt |
- 创建rhel-server-7.6-x86_64-dvd.iso文件yum源文件配置
使用命令
执行顺序 | 命令 | 说明 |
1 | vi /etc/yum.repos.d/rhel76.repo | 在/etc/yum.repos.d文件目录下创建rhel-server-7.6-x86_64-dvd.iso文件的yum源配置文件rhel76.repo |
2 | [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list | rhel76.repos需要输入的内容 |
执行示意
[root@pmondbs01 ~]# vi /etc/yum.repos.d/rhel76.repo [RHEL76] name=RHEL76 baseurl=file:///mnt enabled=1 gpgcheck=0 # yum clean all # yum list |
- 安装操作系统依赖RPM包
使用命令
执行顺序 | 命令 | 说明 |
1 | yum install –y openssl-devel | 安装基础依赖RPM包:openssl-devel。 |
执行示意
[root@pmondbs01 ~]# yum install –y openssl-devel Loaded plugins: langpacks, product-id, search-disabled-repos, subscription- : manager This system is not registered with an entitlement server. You can use subscripti on-manager to register. RHEL76 | 4.3 kB 00:00 (1/2): RHEL76/group_gz | 146 kB 00:00 (2/2): RHEL76/primary_db | 4.2 MB 00:00 Package openssl-devel-1.0.2k-16.el7.x86_64 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package openssl-devel-1.0.2k-16.el7.x86_64 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: openssl-devel x86_64 1:1.0.2k-16.el7 RHEL76 1.5 M Transaction Summary ================================================================================ Install 1 Packages Total download size: 1.5 M Installed size: 1.5 M |
界面显示“Is this ok [y/d/N]:”时输入y然后回车,安装继续进行。
Is this ok [y/d/N]: y Downloading packages: -------------------------------------------------------------------------------- Total 219 MB/s | 1.5 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : openssl-devel-1.0.2k-16.el7.x86_64 1/1 RHEL76/productid | 1.6 kB 00:00 Verifying : openssl-devel-1.0.2k-16.el7.x86_64 1/1 Installed: openssl-devel-1.0.2k-16.el7.x86_64 Complete! |
界面显示Complete!表示安装完成。
- 安装libnfnetlink-devel,FTP方式上传libnfnetlink-devel-1.0.1-4.el7.x86_64.rpm到/tmp/plugin/。
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/ | 进入/tmp/plugin目录 |
2 | rpm -ivh libnfnetlink-devel-1.0.1-4.el7.x86_64.rpm | 安装libnfnetlink-devel |
3 | ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1 | 创建软链接 |
4 | ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1 | 创建软链接 |
执行示意
[root@pmonapp01 ~] # cd /tmp/plugin/ [root@pmonapp01 plugin] # rpm -ivh libnfnetlink-devel-1.0.1-4.el7.x86_64.rpm warning: libnfnetlink-devel-1.0.1-4.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:libnfnetlink-devel-1.0.1-4.el7 ################################# [100%] [root@pmonapp01 ~] # ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1 [root@pmonapp01 ~] # ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1 |
安装Keepalived
使用命令
执行顺序 | 命令 | 说明 |
1 | cd /tmp/plugin/ | 进入/tmp/plugin目录 |
2 | tar -zxf keepalived-1.4.4.tar.gz | 解压keepalived-1.4.4.tar.gz |
3 | cd keepalived-1.4.4/ | 进入keepalived-1.4.4 |
4 | ./configure | 执行configure命令 |
5 | make&&make install | 编译并安装 |
执行示意
[root@pmonapp01~] # cd /tmp/plugin/ [root@pmonapp01 plugin] # tar -zxf keepalived-1.4.4.tar.gz [root@pmonapp01 plugin] # cd keepalived-1.4.4/ [root@pmonapp01 keepalived-1.4.4] # ./configure [root@pmonapp01 keepalived-1.4.4] # make&&make install |
- 设置Keepalived启动方式
Keepalived配置文件目录为/etc/keepalived,需要手工创建。
使用命令
执行顺序 | 命令 | 说明 |
1 | mkdir /etc/keepalived | 创建Keepalived配置文件目录 |
执行示意
[root@pmonapp01 ~] # mkdir /etc/keepalived |
安装介质中conf文件夹下有keepalived.conf,keepalived.conf为keepalived配置文件。然后FTP方式上传keepalived.conf至Keepalived配置文件目录下。
在解压之后的Keepalived安装介质中的keepalived/etc/init.d下提供有Keepalived的启动脚本,把该脚本复制到/etc/init.d下,即完成Keepalived启动脚本创建,然后将Keepalived添加为随系统启动。
使用命令
执行顺序 | 命令 | 说明 |
1 | cp /tmp/plugin/keepalived-1.4.4/keepalived/etc/init.d/keepalived.rh.init /etc/init.d/keepalived | 复制并创建keepalived启动脚本 |
2 | chkconfig --add keepalived | 添加keepalived启动随系统启动 |
3 | chkconfig --level 12345 keepalived on | 修改keepalived启动级别 |
执行示意
[root@pmonapp01 ~] # cp /tmp/plugin/keepalived-1.4.4/keepalived/etc/init.d/keepalived.rh.init /etc/init.d/keepalived [root@pmonapp01 ~] # chkconfig --add keepalived [root@pmonapp01 ~] # chkconfig --level 345 keepalived on |
- 重启Keepalived
修改配置之后务必重启Keepalived,操作命令为service keepalived restart。
[root@pmonapp01 ~] # service keepalived restart |
Nginx负载均衡来测试
修改windows的hosts文件,把域名指向到VIP上
用浏览器打开www.pcm.com的页面,在web01上查看access.log日志记录到的客户端IP地址
可以看到日志记录到的客户端的IP地址是192.168.31.1,反向代理服务器是主服务器192.168.31.3.下面我们停止keepalived服务,看备节点会不会接替主节点的VIP和服务。
可以看到,备节点确实接替了主节点的工作。重新启用主节点。
猜你喜欢
- 2024-10-13 minio分布式集群的搭建(minio分布式存储现在已弃用)
- 2024-10-13 Spring Cloud Alibaba——docker-compose搭建nacos1.4.0集群
- 2024-10-13 nginx负载均衡http flink集群端口配置的完整的nginx.conf文件
- 2024-10-13 Nginx负载均衡(nginx负载均衡有哪几种方式)
- 2024-10-13 Nacos集群搭建(nacos集群搭建打开网页提示未找到请求怎么回事)
- 2024-10-13 K8S云管理平台集群配置说明(k8s部署consul集群)
- 2024-10-13 一线开发大牛教你如何使用Kubernetes部署分布式集群
- 2024-10-13 集群部署看过来,低代码@AWS智能集群的架构与搭建方案
- 2024-10-13 基于Linux自己初步搭建Kubernetes(k8s)集群基础,详细教程
- 2024-09-30 使用 Nginx 部署前后端分离项目,解决跨域问题
你 发表评论:
欢迎- 最近发表
-
- Oracle 在其新的 Linux 内核中引入了热补丁功能
- CentOS 7.6下安装Oracle 11.2.0.4
- ORACLE体系 - 2(oracle体系讲解)
- ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务
- Hadoop自学系列集(二) ---- CentOS下安装JDK
- 如何升级oracle数据库安全补丁(oraclepsu补丁升级)
- 搭建Oracle数据库服务器(oracle服务器创建用户)
- OGG同步到Kafka(oggforbigdata到kafka)
- oracle是什么软件?(oracle是干什么用的)
- 脚本化修改Oracle用户的密码以及执行sql(增删改查等)
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)