1肩杈、GitHub下載Nacos安裝包
(https://github.com/alibaba/nacos/releases)
這次下載的版本:https://github.com/alibaba/nacos/releases/tag/2.3.2
https://github.com/alibaba/nacos/releases/download/2.3.2/nacos-server-2.3.2.tar.gz
#根據(jù)版本修改路徑中的2.3.2
[root@anolis8 ~]# wget https://github.com/alibaba/nacos/releases/download/2.3.2/nacos-server-2.3.2.tar.gz
[root@anolis8 ~]# tar -zxvf nacos-server-2.3.2.tar.gz
nacos/LICENSE
nacos/NOTICE
nacos/target/nacos-server.jar
nacos/conf/
nacos/conf/derby-schema.sql
nacos/conf/1.4.0-ipv6_support-update.sql
nacos/conf/application.properties.example
nacos/conf/nacos-logback.xml
nacos/conf/mysql-schema.sql
nacos/conf/cluster.conf.example
nacos/conf/application.properties
nacos/bin/startup.sh
nacos/bin/startup.cmd
nacos/bin/shutdown.sh
nacos/bin/shutdown.cmd
[root@anolis8 ~]# mv nacos /usr/local/
[root@anolis8 ~]# cd /usr/local/nacos/conf/
[root@anolis8 conf]# ll
總用量 104K
-rw-r--r-- 1 502 games 1.2K 2月 6 09:58 1.4.0-ipv6_support-update.sql
-rw-r--r-- 1 502 games 154 2月 27 16:02 announcement_en-US.conf
-rw-r--r-- 1 502 games 127 2月 27 16:02 announcement_zh-CN.conf
-rw-r--r-- 1 502 games 13K 4月 22 10:10 application.properties
-rw-r--r-- 1 502 games 11K 2月 6 09:58 application.properties.example
-rw-r--r-- 1 502 games 670 2月 6 09:58 cluster.conf.example
-rw-r--r-- 1 502 games 300 2月 6 09:58 console-guide.conf
-rw-r--r-- 1 502 games 8.8K 2月 6 09:58 derby-schema.sql
-rw-r--r-- 1 502 games 11K 2月 6 09:58 mysql-schema.sql
-rw-r--r-- 1 502 games 32K 2月 6 09:58 nacos-logback.xml
2、在/usr/local/nacos/conf/下找到mysql-schema.sql,在已經(jīng)安裝好的mysql數(shù)據(jù)庫(kù)中建立數(shù)據(jù)庫(kù)独撇,新增用戶名密碼授權(quán),執(zhí)行sql腳本
數(shù)據(jù)庫(kù)名nacos_config
字符集utf8mb4
排序規(guī)則utf8mb4_general_ci
3、修改conf下的application.properties配置文件
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.
# spring.datasource.platform=mysql
spring.sql.init.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://172.16.17.210:3306/nacos_232?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=nacos
db.password.0=nacos
注意數(shù)據(jù)庫(kù)版本,是否mysql8以上损趋。
放開數(shù)據(jù)庫(kù)配置,并修改為上面定義的數(shù)據(jù)配置信息保存
4椅寺、開放8848浑槽、9848、9849返帕、7848端口
firewall-cmd --zone=public --add-port=8848/tcp --permanent
firewall-cmd --zone=public --add-port=9848/tcp --permanent
firewall-cmd --zone=public --add-port=9849/tcp --permanent
firewall-cmd --zone=public --add-port=7848/tcp --permanent
systemctl restart firewalld
5桐玻、啟動(dòng)nacos
#修改startup.sh在29行修改
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
修改為
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/local/jdk1.8.0_11
--------------------
/usr/local/jdk1.8.0_11 為本機(jī)的 JAVA_HOME
--------------------
cd ../bin
sh startup.sh -m standalone
6、驗(yàn)證(換成自己的IP荆萤,默認(rèn)用戶名密碼 nacos/nacos)
http://172.16.17.222:8848/nacos/
7畸冲、集群配置
在/usr/local/nacos/conf目錄下修改cluster.conf文件
[root@nacos1 conf]# vim cluster.conf
添加如下配置
2024-04-22T10:03:57.892
172.16.17.222:8848
172.16.17.223:8848
172.16.17.224:8848
保存后退出。
8观腊、配置為service服務(wù)
#建立service文件
vim /lib/systemd/system/nacos.service
[Unit]
Description=nacos
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
如果是單機(jī)模式這個(gè)語(yǔ)句需要修改為如下,ExecStart=/usr/local/nacos/bin/startup.sh -m standalone
[Unit]
Description=nacos
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh -m standalone
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
保存后執(zhí)行以下命令
加載新建的nacos.service
systemctl daemon-reload
設(shè)置nacos.service 為開機(jī)啟動(dòng)
systemctl enable nacos.service
開啟nacos.service服務(wù)
systemctl start nacos.service
關(guān)閉nacos.service服務(wù)
systemctl stop nacos.service
查看 nacos.service服務(wù)狀態(tài)
systemctl status nacos.service -l
9算行、其他使用設(shè)置
參考
https://blog.csdn.net/xionglangs/article/details/118145684
10梧油、配置nginx負(fù)載均衡
http://www.reibang.com/p/3ab9ef944c65
11、關(guān)于鑒權(quán)
官方文檔
https://nacos.io/zh-cn/docs/v2/guide/user/auth.html
nacos2.3.2版本安裝后默認(rèn)是沒有開啟鑒權(quán)的州邢,也就是訪問是不需要賬號(hào)密碼登錄的儡陨!可以直接訪問。
要開啟鑒權(quán)需要根據(jù)官方文檔配置:
修改/usr/local/nacos/conf/application.properties配置文件
#參數(shù)名
nacos.core.auth.enabled #145行
#默認(rèn)值
false #默認(rèn)不開啟
#功能
是否開啟鑒權(quán)功能
改為:nacos.core.auth.enabled=true
-----------------------
#參數(shù)名
nacos.core.auth.system.type=nacos #142行
#默認(rèn)值
nacos #可選值ldap
#功能
鑒權(quán)類型
保持默認(rèn)
-----------------------
#參數(shù)名
nacos.core.auth.enable.userAgentAuthWhite
#默認(rèn)值
false #151行 默認(rèn)false
#功能
是否使用useragent白名單量淌,主要用于適配老版本升級(jí)骗村,置為true時(shí)有安全風(fēng)險(xiǎn)
-----------------------
#參數(shù)名
nacos.core.auth.server.identity.key #155行
#默認(rèn)值
serverIdentity #(2.2.1后無默認(rèn)值),默認(rèn)為空
#功能
用于替換useragent白名單的身份識(shí)別key呀枢,使用默認(rèn)值有安全風(fēng)險(xiǎn)
-----------------------
#參數(shù)名
nacos.core.auth.server.identity.value #156行
#默認(rèn)值
security #(2.2.1后無默認(rèn)值)胚股,默認(rèn)為空
#功能
用于替換useragent白名單的身份識(shí)別value,使用默認(rèn)值有安全風(fēng)險(xiǎn)
-----------------------
#參數(shù)名
nacos.core.auth.plugin.nacos.token.secret.key #163行
#默認(rèn)值
SecretKey012345678901234567890123456789012345678901234567890123456789(2.2.1后無默認(rèn)值)) #默認(rèn)為空
#功能
默認(rèn)鑒權(quán)插件用于生成用戶登陸臨時(shí)accessToken所使用的密鑰裙秋,使用默認(rèn)值有安全風(fēng)險(xiǎn)
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
-----------------------
#參數(shù)名
nacos.core.auth.plugin.nacos.token.expire.seconds
#默認(rèn)值
18000 #154行琅拌,默認(rèn)18000
#功能
用戶登陸臨時(shí)accessToken的過期時(shí)間
修改后的配置片段如圖
保存退出后,再啟動(dòng)nacos服務(wù)就需要賬號(hào)密碼登錄了摘刑,默認(rèn)是賬號(hào)nacos 密碼nacos