首页 > 其他分享 >Nacos 安装

Nacos 安装

时间:2022-10-08 14:41:00浏览次数:52  
标签:Nacos nacos prometheus master env mysql 安装 Cloud

Nacos

一、Spring Cloud 、Spring Cloud Alibaba 、Nacos版本对应关系

官方版本说明

版本说明

format edited this page 2019/7/1 · 13 revisions

版本依赖关系

Spring Cloud Version

Spring Cloud Alibaba Version

Spring Boot Version

Spring Cloud Greenwich

0.9.0.RELEASE

2.1.X.RELEASE

Spring Cloud Finchley

0.2.X.RELEASE

2.0.X.RELEASE

Spring Cloud Edgware

0.1.X.RELEASE

1.5.X.RELEASE

Note

请注意, Spring Cloud Edgware 最低支持 Edgware.SR5 版本

组件版本关系

Spring Cloud Alibaba Version

Sentinel Version

Nacos Version

RocketMQ Version

Dubbo Version

Seata Version

0.9.0.RELEASE or 0.2.2.RELEASE or 0.1.2.RELEASE

1.5.2

1.0.0

4.4.0

2.7.1

0.4.2

0.2.1.RELEASE or 0.1.1.RELEASE

1.4.0

0.6.2

4.3.1



0.2.0.RELEASE or 0.1.0.RELEASE

1.3.0-GA

0.3.0




依赖管理

Spring Cloud Alibaba BOM 包含了它所使用的所有依赖的版本。

RELEASE 版本

Spring Cloud Greenwich

如果需要使用 Spring Cloud Greenwich 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.9.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>

Spring Cloud Finchley

如果需要使用 Spring Cloud Finchley 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.2.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>

Spring Cloud Edgware

如果需要使用 Spring Cloud Edgware 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.1.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>

BUILD-SNAPSHOT 版本

如果您想使用最近的 SNAPSHOT 版本,首先需要在你的 maven 配置中加入 Spring BUILDSNAPSHOT 仓库,可以在 Maven 配置文件中的 settings.xml 或者 Java 工程的 pom.xml 中配置,

<repositories>
<repository>
<id>spring-snapshot</id>
<name>Spring Snapshot Repository</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>

Note

请注意, BUILD-SNAPSHOT 版本随时可能更新

Spring Cloud Greenwich

如果需要使用 Spring Cloud Greenwich 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.9.1.BUILD-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>

Spring Cloud Finchley

如果需要使用 Spring Cloud Finchley 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.2.3.BUILD-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>

Spring Cloud Edgware

如果需要使用 Spring Cloud Edgware 版本,请在 dependencyManagement 中添加如下内容

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.1.3.BUILD-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>

二、 单机部署Nacos

1. 使用docker部署

1.1 下载镜像

github地址

dockerhub

注意:需要github中的分支版本号和docker镜像地址版本一致,如:nacos-server:0.6.0不支持prometheus和grafana,而最新版本支持

#如果使用最新版
git clone --depth 1 https://github.com/nacos-group/nacos-docker.git

如果使用的不是最新版本的docker镜像

那么需要在github中查找相应的版本,然后下载zip文件,并使用ftp上传到centos服务器

Nacos 安装_Grafana

1.2 部署镜像

  • Standalone Derby(单机部署,使用Derby)

Derby是Java编写的内嵌数据库,不要引入mysql

docker-compose -f example/standalone-derby.yaml up -d

配置文件

version: "3.7" 
services:
nacos:
image: nacos/nacos-server:1.1.0 #一般不要使用latest
container_name: nacos-standalone #容器实例命名
environment:
- PREFER_HOST_MODE=hostname
- MODE=standalone #部署模式
volumes:
- ./standalone-logs/:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties #配置使用prometheus、fluxdb、ES
ports:
- "8848:8848"
prometheus:
container_name: prometheus
image: prom/prometheus:v2.11.1
volumes:
- ./prometheus/prometheus-standalone.yaml:/etc/prometheus/prometheus.yml #配置监控点
ports:
- "9090:9090"
depends_on:
- nacos #服务映射
restart: on-failure
grafana:
container_name: grafana
image: grafana/grafana:6.2.5
ports:
- 3000:3000
restart: on-failure

version是docker-compose文件格式与docker的版本对应关系

版本说明

Compose file formatDocker Engine release3.718.06.0+3.618.02.0+3.517.12.0+3.417.09.0+3.317.06.0+3.217.04.0+3.11.13.1+3.01.13.0+2.417.12.0+2.317.06.0+2.21.13.0+2.11.12.0+2.01.10.0+1.01.9.1.+

  • Standalone Mysql(单机部署,使用Mysql)
docker-compose -f example/standalone-mysql.yaml up -d

配置文件

version: "3.7"
services:
nacos:
image: nacos/nacos-server:1.1.0
container_name: nacos-standalone-mysql
environment:
- PREFER_HOST_MODE=hostname
- MODE=standalone
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_MASTER_SERVICE_HOST=mysql-master
- MYSQL_MASTER_SERVICE_DB_NAME=nacos_devtest
- MYSQL_MASTER_SERVICE_PORT=3306
- MYSQL_SLAVE_SERVICE_HOST=mysql-slave
- MYSQL_SLAVE_SERVICE_PORT=3305
- MYSQL_MASTER_SERVICE_USER=nacos
- MYSQL_MASTER_SERVICE_PASSWORD=nacos
volumes:
- ./standalone-logs/:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8848:8848"
- "9555:9555"
depends_on:
- mysql-slave
restart: on-failure
mysql-master:
container_name: mysql-master
image: nacos/nacos-mysql-master:latest
env_file:
- ../env/mysql-common.env
- ../env/mysql-master.env
volumes:
- ./mysql-master:/var/lib/mysql
ports:
- "3306:3306"
mysql-slave:
container_name: mysql-slave
image: nacos/nacos-mysql-slave:latest
env_file:
- ../env/mysql-common.env
- ../env/mysql-slave.env
volumes:
- ./mysql-slave:/var/lib/mysql
ports:
- "3305:3306"
depends_on:
- mysql-master
prometheus:
container_name: prometheus
image: prom/prometheus:v2.11.1
volumes:
- ./prometheus/prometheus-standalone.yaml:/etc/prometheus/prometheus.yml
ports:
- "9090:9090"
depends_on:
- nacos
restart: on-failure
grafana:
container_name: grafana
image: grafana/grafana:6.2.5
ports:
- 3000:3000
restart: on-failure

三、 集群部署Nacos

  • Cluster(集群部署)

需要5G的内存预留

docker-compose -f example/cluster-hostname.yaml up -d

配置文件

version: "3.7"
services:
nacos1:
hostname: nacos1
container_name: nacos1
image: nacos/nacos-server:1.1.0
volumes:
- /usr/local/use_data/nacos/nacos-cluster/nacos-1/data/logs:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8849:8848"
- "9555:9555"
env_file:
- ../env/nacos-hostname.env
restart: on-failure
depends_on:
- mysql-master
- mysql-slave

nacos2:
hostname: nacos2
image: nacos/nacos-server:latest
container_name: nacos2
volumes:
- /usr/local/use_data/nacos/nacos-cluster/nacos-2/data/logs:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8850:8848"
env_file:
- ../env/nacos-hostname.env
restart: on-failure
depends_on:
- mysql-master
- mysql-slave
nacos3:
hostname: nacos3
image: nacos/nacos-server:latest
container_name: nacos3
volumes:
- /usr/local/use_data/nacos/nacos-cluster/nacos-3/data/logs:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8851:8848"
env_file:
- ../env/nacos-hostname.env
restart: on-failure
depends_on:
- mysql-master
- mysql-slave
mysql-master:
container_name: mysql-master
image: nacos/nacos-mysql-master:latest
env_file:
- ../env/mysql-common.env
- ../env/mysql-master.env
volumes:
- /usr/local/use_data/nacos/nacos-cluster/mysql-master:/var/lib/mysql
ports:
- "3306:3306"
mysql-slave:
container_name: mysql-slave
image: nacos/nacos-mysql-slave:latest
env_file:
- ../env/mysql-common.env
- ../env/mysql-slave.env
volumes:
- /usr/local/use_data/nacos/nacos-cluster/mysql-slave:/var/lib/mysql
ports:
- "3305:3306"
depends_on:
- mysql-master
prometheus:
container_name: prometheus
image: prom/prometheus:v2.11.1
volumes:
- ./prometheus/prometheus-cluster.yaml:/etc/prometheus/prometheus.yml
ports:
- "9091:9090"
depends_on:
- nacos1
- nacos2
- nacos3
restart: on-failure
grafana:
container_name: grafana
image: grafana/grafana:6.2.5
ports:
- 3000:3000
restart: on-failure

四、 测试

  • 服务注册
curl -X PUT 'http://{ip}:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'
  • 服务发现
curl -X GET 'http://{ip}:8848/nacos/v1/ns/instances?serviceName=nacos.naming.serviceName'
  • 发布配置
curl -X POST "http://{ip}:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=helloWorld"
  • 获取配置
curl -X GET "http://{ip}:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"
  • 使用浏览器打开
    link:http://${ip}:8848/nacos/
  • Nacos 安装_Prometheus_02

账号:nacos/nacos

  • Nacos 安装_Grafana_03

  • 使用prometheus查看监控数据
    link:http://${ip}:9090
  • Nacos 安装_Prometheus_04


  • Nacos 安装_Nacos_05

  • 使用grafana监控ui面板
    link:http://${ip}:3000

Nacos 安装_Spring Cloud Alibaba_06


Nacos 安装_Spring Cloud Alibaba_07


Nacos 安装_Nacos_08


Nacos 安装_Prometheus_09

Nacos 安装_Prometheus_10

五、 停止和启动nacos

因为使用的是docker-compose编排,故使用docker-compose命令

#查询运行的容器
docker-compose -f example/cluster-hostname.yaml ps
#停止运行的容器
docker-compose -f example/cluster-hostname.yaml stop
#启动容器
docker-compose -f example/cluster-hostname.yaml start
#重启容器
docker-compose -f example/cluster-hostname.yaml restart
#删除容器
docker-compose -f example/cluster-hostname.yaml rm

标签:Nacos,nacos,prometheus,master,env,mysql,安装,Cloud
From: https://blog.51cto.com/u_15814313/5737589

相关文章

  • 2022年最新最详细的MYSQL数据库安装(详细图解过程、毕成功)
    新电脑安装mysql、按照以下教程成功安装。踩了两个坑、特此记录1、下载mysql5.7版本链接:​​mysql5.7网盘地址​​提取码:v7pe2、详细安装教程直接根据下方链接教程就可mysq......
  • 【STM32F407的DSP教程】第2章 Matlab R2018a的安装
    ​​​​第2章  MatlabR2018a的安装本期教程主要是讲解MatlabR2018a的安装过程,作为学习DSP的必备软件,掌握简单的Matlab操作是必须的。2.1初学者重要提示2.2MatlabR2......
  • Flowportal 6.7 安装包
         Flowportal系列安装包,若有需要,请联系QQ(3570881535)......
  • MySQL8.0.30安装教程
    第一步:输入MySQL网站       www.mysql.com  选择DOWNLOADS并点击进入:  选择最下面的“MySQL Community(GPL)Downloads>>”选项,进入下一页  选择......
  • Red Hat 64位安装oracle 客户端sqlplus
    1.首先下载以下两个安装包:oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpmoracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm下载路径:https://www.ora......
  • Ubuntu20.04和22.04离线安装PostgreSQL14
    今天安装Postgresql14遇到一个问题,目标服务器只有内网,内网提供标准的apt仓库,但是因为不能连接外网,所以没法添加第三方仓库,这样安装pg14就成了问题.从pg的官网......
  • consul安装及使用
    Consul是HashiCorp公司的一个用于实现分布式系统的服务发现与配置工具。Consul内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方......
  • vue-cli脚手架的安装
    vue-cli提供一个官方命令行工具,可用于快速搭建大型单页应用。现如今,随着vue.js越来越火爆,更多的项目都用到vue进行开发,在实际的开发项目中,如何搭建开发脚手架呢,今天我分享......
  • CentOS 7.9 安装 rocketmq-4.9.2
    一、CentOS7.9安装rocketmq-4.9.2地址:https://rocketmq.apache.orghttps://github.com/apache/rocketmqhttps://archive.apache.org/dist/rocketmq/4.9.2/rocketmq......
  • ubuntu22 安装gcc
    使用aptitude包依赖管理工具代替apt来处理,aptitude软件包管理工具在解决依赖性问题上更有优势,具体使用方法如下:sudoapt-getinstallaptitude,sudoaptitudeinstallgcc......