nacos集群安装
1.预备环境准备
Nacos 依赖 Java 环境来运行。如果您是从代码开始构建并运行Nacos,还需要为此配置 Maven环境,请确保是在以下版本环境中安装使用:
- 64 bit OS,支持 Linux/Unix/Mac/Windows,推荐选用 Linux/Unix/Mac。
- 64 bit JDK 1.8+;下载 & 配置。
- Maven 3.2.x+;下载 & 配置。
2.下载源码或者安装包
你可以通过源码和发行包两种方式来获取 Nacos。
从 Github 上下载源码方式
下载地址:https://github.com/alibaba/nacos/releases
单机版
#1.下载 nacos-server-1.1.4.tar.gz
#2.需要安装基础环境(java + maven)
[root@nacos ~]# yum install java maven -y
#3.安装Nacos server服务
[root@nacos ~]# tar xf nacos-server-1.1.4.tar.gz
[root@nacos ~]# cd nacos/bin/
#4.启动
Linux/Unix/Mac
启动命令(standalone代表着单机模式运行,非集群模式):
[root@nacos ~]# sh startup.sh -m standalone (启动单机版)
Windows
启动命令:
cmd startup.cmd
或者双击startup.cmd运行文件。
3.外部mysql数据库支持
单机模式时nacos默认使用嵌入式数据库实现数据的存储,若想使用外部mysg|存储nacos数据,需要进行以下步骤:
●1.安装数据库,版本要求: 5.6.5+ , mysgl 8以下
●2.初始化mysq|数据库 ,新建数据库nacos_ config ,数据库初始化文件: ${nacoshome}/conf/nacos-mysgl.sgl
●3.修改${nacoshcme}/conf/application.properties文件,增加支持mysq|数据源配置(目前只支持mysgl ) , 添加mysg|数据源的ur、用户名和密码。
#1.安装mysql5.7.26数据库
MySQL5.7.26下载地址
https://downloads.mysql.com/archives/community/
1.上传软件或下载软件至:/usr/local
[root@yearning local]# ls
bin games lib libexec sbin src
etc include lib64 mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz share
[root@yearning local]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz #解压软件包
[root@yearning local]# ln -s mysql-5.7.26-linux-glibc2.12-x86_64 mysql57 #做一个软连接
[root@yearning local]# mkdir -p /data/mysql/data_3306 #数据路径
[root@yearning local]# mkdir -p /data/mysql/binlog_3306 #日志路径
2.用户创建
[root@yearning ~]# useradd mysql #创建一个mysql用户
3.授权
[root@yearning ~]# chown -R mysql.mysql /usr/local/mysql57 /data
4.环境变量
[root@yearning ~]# vim /etc/profile
#在文件最后添加一行环境变量
export PATH=/usr/local/mysql57/bin:$PATH
[root@yearning ~]# source /etc/profile #加载环境变量
5.残留处理
[root@yearning ~]# rpm -qa |grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[root@yearning ~]# yum remove mariadb-libs -y #卸载残留
6.数据初始化(建系统库)
[root@yearning ~]# yum install libaio-devel -y #安装需要依赖
[root@yearning ~]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql57 --datadir=/data/mysql/data_3306 #初始化数据
7.准备配置文件
cat > /etc/my.cnf <<EOF
[mysqld]
user=mysql
port=3306
basedir=/usr/local/mysql57
datadir=/data/mysql/data_3306
server_id=6
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
EOF
8.准备启动脚本
[root@yearning ~]# cd /usr/local/mysql57/support-files
[root@yearning support-files]# cp mysql.server /etc/init.d/mysqld
[root@yearning support-files]# chkconfig --add mysqld
[root@yearning support-files]# systemctl start mysqld
[root@yearning support-files]# systemctl restart mysqld
[root@yearning support-files]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.26 MySQL Community Server (GPL)
mysql>
#数据库就安装完毕
# mysqladmin -u root password +自己密码 #为数据库设置密码
[root@db01 ~]# mysql
db01 [(none)]>create database nacos_config charset utf8mb4;
db01 [(none)]>show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| Yearning |
| mysql |
| nacos_config |
| performance_schema |
| sys |
| test |
+--------------------+
7 rows in set (0.01 sec)
db01 [(none)]>use nacos_config;
Database changed
db01 [nacos_config]>source /root/nacos-mysql.sql;
db01 [nacos_config]>Grant ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
db01 [nacos_config]>flush privileges;
[root@nacos conf]# pwd
/root/nacos/conf
[root@nacos conf]# ls
application.properties application.properties.example cluster.conf.example nacos-logback.xml nacos-mysql.sql schema.sql
#修改数据库连接地址
[root@nacos conf]# vim application.properties
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.35.5:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456
#重启Nacos
[root@nacos bin]# sh startup.sh -m standalone
集群搭建
- 主机规划
192.168.35.4:8848 #nacos
192.168.35.5:8848 #mysql(nacos2)
192.168.35.6:8848 #nacos3
- MYSQL规划
192.168.35.5 3306 5.7.26 #已安装好
配置Nacos节点信息
Nacos 192.168.35.4
#1.上传 nacos-server-1.1.4.tar.gz
#2.解压
[root@nacos ~]# tar xf nacos-server-1.1.4.tar.gz
[root@nacos ~]# cd nacos
#3.修改配置
[root@nacos nacos]# cd conf/
[root@nacos conf]# ls
application.properties application.properties.example cluster.conf.example nacos-logback.xml nacos-mysql.sql schema.sql
[root@nacos conf]# vim application.properties #修改数据库的连接信息(nacos支持数据库的主备模式)
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
nacos.inetutils.ip-address=192.168.35.4 #搭建集群,添加自己的地址
#在配置的最后加数据库的信息(nacos支持数据库的主备模式)
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.35.5:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
#db.url.1=jdbc:mysql://192.168.35.5:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true (备数据库的地址)
db.user=root
db.password=123456
[root@nacos conf]# cp cluster.conf.example cluster.conf
[root@nacos conf]# vim cluster.conf
#it is ip
#example
192.168.35.4:8848
192.168.35.5:8848
192.168.35.6:8848
[root@nacos nacos]# cd ../bin/
[root@mysql bin]# vim startup.sh
#修改第85行,如果内存不够,可以将内存调小
修改前:
JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
修改后:
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
#4.启动集群
[root@nacos bin]# sh startup.sh
#看日志
[root@nacos bin]# tail -f /root/nacos/logs/start.out
)]
出现这样,说明启动成功
其它节点也一样
上图就是集群搭建成功