因为阿里云学生机内存1G
太寒酸,当我启动第二个Nacos
的时候,机器就躺尸了,不得不切换到虚拟机上操作,nacos
全部放在了一台虚拟机上面,算一个伪集群吧,本文基于CentOS8+MySQL8
,从0
到1
一步步记录,欢迎交流
#切换root用户
su root
#安装jdk
yum install -y java-1.8.0-openjdk*
安装完成,
jdk
默认安装路径为/usr/lib/jvm
#获取jdk安装目录列表,复制jdk程序根目录
ls /usr/lib/jvm
#获取目录如下
java-1.8.0-openjdk-1.8.0.275.b01-1.el8_3.x86_64
配置环境变量
vim /etc/profile
#内容如下
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.275.b01-1.el8_3.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH
#刷新配置
source /etc/profile
切换到
opt
目录,执行下载
wget https://github.com/alibaba/nacos/releases/download/1.4.1/nacos-server-1.4.1.tar.gz
#解压
tar -zxvf nacos-server-1.4.1.tar.gz
#将nacos复制到新建的文件夹
cp -r nacos /mynacos/
#下载MySQL源
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
#安装MySQL源
rpm -Uvh mysql80-community-release-el8-1.noarch.rpm
#安装MySQL
yum install mysql-server
#启动
systemctl start mysqld.service
#进入MySQL 初始无密码
mysql -u root -p
#修改密码
alter user 'root'@'localhost' IDENTIFIED BY '123456';
#刷新配置
FLUSH PRIVILEGES;
#退出重新进入
exit
mysql -uroot -p
#授予外部访问权限,否则navicat无法连接
create user mysql_user;
GRANT ALL ON *.* TO 'mysql_user'@'%';
ALTER USER 'mysql_user'@'%' IDENTIFIED WITH mysql_native_password BY 'xxx';
flush privileges;
使用
navicat
连接测试,使用之前记得开放虚拟机的3306
端口,供外部访问,这里一不做二不休,直接关掉防火墙
systemctl stop firewall.service
#获取本机内网地址,navicat通过此地址可连接
hostname -i
将
nacos
官方提供的SQL
语句初始化执行到MySQL
中,创建nacos
数据库,执行SQL
语句,在这之前,务必保证你已经创建好了一个空的,名称为nacos
的数据库。
思考一个问题,我没启动
nacos
是直接./startup.sh
,并没有指定端口号,但是现在我们要搭建一个nacos
集群,他们的端口号需要区分出来才行。
#备份官方全局配置文件application.properties
cp application.properties application.properties.init
#备份官方的集群配置文件cluster.cong
cp cluster.conf.example cluster.conf
编辑
application.properties
,设置数据库参数
编辑
cluster.conf
,配置集群端口号
编辑
startup.sh
脚本,本来我以为新版的nacos
已经做到了自定义端口,但是一直运行不出来,就尝试修改这个脚本文件,事实是最后确实通过了测试
p
分支修改为如下语句,目的是运行的时候传入一个参数-p
,这个参数传递给PORT
PORT=$OPTARG;;
Dserver.port
-Dserver.port=${PORT}
#安装pcre
wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
#解压
tar -zxvf pcre-8.37.tar.gz
#安装gcc
yum install -y gcc gcc-c++
#进入pcre目录执行configure
./configure
#make
make && make install
#安装其他依赖
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
#安装Nginx
wget http://nginx.org/download/nginx-1.10.2.tar.gz
#解压
tar -zxvf nginx-1.10.2.tar.gz
#configure
./configure
#make
make && make install
make
报错:
编辑
nginx/objs
目录下的Makefile
文件
删除
-Werror
重新
make
make && make install
再次报错
注释图中语句
vim src/os/unix/ngx_user.c
再次
make
进入
nginx
解压后的文件夹,进入conf
,将配置文件复制一份,然后编辑nginx.conf
。找到按图所示,修改三处。
cp nginx.conf nginx.conf.init
官方文档让装
maven
,我不知道这儿有啥用,我就装上了。
#下载
wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
#解压
tar vxf apache-maven-3.3.9-bin.tar.gz
#移动
mv apache-maven-3.3.9 /usr/lib/maven
#环境变量
export MAVEN_HOME=/usr/lib/maven
export PATH=${PATH}:${MAVEN_HOME}/bin
source /etc/profile
#检查是否成功
mvn -v
直接一不做二不休,停止防火墙
systemctl stop firewall.service
./startup.sh -p 3333
./startup.sh -p 4444
./startup.sh -p 5555
#进入usr/local/nginx/sbin目录,启动nginx服务
./nginx -c /etc/nginx/nginx-1.10.2/conf/nginx.conf
打开微服务
9001
,修改nacos
服务地址
修改完毕,启动,打开
nacos
控制台查看
尝试新增一个配置文件
前往数据库查看
大功告成
过程确实不易,大概花了小半天才搭好,报错不要紧,要会去分析nginx
和nacos
的errorlog
,这些都是排查问题的途径,春招快开始了,原计划想再搭一个基于docker-compose
的nacos
集群,但是时间真的不允许了。。。