跳转到内容
Nacos 3.0 正式发布:MCP Registry、安全零信任、链接更多生态点此了解

Nacos Kubernetes 快速开始

这个快速开始手册是帮忙您快速在通过Nacos的Docker镜像,在Kubernetes中部署并使用 Nacos。

1. 环境准备

使用此快速开始方法进行Nacos安装及部署,需要安装Kubernetes

2. 下载 nacos-k8s 项目

Terminal window
git clone https://github.com/nacos-group/nacos-k8s.git
cd nacos-k8s

3. 快速启动

使用此方式快速启动,请注意这是没有使用持久化卷的,可能存在数据丢失风险:

3.1. 编辑部署配置文件, 添加鉴权相关配置

编辑/deploy/nacos/nacos-quick-start.yaml文件,添加如下3个环境变量:

  • NACOS_AUTH_TOKEN: Nacos 用于生成JWT Token的密钥,使用长度大于32字符的字符串,再经过Base64编码。
  • NACOS_AUTH_IDENTITY_KEY: Nacos Server端之间 Inner API的身份标识的Key,必填。
  • NACOS_AUTH_IDENTITY_VALUE: Nacos Server端之间 Inner API的身份标识的Value,必填。

如:

---
apiVersion: v1
kind: Service
metadata:
name: nacos-headless
....
- name: NACOS_SERVERS
value: "nacos-0.nacos-headless.default.svc.cluster.local:8848 nacos-1.nacos-headless.default.svc.cluster.local:8848 nacos-2.nacos-headless.default.svc.cluster.local:8848"
- name: NACOS_AUTH_TOKEN
value: ${your_nacos_auth_secret_token}
- name: NACOS_AUTH_IDENTITY_KEY
value: ${your_nacos_server_identity_key}
- name: NACOS_AUTH_IDENTITY_VALUE
value: ${your_nacos_server_identity_value}
selector:
matchLabels:
app: nacos

3.2. 执行快速开始脚本,启动Nacos

Terminal window
cd nacos-k8s
chmod +x quick-startup.sh
./quick-startup.sh

4. 验证Nacos服务是否启动成功

通过kubectl logs -f $pod_name命令,查看Nacos服务启动日志,如果看到如下日志,说明服务启动成功。

Nacos started successfully in xxxx mode. use xxxx storage

可以通过下列服务,快速检验Nacos的功能。

4.1. Nacos控制台页面

打开任意浏览器,输入地址:http://127.0.0.1:8080/index.html, 即可进入Nacos控制台页面。

注意:首次打开会要求初始化管理员用户nacos的密码。

4.2. 服务注册

curl -X POST 'http://127.0.0.1:8848/nacos/v3/client/ns/instance?serviceName=quickstart.test.service&ip=127.0.0.1&port=8080'

4.3. 服务发现

curl -X GET 'http://127.0.0.1:8848/nacos/v3/client/ns/instance/list?serviceName=quickstart.test.service'

4.4. 发布配置

Terminal window
# 登陆获取access token
curl -X POST 'http://127.0.0.1:8848/nacos/v3/auth/user/login' -d 'username=nacos' -d 'password=${your_password}'
# 使用access token,创建配置
curl -X POST 'http://127.0.0.1:8848/nacos/v3/admin/cs/config?dataId=quickstart.test.config&groupName=test&content=HelloWorld' -H "accessToken:${your_access_token}"

4.5. 获取配置

curl -X GET 'http://127.0.0.1:8848/nacos/v3/client/cs/config?dataId=quickstart.test.config&groupName=test'

相关项目