在k8s部署milvus 2.6.15,采用helm方式部署,使用外部的etcd、minio、kafka

环境:
OS:Centos 7

 

 

前提条件:外部需要部署好etcd kafka minio

 

etcd 部署可以参考:https://www.cnblogs.com/hxlasky/p/20287687

 

kafka 部署可参考:https://www.cnblogs.com/hxlasky/p/20292648

 

minio部署可参考:https://www.cnblogs.com/hxlasky/p/20291032

 

 

1.添加helm源
[root@host134 milvus]#helm repo add zilliztech https://zilliztech.github.io/milvus-helm/
[root@host134 milvus]#helm repo update
[root@host134 milvus]#helm search repo zilliztech/milvus --versions | head -30
[root@host134 milvus]#helm repo list

# 拉取 4.2.58(2.5.x 最新 chart)
[root@host134 milvus]#cd /root/hxl/milvus
[root@host134 milvus]#helm pull zilliztech/milvus --version 5.0.19 --untar
[root@host134 milvus]#cd milvus
[root@host134 milvus]#cp values.yaml my_values.yaml

2.修改my-values.yaml
2.1 修改镜像地址,使用自己的镜像
vi my_values.yaml

image:
  all:
    repository: registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus
    tag: v2.6.15
    pullPolicy: IfNotPresent

heaptrack:
  image:
    repository: registry.cn-shenzhen.aliyuncs.com/hxlk8s/heaptrack
    tag: v0.1.0

attu:
  enabled: true
  name: attu
  image:
    repository: registry.cn-shenzhen.aliyuncs.com/hxlk8s/attu
    tag: v2.5.3
    pullPolicy: IfNotPresent
  service:
    annotations: {}
    labels: {}
    type: NodePort
    port: 3000
    # loadBalancerIP: ""

 

2.2 修改外部etcd

etcd:
  enabled: false ##改成false

##配置外部etcd
externalEtcd:
  enabled: true
  ## the endpoints of the external etcd
  ##
  endpoints:
    - etcd-0.etcd-svc.hxletcd.svc.cluster.local:2379
  tls:
    enabled: false
  auth:
    enabled: false

 

2.3 配置外部 MinIO 正确配置(用 externalS3)

minio:
  enabled: false ##改成false

externalS3:
  enabled: true
  host: "minio-svc.hxlminio.svc.cluster.local"
  port: "9000"
  accessKey: "admin"
  secretKey: "admin123456"
  useSSL: false
  bucketName: "milvus-bucket" ##提前创建好
  rootPath: "milvus-data"
  useIAM: false
  cloudProvider: "aws"
  iamEndpoint: ""
  region: ""
  useVirtualHost: false

 

2.4 外部 Kafka 配置
##通过配置文件的方式部署
先注释掉原来的

##extraConfigFiles:
##  user.yaml: |+
    #    For example enable rest http for milvus proxy
    #    proxy:
    #      http:
    #        enabled: true
    #      maxUserNum: 100
    #      maxRoleNum: 10
    ##  Enable tlsMode and set the tls cert and key
    #  tls:
    #    serverPemPath: /etc/milvus/certs/tls.crt
    #    serverKeyPath: /etc/milvus/certs/tls.key
    #   common:
    #     security:
    #       tlsMode: 1

##新增配置
extraConfigFiles:
  user.yaml: |
    mq:
      type: kafka
    kafka:
      brokerList: "kafka-svc.hxlkafka.svc.cluster.local:9092"
      securityProtocol: "PLAINTEXT"

 

2.4 关闭pulsarv3

pulsarv3:
  name: "pulsarv3" # note: nameOveride should be kept the same as the name field
  nameOverride: "pulsarv3"
  enabled: false

 

2.5 关闭woodpecker

# Streaming node
# Default config for 2.6.0 or later.
streaming:
  enabled: true
  woodpecker:
    embedded: false ##修改成false
    storage:
      type: minio

 

3.执行安装

cd /root/hxl/milvus/milvus
helm install milvus-2615 zilliztech/milvus \
  --namespace milvus \
  --create-namespace \
  --version 5.0.19 \
  -f my_values.yaml

 

可以渲染deployment 模板查看具体的配置

helm template milvus-2615 zilliztech/milvus --version 5.0.19 -f my_values.yaml -n milvus > render.yaml

 

4.查看运行情况

[root@host134 milvus]# kubectl get pods -n milvus
NAME                                         READY   STATUS    RESTARTS   AGE
milvus-2527-attu-74f845bf7d-42hh6            1/1     Running   0          114s
milvus-2527-datanode-574b85dc7b-qb8n6        1/1     Running   0          114s
milvus-2527-mixcoord-84b6f677b4-plsdr        1/1     Running   0          114s
milvus-2527-proxy-66db57d664-s7ds2           1/1     Running   0          114s
milvus-2527-querynode-669788789-rvplf        1/1     Running   0          113s
milvus-2527-streamingnode-6dd5688584-9pzl8   1/1     Running   0          114s

 

5.查看svc

[root@host134 milvus]#  kubectl get svc -n milvus
NAME                        TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)              AGE
milvus-2527                 ClusterIP   10.1.190.96    <none>        19530/TCP,9091/TCP   2m12s
milvus-2527-attu            NodePort    10.1.167.199   <none>        3000:32590/TCP       2m12s
milvus-2527-datanode        ClusterIP   None           <none>        9091/TCP             2m12s
milvus-2527-mixcoord        ClusterIP   10.1.42.180    <none>        9091/TCP             2m12s
milvus-2527-querynode       ClusterIP   None           <none>        9091/TCP             2m12s
milvus-2527-streamingnode   ClusterIP   None           <none>        9091/TCP             2m12s

 

6.通过浏览器访问
http://192.168.1.135:32590
账号密码:root/Milvus

 

7.attu升级
将attu版本修改成v2.6.5,milvus 2.6.15使用attu 2.6.5版本好像有问题,建议使用attu 2.5.3

attu:
  enabled: true
  name: attu
  image:
    repository: registry.cn-shenzhen.aliyuncs.com/hxlk8s/attu
    tag: v2.6.5
    pullPolicy: IfNotPresent
  service:
    annotations: {}
    labels: {}
    type: NodePort
    port: 3000
    # loadBalancerIP: ""

 

重新应用
helm upgrade milvus-2615 zilliztech/milvus \
  --namespace milvus \
  --version 5.0.19 \
  -f my_values.yaml

 

posted @ 2026-06-05 16:01  slnngk  阅读(6)  评论(0)    收藏  举报