k8s部署单机nacos

 

Derby + PVC 方案 + 鉴权配置

1、创建configmap存储nacos配置

vim nacos-auth-configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: nacos-auth-config
  namespace: nacos
data:
  application.properties: |
    # 开启鉴权
    nacos.core.auth.enabled=true
    nacos.core.auth.server.identity.key=nacos
    nacos.core.auth.server.identity.value=nacos
    nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
kubectl apply -f nacos-auth-configmap.yaml

 

2、创建pvc存储数据

vim nacos-pvc.yml
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nacos-data-pvc
  namespace: nacos
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
  storageClassName: nfs-client
kubectl apply -f nacos-pvc.yml

 

3、创建deployment和service

vim nacos-standalone-derby.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nacos-standalone
  namespace: nacos
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nacos-standalone
  template:
    metadata:
      labels:
        app: nacos-standalone
    spec:
      containers:
      - name: nacos
        image: nacos/nacos-server:v2.4.1
        env:
        - name: MODE
          value: "standalone"
        - name: JVM_XMS
          value: "512m"
        - name: JVM_XMX
          value: "512m"
        ports:
        - containerPort: 8848
        - containerPort: 9848
        volumeMounts:
        - name: nacos-data
          mountPath: /home/nacos/data  # Derby数据存储路径
        - name: auth-config
          mountPath: /home/nacos/conf/application.properties
          subPath: application.properties
      volumes:
      - name: nacos-data
        persistentVolumeClaim:
          claimName: nacos-data-pvc
      - name: auth-config
        configMap:
          name: nacos-auth-config
---
apiVersion: v1
kind: Service
metadata:
  name: nacos
  namespace: nacos
spec:
  type: NodePort
  selector:
    app: nacos-standalone
  ports:
    - name: http
      port: 8848
      targetPort: 8848
      nodePort: 30848
kubectl apply -f  nacos-standalone-derby.yaml

 

4、验证

访问控制台:

  • 打开 http://<NodeIP>:30848/nacos

  • 应跳转到登录页面(默认账号:nacos/nacos)

 

测试:在nacos页面上添加配置,删除pod新建pod后,结果nacos页面上的配置还在。

 

posted @ 2025-06-05 15:26  苦逼yw  阅读(145)  评论(0)    收藏  举报