华为CCE 部署milvus向量数据库

1.新建pvc

milvus-etcd-nfs-pvc.yaml

复制代码
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: milvus-etcd-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  storageClassName: nfs-storageclass

milvus-minio-pvc.yaml

复制代码
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: milvus-minio-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  storageClassName: nfs-storageclass

milvus-standalone-pvc.yaml

复制代码
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: milvus-standalone-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  storageClassName: nfs-storageclass

2.设置密码 配置文件 注意密码首次启动才会生效,之后修改可以使用attu客户端修改

milvus-user-config.yaml

复制代码
apiVersion: v1
kind: ConfigMap
metadata:
  name: milvus-user-config
  namespace: default
data:
  user.yaml: |
    common:
      security:
        authorizationEnabled: true
        defaultRootPassword: "xxxxxxxxxxx"

3.负载文件和服务文件

复制代码
---
# etcd Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: milvus-etcd
  namespace: default
  labels:
    app: milvus
    component: etcd
spec:
  replicas: 1
  selector:
    matchLabels:
      app: milvus
      component: etcd
  template:
    metadata:
      labels:
        app: milvus
        component: etcd
    spec:
      containers:
      - name: etcd
        image: quay.io/coreos/etcd:v3.5.25
        imagePullPolicy: IfNotPresent
        command:
        - etcd
        args:
        - -advertise-client-urls=http://milvus-etcd:2379
        - -listen-client-urls=http://0.0.0.0:2379
        - --data-dir=/etcd
        ports:
        - containerPort: 2379
          name: client
        env:
        - name: ETCD_AUTO_COMPACTION_MODE
          value: "revision"
        - name: ETCD_AUTO_COMPACTION_RETENTION
          value: "1000"
        - name: ETCD_QUOTA_BACKEND_BYTES
          value: "4294967296"
        - name: ETCD_SNAPSHOT_COUNT
          value: "50000"
        volumeMounts:
        - name: etcd-storage
          mountPath: /etcd
        resources:
          requests:
            memory: "512Mi"
            cpu: "250m"
          limits:
            memory: "1Gi"
            cpu: "500m"
      volumes:
      - name: etcd-storage
        persistentVolumeClaim:
          claimName: milvus-etcd-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: milvus-etcd
  namespace: default
  labels:
    app: milvus
    component: etcd
spec:
  selector:
    app: milvus
    component: etcd
  ports:
  - name: client
    port: 2379
    targetPort: 2379
    protocol: TCP
  type: ClusterIP
---
# MinIO Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: milvus-minio
  namespace: default
  labels:
    app: milvus
    component: minio
spec:
  replicas: 1
  selector:
    matchLabels:
      app: milvus
      component: minio
  template:
    metadata:
      labels:
        app: milvus
        component: minio
    spec:
      containers:
      - name: minio
        image: minio/minio:RELEASE.2024-12-18T13-15-44Z
        imagePullPolicy: IfNotPresent
        command:
        - minio
        args:
        - server
        - /minio_data
        - --console-address
        - ":9001"
        ports:
        - containerPort: 9000
          name: api
        - containerPort: 9001
          name: console
        env:
        - name: MINIO_ACCESS_KEY
          value: "minioadmin"
        - name: MINIO_SECRET_KEY
          value: "minioadmin"
        volumeMounts:
        - name: minio-storage
          mountPath: /minio_data
        resources:
          requests:
            memory: "512Mi"
            cpu: "250m"
          limits:
            memory: "1Gi"
            cpu: "500m"
      volumes:
      - name: minio-storage
        persistentVolumeClaim:
          claimName: milvus-minio-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: milvus-minio
  namespace: default
  labels:
    app: milvus
    component: minio
spec:
  selector:
    app: milvus
    component: minio
  ports:
  - name: api
    port: 9000
    targetPort: 9000
    protocol: TCP
  - name: console
    port: 9001
    targetPort: 9001
    protocol: TCP
  type: ClusterIP
---
# Milvus Standalone Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: milvus-standalone
  namespace: default
  labels:
    app: milvus
    component: standalone
spec:
  replicas: 1
  selector:
    matchLabels:
      app: milvus
      component: standalone
  template:
    metadata:
      labels:
        app: milvus
        component: standalone
    spec:
      containers:
      - name: milvus
        image: milvusdb/milvus:v2.6.8
        imagePullPolicy: IfNotPresent
        command: ["milvus"]
        args: ["run", "standalone"]
        ports:
        - containerPort: 19530
          name: grpc
        - containerPort: 9091
          name: metrics
        env:
        - name: ETCD_ENDPOINTS
          value: "milvus-etcd:2379"
        - name: MINIO_ADDRESS
          value: "milvus-minio:9000"
        - name: MQ_TYPE
          value: "woodpecker"
        - name: MINIO_ACCESS_KEY_ID
          value: "minioadmin"
        - name: MINIO_SECRET_ACCESS_KEY
          value: "minioadmin"
        - name: COMMON_STORAGE_TYPE
          value: "remote"
        volumeMounts:
        - name: milvus-storage
          mountPath: /var/lib/milvus
		- name: vol-178133709333092147
		  readOnly: true
		  mountPath: /milvus/configs/user.yaml
		  subPath: user.yaml  
        resources:
          requests:
            memory: "512Mi"
            cpu: "250m"
          limits:
            memory: "1Gi"
            cpu: "500m"
      volumes:
      - name: milvus-storage
        persistentVolumeClaim:
          claimName: milvus-standalone-pvc
	  - name: vol-178133709333092147
          configMap:
            name: milvus-user-config
            defaultMode: 420	  
---
apiVersion: v1
kind: Service
metadata:
  name: milvus-service
  namespace: default
  labels:
    app: milvus
    component: standalone
spec:
  selector:
    app: milvus
    component: standalone
  ports:
  - name: grpc
    port: 19530
    targetPort: 19530
    protocol: TCP
  - name: metrics
    port: 9091
    targetPort: 9091
    protocol: TCP
  type: ClusterIP		  

启动Attu

复制代码
docker run -d --name attuOnLine  -p 8000:3000 -e MILVUS_URL=1xx.xxx.xxx.xxx:19530 zilliz/attu:latest
相关推荐
circuitsosk3 天前
向量数据库选型与性能压测:Milvus、Pinecone、Chroma在真实业务下的对比
数据库·python·pinecone·milvus·向量数据库·chroma
码云骑士4 天前
97-Milvus从零到生产-Standalone-vs-Cluster-索引选择-分片监控扩容
python·milvus
初圣魔门首席弟子5 天前
Milvus 向量数据库:AI 时代的“记忆引擎”与新手实战指南
数据库·人工智能·milvus
人工智能培训7 天前
向量数据库 Milvus 使用方法:从理论到实战
milvus
今天AI了吗8 天前
【AI智能体】Hermes Agent 从部署到项目实战操作详解
java·人工智能·python·milvus
IT小盘10 天前
08-向量数据库选型-Chroma-FAISS-Milvus-pgvector
数据库·人工智能·milvus·faiss
安_10 天前
如何为 RAG 项目选择向量数据库?Milvus、Pinecone、Chroma 怎么选?
数据库·milvus
知行合一。。。10 天前
LangChain--11--Milvus
langchain·milvus
二进制_博客11 天前
Milvus-lite的使用
milvus
tqs_1234512 天前
Agent智能体+Skill插件引擎+Milvus混合检索 技术沉淀
java·python·milvus