K8S部署的怎么开启nacos.core.auth.enabled=true?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
要开启Nacos在Kubernetes(K8S)部署下的鉴权功能,即将nacos.core.auth.enabled设置为true,请遵循以下步骤操作:
准备环境变量: 根据Nacos官方推荐,您需要设置以下环境变量来开启鉴权及配置相关参数。这些环境变量将被用于Nacos容器的启动配置中:
NACOS_AUTH_ENABLE=true: 开启鉴权功能。
NACOS_AUTH_TOKEN=自定义密钥: 设置用于生成用户登录临时accessToken的密钥,强烈建议使用一个大于32位的字符串,并进行base64编码。
NACOS_AUTH_IDENTITY_KEY=自定义身份识别key: 替换默认的身份识别key,以增加安全性。
NACOS_AUTH_IDENTITY_VALUE=自定义身份识别value: 替换默认的身份识别value,同样为了提升安全性。
修改Deployment配置: 如果您是通过YAML文件部署Nacos,需要编辑Nacos Deployment的YAML配置文件,添加上述环境变量到每个Nacos Pod的spec.containers.env部分。例如:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nacos-server
spec:
replicas: 3
selector:
matchLabels:
app: nacos
template:
metadata:
labels:
app: nacos
spec:
containers:
name: nacos
image: nacos/nacos-server:v2.2.3
env:
name: NACOS_AUTH_ENABLE
value: "true"
name: NACOS_AUTH_TOKEN
value: "您的base64编码密钥"
name: NACOS_AUTH_IDENTITY_KEY
value: "自定义key"
name: NACOS_AUTH_IDENTITY_VALUE
value: "自定义value"
ports:
containerPort: 8848
请确保使用适合您场景的Nacos镜像版本和相应的密钥值。
应用配置: 应用更改后的YAML配置文件到Kubernetes集群中,可以通过命令kubectl apply -f your-nacos-deployment.yaml完成更新。
验证设置: 更新配置后,检查Nacos服务是否正常启动且鉴权功能已生效。可以通过访问Nacos UI界面或API接口来确认是否需要认证信息。
请参考Nacos官方文档以获取更详细的信息和最新实践:
Nacos官方文档-鉴权配置
Nacos Docker镜像配置说明
通过以上步骤,您就可以成功地在Kubernetes集群中为Nacos开启鉴权功能了。https://nacos.io/docs/latest/guide/user/auth/
https://github.com/nacos-group/nacos-docker ,此回答整理自钉群“Nacos社区群4”