Nacos安装指南

上一篇文章地址:SpringCloud大集合01

Nacos安装指南

1.Windows安装

开发阶段采用单机安装即可。

1.1.下载安装包

在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:

GitHub主页:https://github.com/alibaba/nacos

GitHub的Release下载页:https://github.com/alibaba/nacos/releases

如图:

image-20210402161102887

本课程采用1.4.1.版本的Nacos,课前资料已经准备了安装包:

image-20210402161130261

windows版本使用nacos-server-1.4.1.zip包即可。

1.2.解压

将这个包解压到任意非中文目录下,如图:

image-20210402161843337

目录说明:

  • bin:启动脚本
  • conf:配置文件

1.3.端口配置

Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。

如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口:

image-20210402162008280

修改其中的内容:

image-20210402162251093

1.4.启动

启动非常简单,进入bin目录,结构如下:

image-20210402162350977

然后执行命令即可:

  • windows命令:

    1
    startup.cmd -m standalone

执行后的效果如图:

image-20210402162526774

1.5.访问

在浏览器输入地址:http://127.0.0.1:8848/nacos即可:

image-20210402162630427

默认的账号和密码都是nacos,进入后:

image-20210402162709515

2.Linux安装

Linux或者Mac安装方式与Windows类似。

1.1【脚本安装】可以使用一键化脚本部署Nacos

①yum换腾讯源(如果国内下载慢)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/bin/bash

# 定义颜色变量
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color

yum install wget -y
# 将CentOS-Base.repo备份
printf "${YELLOW}正在备份CentOS-Base.repo...${NC}\n"
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
if [ $? -eq 0 ]; then
printf "${GREEN}备份成功!${NC}\n"
else
printf "${RED}备份失败!${NC}\n"
exit 1
fi

# 下载新的CentOS-Base.repo
printf "${YELLOW}正在下载新的CentOS-Base.repo...${NC}\n"
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
if [ $? -eq 0 ]; then
printf "${GREEN}下载成功!${NC}\n"
else
printf "${RED}下载失败!${NC}\n"
exit 1
fi

# 清理并生成新的缓存
printf "${YELLOW}正在清理并生成新的缓存...${NC}\n"
yum clean all
yum makecache
if [ $? -eq 0 ]; then
printf "${GREEN}操作成功!${NC}\n"
else
printf "${RED}操作失败!${NC}\n"
exit 1
fi

printf "${BLUE}所有操作已完成!${NC}\n"

②nacos一键脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#!/bin/bash

# 设置字体颜色
red='\033[0;31m'
green='\033[0;32m'
yellow='\033[0;33m'
blue='\033[0;34m'
magenta='\033[0;35m'
cyan='\033[0;36m'
reset='\033[0m'

echo -e "${green}开始安装 Nacos...${reset}"

# 检查命令是否已安装,如果未安装则自动安装
function check_command() {
local command=$1
if ! command -v "$command" &> /dev/null; then
echo -e "${magenta}正在安装 $command...${reset}"
if [[ -n $(command -v apt) ]]; then
sudo apt-get install -y "$command"
elif [[ -n $(command -v yum) ]]; then
sudo yum install -y "$command"
else
echo -e "${red}无法自动安装 $command,请手动安装后重试。${reset}"
exit 1
fi
fi
}

echo -e "${green}开始安装 Nacos...${reset}"

# 下载 JDK 安装包
jdk_file="/opt/jdk-8u144-linux-x64.tar.gz"
if [ ! -f "$jdk_file" ]; then
echo -e "\033[33m正在下载 JDK 安装包...\033[0m"
wget https://dlink.host/googledrive/direct/aHR0cHM6Ly9kcml2ZS51c2VyY29udGVudC5nb29nbGUuY29tL2Rvd25sb2FkP2lkPTFBVmRvUnc1RDE4aVN1eWVOalNqZExmajJfT1VZMGVlOSZleHBvcnQ9ZG93bmxvYWQmYXV0aHVzZXI9MCZjb25maXJtPXQmdXVpZD1hZmFlYzI4Yy0zZGIxLTRkYjMtYTA0NC1lZGJhNTQ4ODZmMTMmYXQ9QVBaVW5UVVRSZGgta19HTktTMkRSU3YyWnp5NCUzQTE3MjE3MTE4Nzk0MDk.zip -O $jdk_file
echo -e "\033[32m下载完成\033[0m"
else
echo -e "\033[32m检测到 JDK 安装包已存在\033[0m"
fi

echo -e "\033[33m正在安装 JDK...\033[0m"
tar -zxf $jdk_file -C /usr/local/ >/dev/null 2>&1
ln -sf /usr/local/jdk1.8.0_144 /usr/local/jdk

echo -e "\033[33m正在配置环境变量...\033[0m"
touch /opt/temp.txt
echo 'JAVA_HOME=/usr/local/jdk' >>/opt/temp.txt
echo 'PATH=$JAVA_HOME/bin:$PATH' >>/opt/temp.txt
echo 'CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar' >>/opt/temp.txt
echo 'export PATH JAVA_HOME CLASSPATH' >>/opt/temp.txt
sed -i -e '$r /opt/temp.txt' /etc/profile
rm -f /opt/temp.txt
source /etc/profile

echo -e "\033[32m JDK 安装完成\033[0m"

setenforce 0 >/dev/null 2>&1
iptables -F >/dev/null 2>&1
systemctl stop firewalld >/dev/null 2>&1
systemctl disable firewalld >/dev/null 2>&1
systemctl stop NetworkManager >/dev/null 2>&1
systemctl disable NetworkManager >/dev/null 2>&1

echo -e "\033[32m防火墙和网络管理器已关闭\033[0m"


# 2. 下载并解压 Nacos
echo -e "${yellow}2. 下载并解压 Nacos${reset}"
nacos_url="https://dlink.host/googledrive/direct/aHR0cHM6Ly9kcml2ZS51c2VyY29udGVudC5nb29nbGUuY29tL2Rvd25sb2FkP2lkPTFtR0hZUXhmckNpcW5mQXEyREJQRHhMOU1DYzdnSVpwTSZleHBvcnQ9ZG93bmxvYWQmYXV0aHVzZXI9MCZjb25maXJtPXQmdXVpZD1kMGQ3ZDY0ZC1hMGIyLTRjN2YtOGI2ZC1hYzEyYjY0ZDEwZGYmYXQ9QVBaVW5UWHVWZm1NOHdvM21iMGRJb1pJMG1sQyUzQTE3MjE3MTE2MDg1MzQ.zip"
nacos_file="nacos-server-1.4.1.tar.gz"
nacos_dir="/usr/local/src"

if [ ! -f "${nacos_dir}/${nacos_file}" ]; then
wget "${nacos_url}" -O "${nacos_dir}/${nacos_file}"
fi

tar -xzvf "${nacos_dir}/${nacos_file}" -C "${nacos_dir}"
rm "${nacos_dir}/${nacos_file}"

echo -e "${green}Nacos 下载并解压完成${reset}"

# 3. 配置端口 (如果需要)
echo -e "${yellow}3. 配置端口 (如果需要)${reset}"
read -p "是否需要修改 Nacos 默认端口 8848? (y/n) " change_port
if [ "$change_port" == "y" ]; then
read -p "请输入新的端口号: " new_port
nacos_conf_dir="${nacos_dir}/nacos/conf"
sed -i "s/server.port=8848/server.port=${new_port}/g" "${nacos_conf_dir}/application.properties"
echo -e "${green}Nacos 端口已修改为 ${new_port}${reset}"
else
echo -e "${cyan}使用默认端口 8848${reset}"
fi

# 4. 启动 Nacos
echo -e "${yellow}4. 启动 Nacos${reset}"
nacos_bin_dir="${nacos_dir}/nacos/bin"
sh "${nacos_bin_dir}/startup.sh" -m standalone

echo -e "${green}Nacos 已成功启动!${reset}"

2.1.【手动安装】安装JDK

Nacos依赖于JDK运行,索引Linux上也需要安装JDK才行。

上传jdk安装包:

image-20210402172334810

上传到某个目录,例如:/usr/local/

然后解压缩:

1
tar -xvf jdk-8u144-linux-x64.tar.gz

然后重命名为java

配置环境变量:

1
2
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin

设置环境变量:

1
source /etc/profile

2.2.上传安装包

如图:

image-20210402161102887

也可以直接使用课前资料中的tar.gz:

image-20210402161130261

上传到Linux服务器的某个目录,例如/usr/local/src目录下:

image-20210402163715580

2.3.解压

命令解压缩安装包:

1
tar -xvf nacos-server-1.4.1.tar.gz

然后删除安装包:

1
rm -rf nacos-server-1.4.1.tar.gz

目录中最终样式:

image-20210402163858429

目录内部:

image-20210402164414827

2.4.端口配置

与windows中类似

2.5.启动

在nacos/bin目录中,输入命令启动Nacos:

1
sh startup.sh -m standalone

3.Nacos的依赖

父工程:

1
2
3
4
5
6
7
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>

客户端:

1
2
3
4
5
6
<!-- nacos客户端依赖包 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>