14_基于Nacos实现高可用服务注册中心部署

基于Nacos实现高可用服务注册中心部署

Nacos原理已经讲完了,如果说后续我们要做一个C2C二手电商平台的社会化治理系统的项目案例,以及落地后续的一系列的微服务架构,首先我们就知道,必须得有一个服务注册中心,技术选型和对比,以及nacos原理和讲解,已经都说完了

做一个nacos高可用集群的部署,不会做简单的单机部署,生产环境肯定是高可用的集群部署的,我们就按照这套思路来做,需要3台虚拟机,centos 7.x去部署,我用的虚拟机软件是virtualbox

如何创建虚拟机,以及在虚拟机里安装centos 7.x操作系统,准备好3台centos机器,我之前在其他的课程里有讲过,所以视频直接抽了几个出来,如何安装和部署centos虚拟机,会看到4个视频,按照4个视频步骤,以及使用我提供的资料里的网盘链接里面有,你需要的centos和jdk

配置操作系统和网络

安装3台虚拟机以及centos操作系统,jdk需要安装好

参考视频以及以下内容去创建一个CentOS 7.x的虚拟机

1.使用课程提供的CentOS 7镜像即可,CentOS-7-x86_64-Minimal-1611.iso

链接:https://pan.baidu.com/s/1UuBLvuljNmScqtjuXDqsOA
提取码:3zoq

2.创建虚拟机:打开Virtual Box,点击“新建”按钮,点击“下一步”,输入虚拟机名称为hbase-standalone,选择操作系统为Linux,选择版本为Red Hat-64bit,分配2048 MB内存,后面的选项全部用默认,在Virtual Disk File location and size中,一定要自己选择一个目录来存放虚拟机文件,最后点击“create”按钮,开始创建虚拟机。

3.设置虚拟机网卡:选择创建好的虚拟机,点击“设置”按钮,在网络一栏中,连接方式中,选择“Bridged Adapter”。虚拟机必须有一块网卡,这块网卡是通过什么方式去宿主机里的网卡进行通讯,桥接网卡,就可以让你的虚拟机里的网卡跟你宿主机的一块网卡进行通讯

4.安装虚拟机中的CentOS 7操作系统:选择创建好的虚拟机,点击“开始”按钮,选择安装介质(即本地的CentOS 7镜像文件),按照课程选择后自动安装即可

5.安装完以后,CentOS会提醒你要重启一下,就是reboot,你就reboot就可以了。

6.配置网络

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

先让它动态分配一个ip地址

ONBOOT=yes

service network restart
ip addr

再设置静态ip地址

BOOTPROTO=static
IPADDR=192.168.31.250
NETMASK=255.255.255.0
GATEWAY=192.168.31.1 【桥接需要用宿主机的网关地址】

service network restart

配置DNS

检查NetManager的状态:systemctl status NetworkManager.service
检查NetManager管理的网络接口:nmcli dev status
检查NetManager管理的网络连接:nmcli connection show
设置dns:nmcli con mod enp0s3 ipv4.dns "114.114.114.114 8.8.8.8"
让dns配置生效:nmcli con up enp0s3

7.配置hosts

vi /etc/hosts

配置本机的hostname到ip地址的映射

8.配置SecureCRT

此时就可以使用SecureCRT从本机连接到虚拟机进行操作了

一般来说,虚拟机管理软件,virtual box,可以用来创建和管理虚拟机,但是一般不会直接在virtualbox里面去操作,因为比较麻烦,没有办法复制粘贴

SecureCRT,在windows宿主机中,去连接virtual box中的虚拟机

收费的,我这里有完美破解版,跟着课程一起给大家,破解

9.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

关闭windows的防火墙

后面要搭建集群,有的大数据技术的集群之间,在本地你给了防火墙的话,可能会没有办法互相连接,会导致搭建失败

10.配置yum

yum clean all
yum makecache
yum install wget

【可以不操作】

(11)安装JDK

1、将jdk-8u131-linux-x64.rpm通过WinSCP上传到虚拟机中
2、安装JDK:rpm -ivh jdk-8u131-linux-x64.rpm
3、配置jdk相关的环境变量

vi /root/.bashrc

export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin

source .bashrc

4、测试jdk安装是否成功:

java -version

12.在另外2个虚拟机中安装CentOS集群

按照上述步骤,再安装2台一模一样环境的linux机器

安装好之后,在每台机器的hosts文件里面,配置好所有的机器的ip地址到hostname的映射关系

比如说,的hosts里面

192.168.31.xxx hadoop01
192.168.31.xxx hadoop02
192.168.31.xxx hadoop03

13.配置3台CentOS为ssh免密码互相通信

首先在三台机器上分别各自执行下面的命令生成自己的文件:

ssh-keygen -t rsa

生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下

在三台机器上分别各自进入目录,拷贝自己的公钥文件为authroized_keys文件,让三台机器先各自对自己免密码ssh可以登录

cd /root/.ssh
cp id_rsa.pub authorized_keys

将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了
接着配置三台机器互相之间的ssh免密码登录,在每台机器上执行下面的命令
使用

ssh-copy-id -i hostname

命令将本机的公钥拷贝到指定机器的authorized_keys文件中


配置nacos

编译nacos:下载nacos-server-1.4版本的源码,接着进行编译

git clone https://github.com/alibaba/nacos.git

windows的git客户端,有一个软件的,装一下,也是一个命令行,就可以在本地执行git之类的命令都是可以的,半小时~1小时,甚至几小时都有可能,看你自己的网速吧,github上下载还是挺慢的

cd nacos/
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U  # 半小时
ls -al distribution/target/

// change the $version to your actual path
cd distribution/target/nacos-server-$version/nacos/bin

【进到distribution/target 有一个zip文件】

然后【tar.gz】上传到三台服务器上去,并且分别进行解压缩,需要自己下载一个WinScp一个软件,就可以界面里把你win宿主机上的文件直接拖拉上传到虚拟机的指定目录下去

重命名cluster.conf.example,去掉example,配置三台机器的地址和端口号,默认端口号是8848,使用默认的derby数据库就行了,但是生产环境下,可以部署一个MySQL数据库,执行nacos-mysql.sql初始化数据库里的表之类的东西,然后分别修改他们的application.properties文件,里面修改数据库配置

spring.datasource.platform=mysql
db.num=1
db.url.0=xxx
db.user=xx
db.password=xxx

分别进入三台机器的bin目录,执行startup.sh,检查logs目录下的start.out启动日志,如果启动成功就可以了,访问任何一个节点的8848端口的/nacos地址,进入nacos控制台,可以看到nacos集群的具体情况

posted @ 2021-02-26 18:07  Aokigahara  阅读(600)  评论(0编辑  收藏  举报