Nacos 本地單機(jī)版部署步驟和使用
不點(diǎn)藍(lán)字關(guān)注,我們哪來故事?

正文如下
本系列是 Spring Cloud 微服務(wù)實(shí)戰(zhàn)系列教程。之前在 《Spring Cloud Eureka 入門 (一)服務(wù)注冊(cè)中心詳解》 聊過 Spring Cloud Eureka。那今天聊聊阿里開源的 Nacos ~
一、Nacos 是什么?
先了解下 Spring Cloud Eureka 是基于 Netflix Eureka (Netflix 是 Java 實(shí)現(xiàn)的開源軟件)。服務(wù)治理(Eureka)包括服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)和服務(wù)檢測(cè)監(jiān)控等。
那 Nacos 致力于發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡(jiǎn)單易用的特性集,幫助您快速實(shí)現(xiàn)動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理。
簡(jiǎn)而言之,Nacos 包含了微服務(wù)的配置管理 + 服務(wù)的注冊(cè)、發(fā)現(xiàn)等監(jiān)控。微服務(wù)也包括了 Spring Cloud 的微服務(wù)實(shí)現(xiàn)。
Nacos 其特性重點(diǎn)包含了以下:
服務(wù)發(fā)現(xiàn)和服務(wù)健康監(jiān)測(cè) 動(dòng)態(tài)配置服務(wù) 動(dòng)態(tài) DNS 服務(wù) 服務(wù)及其元數(shù)據(jù)管理 等等
官方圖如下:

二、如何本地部署和使用 Nacos
可以在 github 上 Nacos Release 版本列表中下載最新的穩(wěn)定版本。地址:
https://github.com/alibaba/nacos/releases
當(dāng)前穩(wěn)定版本:2.0.3
2.1 環(huán)境準(zhǔn)備
Nacos 依賴 Java 環(huán)境,所以如果從源碼構(gòu)建并運(yùn)行 Nacos 需要配置如下:
JDK 1.8+ Maven 3.2+ 64 bit OS 支持 Linux/Unix/Mac/Windows,推薦選用 Linux/Unix/Mac
如果本機(jī)部署的話,不需要從源碼構(gòu)建,則只需要下載編譯后的壓縮包和 JDK 1.8+ 環(huán)境即可
2.2 下載編譯后的壓縮包
在 https://github.com/alibaba/nacos/releases 地址中,下載 nacos-server-2.0.3.zip 壓縮包。然后執(zhí)行一下解壓命令:
unzip nacos-server-2.0.3.zip
這樣目錄中會(huì)出現(xiàn) Nacos 的項(xiàng)目目錄
2.3 啟動(dòng)前配置
目錄結(jié)構(gòu)如下:
nacos % ls -l
total 48
-rw-r--r--@ 1 qq staff 16583 3 18 2021 LICENSE
-rw-r--r--@ 1 qq staff 1305 5 14 2020 NOTICE
drwxr-xr-x@ 8 qq staff 256 12 3 14:25 bin
drwxr-xr-x@ 9 qq staff 288 7 27 14:18 conf
drwxr-xr-x 6 qq staff 192 12 3 14:43 data
drwxr-xr-x 35 qq staff 1120 12 3 14:25 logs
drwxr-xr-x@ 3 qq staff 96 7 28 19:28 target
進(jìn)入 conf 目錄,目錄結(jié)構(gòu)如下:
conf % ls -l
total 176
-rw-r--r--@ 1 qq staff 1224 6 18 10:39 1.4.0-ipv6_support-update.sql
-rw-r--r--@ 1 qq staff 9752 12 3 14:41 application.properties
-rw-r--r--@ 1 qq staff 9506 7 27 14:18 application.properties.example
-rw-r--r--@ 1 qq staff 670 3 18 2021 cluster.conf.example
-rw-r--r--@ 1 qq staff 31156 7 15 19:19 nacos-logback.xml
-rw-r--r--@ 1 qq staff 10660 6 18 10:39 nacos-mysql.sql
-rw-r--r--@ 1 qq staff 8795 6 18 10:39 schema.sql
這次部署,目錄中其中兩個(gè)文件需要知曉:
application.properties 配置文件 nacos-mysql.sql 數(shù)據(jù)庫 MySQL 庫表信息文件
1/ 創(chuàng)建數(shù)據(jù)庫 nacos 并執(zhí)行 nacos-mysql.sql
本次測(cè)試用 MySQL 作為數(shù)據(jù)存儲(chǔ),則需要在 MySQL 中新建數(shù)據(jù)庫 nacos,命令如下:
CREATE DATABASE nacos
然后再數(shù)據(jù)庫中執(zhí)行建表和插入默認(rèn)數(shù)據(jù)操作,具體看 nacos-mysql.sql 文件。
2/ 修改 application.properties 配置文件
然后打開 application.properties 配置文件,對(duì)應(yīng)的地方改成如下:
#*************** 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=admin
db.password.0=123456
2.4 運(yùn)行并使用 Nacos
以 Mac 本機(jī)為例,啟動(dòng)下面命令:
cd nacos/bin
sh startup.sh -m standalone
standalone 代表著單機(jī)模式運(yùn)行,非集群模式
控制臺(tái)可以看到以下信息:
nacos is starting with standalone
nacos is starting,you can check the /Users/qq/project/nacos/logs/start.out
那如何看 Nacos 日志,從上面可見日志輸出在 nacos/logs 目錄,查看 start.out 日志文件執(zhí)行如下命令:
tail -200f /Users/qq/project/nacos/logs/start.out
控制臺(tái)可以看到以下信息:
,--.
,--.'|
,--,: : | Nacos 2.0.3
,`--.'`| ' : ,---. Running in stand alone mode, All function modules
| : : | | ' ,'\ .--.--. Port: 8848
: | \ | : ,--.--. ,---. / / | / / ' Pid: 2452
| : ' '; | / \ / \. ; ,. :| : /`./ Console: http://xxxx:8848/nacos/index.html
' ' ;. ;.--. .-. | / / '' | |: :| : ;_
| | | \ | \__\/: . .. ' / ' | .; : \ \ `. https://nacos.io
' : | ; .' ," .--.; |' ; :__| : | `----. \
| | '`--' / / ,. |' | '.'|\ \ / / /`--' /
' : | ; : .' \ : : `----' '--'. /
; |.' | , .-./\ \ / `--'---'
'---' `--`---' `----'
...
2021-12-04 15:25:18,201 INFO Tomcat started on port(s): 8848 (http) with context path '/nacos'
這說明部署成功,電腦運(yùn)行 Nacos 很簡(jiǎn)單,直接打開瀏覽器,輸入地址:
http://localhost:8848/nacos/index.html
賬號(hào)密碼默認(rèn)都為 nacos,如圖


如何關(guān)閉呢?
關(guān)閉命令:
sh shutdown.sh
控制臺(tái)會(huì)響應(yīng):
The nacosServer(4317) is running...
Send shutdown request to nacosServer(4317) OK
三、Nacos 小結(jié)
本文主要描述 Nacos 和 Nacos 的使用場(chǎng)景,然后本地部署 Nacos,達(dá)到可用狀態(tài)。如果需要服務(wù)器部署,切記不能單機(jī)模式。Nacos 主要是微服務(wù)的配置中心和服務(wù)注冊(cè)中心。
后續(xù)系列文章,會(huì)結(jié)合 Spring Cloud 微服務(wù)實(shí)踐 Nacos 細(xì)節(jié)。
往期推薦
END
若覺得文章對(duì)你有幫助,隨手轉(zhuǎn)發(fā)分享,也是我們繼續(xù)更新的動(dòng)力。
長(zhǎng)按二維碼,掃掃關(guān)注哦
?「C語言中文網(wǎng)」官方公眾號(hào),關(guān)注手機(jī)閱讀教程 ?

