Nacos集群部署
准備環境
-
64 bit OS Linux/Unix/Mac,推薦使用Linux系統。 -
64 bit JDK 1.8+; JDK1.8下載以及安裝配置。 -
Maven 3.2x+; -
3個或3個以上Nacos節點才能構成集群 -
nacos-server-1.4.0.tar.gz下載
安裝Mysql5.7數據庫
請根據Mysql5.7.14安裝教程進行安裝。
Nacos數據庫配置
1.上傳tar包並解壓
tar -zxvf nacos-server-1.4.0.tar.gz

解壓之后
nacos
的目錄結構
2.創建nacos數據庫
-
查看nacos數據庫sql腳本
cd /home/downloads/nacos/conf

-
創建nacos數據庫
-- 創建數據庫
create database nacos;
-- use nacos
use nacos;
-- 執行數據庫腳本
source /home/downloads/nacos/conf/nacos-mysql.sql;
-- 查看數據庫表
show tables;
3.修改nacos
數據庫信息
將Nacos內置型數據庫切換為Mysql數據庫
-
備份配置文件
cp application.properties application.properties.bak
-
修改 application.properties
配置文件中mysql配置
### 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=root
db.password=root
Nacos集群部署
在Linux服務器上配置的nacos的集群配置文件為
cluster.conf
1.復制配置文件
cp /home/downloads/nacos/conf/cluster.conf.example cluster.conf
2.修改集群配置文件
#查看本機網卡IP
[root@centos conf]# hostname -I
192.168.15.100 172.17.0.1
#配置集群節點ip和端口
[root@centos conf]# vim cluster.conf
#it is ip
#example
#192.168.16.101:8847
#192.168.16.102
#192.168.16.103
#添加本機ip+集群節點端口
192.168.15.100:8818
192.168.15.100:8828
192.168.15.100:8838
3.修改Nacos集群的啟動腳本
首先備份下原始啟動腳本
cp /home/downloads/nacos/bin/startup.sh /home/downloads/nacos/bin/startup.sh.bak
修改啟動腳本
[root@centos bin]# vim startup.sh
# 142行
142 nohup $JAVA ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
#修改如下,添加-Dserver.port=${PORT}`
142 nohup $JAVA -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
4.查看集群各節點是否啟動
[root@centos bin]# ps -ef|grep nacos|grep -v grep|wc -l
Nginx負載均衡部署
1.下載Nginx
Nginx下載地址:https://nginx.org/download/nginx-1.18.0.tar.gz
2.安裝nginx依賴庫
-
安裝 gcc
環境
#nginx 編譯時依賴gcc環境
[root@centos software]# yum -y install gcc gcc-c++
-
安裝 pcre
# 讓nginx支持重寫功能
[root@centos software]# yum -y install pcre pcre-devel
-
安裝 zlib
# zlib庫提供了很多壓縮和解壓縮的方式,nginx使用zlib對http包內容進行gzip壓縮
[root@centos software]# yum -y install zlib zlib-devel
-
安裝 openssl
# 安全套接字層密碼庫,用於通信加密
[root@centos software]# yum -y install openssl openssl-devel
3.解壓nginx壓縮包
tar -zxvf nginx-1.18.0.tar.gz
4.檢查編譯環境
# 進入壓縮目錄
[root@centos software]# cd nginx-1.18.0
# --prefix=/usr/local/nginx 是 nginx 編譯安裝的目錄(默認),安裝完后會在此目錄下生成相關文件
[root@centos nginx-1.18.0]# ./configure --prefix=/usr/local/nginx
5.源碼編譯安裝
# 編譯
[root@centos nginx-1.18.0]# make
# 安裝
[root@centos nginx-1.18.0]# make install
6.nginx設置軟連接
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
7.Nginx啟動
-
啟動nginx服務
[root@centos nginx-1.18.0]# nginx
-
Web訪問nginx,默認端口是80

-
查看nginx進程
[root@centos nginx-1.18.0]# ps -ef |grep nginx
root 75855 1 0 16:04 ? 00:00:00 nginx: master process nginx
nobody 75856 75855 0 16:04 ? 00:00:00 nginx: worker process
root 75863 61143 0 16:06 pts/1 00:00:00 grep --color=auto nginx
-
重新加載nginx服務
[root@centos nginx-1.18.0]# ps -ef |grep nginx
root 75855 1 0 16:04 ? 00:00:00 nginx: master process nginx
nobody 75866 75855 0 16:06 ? 00:00:00 nginx: worker process
root 75868 61143 0 16:06 pts/1 00:00:00 grep --color=auto nginx
兩次的進程號不一樣,master進程沒有變化
-
停止nginx服務
[root@centos nginx-1.18.0]# nginx -s stop
[root@centos nginx-1.18.0]# ps -ef |grep nginx
root 75871 61143 0 16:08 pts/1 00:00:00 grep --color=auto nginx
Nginx整合Nacos
1.備份nginx配置文件
cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
2.配置nginx配置文件
[root@centos conf]# vim nginx.conf
#gzip on;
upstream cluster{
server 127.0.0.1:8818;
server 127.0.0.1:8828;
server 127.0.0.1:8838;
}
server {
listen 8888;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
# root html;
# index index.html index.htm;
proxy_pass http://cluster;
}
修改處:
增加 upstream cluster server的監聽端口 80 --> 8888 location注釋掉原有的,增加 proxy_pass http://cluster
3.啟動Nacos集群
$ cd /opt/nacos/bin
$ ./startup.sh -p 8818
$ ./startup.sh -p 8828
$ ./startup.sh -p 8838
4.web訪問測試
# 虛擬機IP:8888/nacos
# 賬號: nacos
# 密碼: nacos
完結補充說明:
本次Nacos
集群並未搭建成功,原因是由於本次學習使用的是本地虛擬機,由於nacos
集群模式啟動,所需內存過大無法啟動,即使改小也不行,因為當前目錄內存太小。
