NACOS+OpenResty+keepalived集群部署服务

        nacos很熟悉的伙伴应该直到nacos是集配置中心,命名服务,注册和发现于一身的组件,比其他的注册组件要方便许多,支持ap和cp.由自己的客户端向服务端请求心跳,极大的减小了服务端的压力。废话不多了,下面直接进入正题。
 第一步准备环境:
     一台windows机器,配置两个虚拟机或者两个linux服务器,接下来所有的操作都是在linux上完成。
    1) nacos版本 我测试的是 1.2.1版本

    我的nacos有3个服务,地址分别为:

    192.168.1.20:8848  192.168.1.20:8849  192.168.1.20:8850
     2)mysql我用的是8以上的(会有兼容性问题,需要解决)
     3)openresty我用的是15.8.2版本
     4)keepalived我用的是 1.3.5
  
第二步  安装nacos

    1 解压压缩包 :  unzip nacos-server-1.2.1.zip

     2 修改nacos的conf中application.properties文件,修改掉默认数据库,改为mysql

        spring.datasource.platform=mysql
         db.num=1
         db.url.0=jdbc:mysql://localhost:3306/nacos_config?                          characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
        db.user=root
        db.password=123456

3 配置在mysql中nacos_config数据库(前提是linux中已安装mysql并可使用,没有安装的可以看看我的mysql帖子)

首先登录

mysql   mysql -u root -p

输入密码

创建 nacos_config数据库

create datebase 'nacos_config';

使用数据库

use nacos_config

把nacos中的nacos-mysql.sql执行

source  ../../conf/nacos-mysql.sql

在nacos的conf目录中新建cluster.conf文件,用于集群

内容为:

    192.168.1.20:8848

    192.168.1.20:8849 

    192.168.1.20:8850

这一步用于制定端口,也可以在配置文件中制fen定

分别中nacos1\nacos2\nacos3修改startup.sh启动脚本

nohub $JAVA -Dserver.port = 8848   (nacos1中)

nohub $JAVA -Dserver.port = 8849   (nacos2中)

nohub $JAVA -Dserver.port = 8850   (nacos3中)

最后分别启动 三个程序 (启动前,一定记得防火墙允许访问或关闭掉防火墙)

sh nacos1/bin/startup.sh

sh nacos2/bin/startup.sh

sh nacos3/bin/startup.sh

第三步  安装openresty

查看可用的openresty软件

yum --disablerepo="*" --enablerepo="openresty" list available

安装

yum install openresty -y

默认会安装到 /usr/local/openresty/ 目录下, 目录下包含了 luajit, lualib, nginx, openssl, pcre, zlib 这些组件


启动
/usr/local/openresty/bin/openresty

如果安装成功了 直接在本地访问80端口 会出现welcome to openresty!界面

这里要使用它的负载均衡功能 upstream(openresty是在nginx的基础上优化的产品)

这里要定位到它的nginx/conf/nginx.conf文件的http块中增加如下代码

upstream nacosCluster{

server 192.168.1.20:8848

server 192.168.1.20:8849

server 192.168.1.20:8850

}

配置location代理到nacos_cluster 

location /{

proxy_pass http://nacosCluster;

index index.html index.htm;

}

修改好配置,重新载入配置文件

/usr/local/openresty/bin/openresty -s reload

到此集群已经建立好了 访问 http://192.168.1.20/nacos/index.html,80端口可以不写.

如果想测试,可以在你的nacos中修改discover.server-addr的地址为当前这个,也就是openresty的访问地址。nacos本身就支持了ribbon,可以测试负载均衡,具体不列了。

第四步  安装keepalived

我是两台虚拟机,一台虚拟机上有3个nacos服务,1个openresty服务,1个keepalived

另外一台1个openresty服务,1个keepalived服务,这台虚拟机为MASTER (keepalived)

由于另外一台我是直接克隆的第一台的机器,所以我只要安装keepalived就可以了

(防火墙一定记得权限设置,保持两台虚拟机可以ping 通)

最简单的方法 yum方式 (最好不要用手动安装依赖较多)

yum install -y keepalived

查看版本
rpm -qa|grep keepalived
查看安装后目录
rpm -qc keepalived

启动keepalived
systemctl start keepalived.service
设置开机启动
systemctl enable keepalived.service
查看开机自启列表
systemctl list-unit-files|grep enabled
查看启动状态
systemctl status keepalived.service

添加开机自启动

chkconfig --add keepalived

chkconfig keepalived on

下面是编辑两台机器的keepalived的keepalived.conf文件,里面很多内容,可以删除一些。

 

 

 编写自启动openResty脚本(一定记得自测脚本)

 

这里两台keepalived配置的虚拟ip为192.168.1.30(MASTER机器存在,如果MASTER下线,BACKUP会占有)

keepalived默认是抢占式的,也有非抢占式的需要配置,具体小伙伴可以百度吧

最后启动服务

systemctl start keepalived.service

使用ip addr 可以查看到MASTER上有192.168.1.30的虚拟ip

第五步  测试

打开192.168.1.30/nacos/index.html 地址 

可以测试一台机器挂掉,服务是否正常

可以测试openresty 停止后是否自启动 

至此Nacos+OpenResty +Keepalived高可用集群结束,过程很繁琐,简单体验一下.

在此过程有许多细节就不说了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值