Nacos入门指南02 – 环境搭建

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 Nacos入门指南02 – 环境搭建,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

本文的目的是把 Nacos 跑起来,并体验一下 Nacos 的 OpenAPI。

1. 环境搭建

有2种方式:

(1)手动编译、启动

(2)使用 Docker 容器

1.1 手动编译启动

步骤1 – 编译 Nacos
有2种方式,可以下载源码后自己编译,也可以直接下载官方编译后的。

方式1 – 源码编译
从 GitHub 上下载 Nacos 项目源码,项目地址:

git clone https://github.com/alibaba/nacos.git

下载好项目源码后,进入目录,进行编译:

mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

第一次编译的时间会很长,需要下载大量的依赖包。

完成后,成果位置:

distribution/target/nacos-server-$version/nacos

小提示:如果在 GitHub 下载速度慢的话,建议到国内的码云下载。

码云同步了 GitHub 中知名项目,所以从这下载会很快。操作如下图。
在这里插入图片描述
方式2 – 下载官方编译的包
官方也提供了编译好的压缩包,可以在 GitHub 中直接下载。
在这里插入图片描述
在 Nacos 项目首页的右侧,有一个 Releases 部分,点进去。
在这里插入图片描述
这就是编译后的压缩包,下载即可。
可惜的是码云中只同步了源码,并没有同步发布页面中的内容,直接在 GitHub 中下载会很慢。

步骤2 – 启动
在 nacos 编译后的目录下执行:

sh bin/startup.sh -m standalone

-m standalone 表示使用单机方式启动,这是最简单的方式,适合我们练习使用。
启动后的效果如下:
在这里插入图片描述
Nacos 会在后台启动,最后提示了日志的输出位置。
如果是 Windows 系统,执行 startup.cmd 即可。

1.2 Docker 容器

Nacos 官方提供了 Docker 镜像,可以直接使用:

# 下载 nacos docker 项目
git clone https://github.com/nacos-group/nacos-docker.git

# 单机模式启动
cd nacos-docker
docker-compose -f example/standalone-derby.yaml up

会启动3个容器:

  1. prometheus,用于采集 nacos 数据,进行监控
  2. grafana,用于图形化显示监控数据
  3. nacos-standalone,nacos server
    nacos 容器的本机挂载端口为 8848,访问其控制台

http://localhost:8848/nacos
在这里插入图片描述

默认的用户名与密码都为 nacos。

2. 体验 Nacos API

下面体验4个主要 API :

1)注册实例
2)心跳
3)查询服务实例列表
4)注销实例

2.1 注册实例

发送请求:

curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=service-a&ip=192.168.1.1&port=8080'

查看控制台中的服务列表:
在这里插入图片描述
已经注册成功了,但 service-a 这个服务实例是不存在的,怎么能注册成功呢?

Nacos 注册中心不管是否真的存在,只要能注册上来,并且一直有心跳就认为此实例是存活的,没心跳就删掉。

2.2 实例心跳

发送请求:

curl -X PUT 'http://127.0.0.1:8848/nacos/v1/ns/instance/beat?serviceName=service-a&beat=%7B%22ip%22:%22192.168.31.1%22,%22port%22:8080%7D'

此接口有2个参数,serviceName 和 beat,其中 beat 的值有点乱,这是因为其值是 JSON 字符串,需要进行 URL 编码,例如:
在这里插入图片描述
搜一个在线URL编码张展即可。

2.3 查询服务实例列表

发送请求:

curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=service-a'

返回:

{
    "metadata":{

    },
    "dom":"service-a",
    "cacheMillis":3000,
    "useSpecifiedURL":false,
    "hosts":[
        {
            "valid":true,
            "marked":false,
            "metadata":null,
            "instanceId":"192.168.31.1#8080#DEFAULT#DEFAULT_GROUP@@service-a",
            "port":8080,
            "healthy":true,
            "ip":"192.168.31.1",
            "clusterName":"DEFAULT",
            "weight":0,
            "ephemeral":true,
            "serviceName":"service-a",
            "enabled":true
        }
    ],
    "name":"DEFAULT_GROUP@@service-a",
    "checksum":"2be56e35d79c2cf9982e0b5e19b2bd29",
    "lastRefTime":1604222416258,
    "env":"",
    "clusters":""
}

2.4 注销实例

发送请求:

curl -X DELETE 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=service-a&ip=192.168.31.1&port=8080'

指定服务名、实例IP与端口。

查看控制台的服务列表:
在这里插入图片描述
已经空了。

【上一篇】Nacos入门指南01 – Nacos是什么?
【下一篇】Nacos入门指南03 – 服务发现实践

【原文】https://cloud.tencent.com/developer/inventory/2660/article/1737028

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/146205.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!