一、Nacos服务注册与发现(版本2.1.2)--单机版和集群版--开机自动启动

目录

1.环境准备:(建议如果新手的话,最好跟我的版本一致。高手可以忽略)

2.着手落地本地Nacos的服务(单机版):

3.着手落地本地Nacos的服务(集群版):

4.开机自启动设置


1.环境准备:(建议如果新手的话,最好跟我的版本一致。高手可以忽略)

  1. JAVA版本:我本地用的是1.8.0_341,个人根据自己的需求,只要是1.8版本以上的都行。
  2. MAVEN版本:3.3.9
  3. MYSQL版本:8.0.31
  4. springboot版本:2.3.12.RELEASE
  5. spring-cloud版本:Hoxton.SR12
  6. spring-cloud-alibaba版本:2.2.9.RELEASE

2.着手落地本地Nacos的服务(单机版):

下载地址:Nacos的github下载地址

下载解压之后:

  windows的同学可以直接执行:(到对应的nacos的bin目录下)

startup.cmd -m standalone

linux或者unix的同学可以直接执行:

sh startup.sh -m standalone

可以打开你浏览器打开:http://localhost:8848/nacos/index.html, 这就是nacos的界面,默认用户名和密码:nacos/nacos

至此,naocs的本地单机版本就成功启动了。


3.着手落地本地Nacos的服务(集群版):

一共要改两个地方就可以轻松实现集群方案。

  • 打开nacos的conf目录,找到application.properties这个文件,更改server.port =8850 (此处为啥我不改成连续的8849呢?因为我是一台机器启动两个nacos,内部服务会占用这个端口号,会导致我们启动失败的哦! 不相信的可以自己动一动小手指试试看,不同版本可能会有差异,如果两台机器的话,可以忽略我的警告!)
  • 继续找到如下代码,按照我的更改成你们本地的数据库就行,如下:
    #*************** Config Module Related Configurations ***************#
    ### If use MySQL as datasource:
    spring.datasource.platform=mysql
    
    ### Count of DB:
    db.num=1
    
    ### Connect URL of DB:
    # db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    # db.user.0=nacos
    # db.password.0=nacos
    
    db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    db.user.0=root
    db.password.0=root
    
    
    ### Connection pool configuration: hikariCP
    db.pool.config.connectionTimeout=30000
    db.pool.config.validationTimeout=10000
    db.pool.config.maximumPoolSize=20
    db.pool.config.minimumIdle=2

  • 找到cluster.conf.example这个文件,拷贝一份命名为:cluster.conf,配置如下
    真实IP:8848
    真实IP:8850 

    更改成你对应的集群的IP+端口号即可。(此处有坑呦:要填真实IP,不要填localhost或者127.0.0.1,不然在服务的注册与发现的时候,集群间的同步会有意想不到的惊喜呦!

  • 执行一下conf文件夹下的 mysql-schema.sql到你的本地数据库,别忘记了!

  • 另一个nacos也是同样更改配置即可。如果启动报错的话,自己可以去nacos的目录下的logs文件下找错误日志,对应更改即可!

  • 启动命令:

    startup.cmd

4.开机自启动设置

  • 进入/lib/systemd/system目录, 创建nacos.service文件
    cd /lib/systemd/system
    touch nacos.service (一台服务启动两个nacos集群,那你就创建两份就行,内容一样,名字区别一下就行)
    
    内容如下:
    
    [Unit]
    Description=nacos
    After=network.target
     
    [Service]
    Type=forking
    ExecStart=/usr/local/software/nacos/bin/startup.sh
    ExecReload=/usr/local/software/nacos/bin/shutdown.sh
    ExecStop=/usr/local/software/nacos/bin/shutdown.sh
    PrivateTmp=true
     
    [Install]
    WantedBy=multi-user.target
    

  • 执行linux命令

     1. 重新加载所有service服务
    systemctl daemon-reload
     2. 开机启动nacos.service
    systemctl enable nacos.service
     3. 查看该service是否开机启用
    systemctl is-enabled nacos.service
     4. 启动该服务
    systemctl start nacos.service
     5. 查看该服务状态
    systemctl status nacos.service

    注意的是:如果是虚拟机一台服务安装了两个nacos集群的话,启动一直是Nacos is starting.....的话,那么恭喜你,跟我一样的问题,我排查了很久,最终很无奈的解决了,方案就是:同学请把你的虚拟机内存调大至少2-4G吧!

  • 下一节,讲其余中间的详细教程!

你可能感兴趣的:(java,开发语言,spring,cloud,spring,boot)