通过Helm chart部署nacos

通过Helm chart部署nacos

本文介绍如何改写官方Chart以支持通过Virtual Service访问部署的nacos。

官方Chart

改Chart,增加Virtual Service配置

官方Chart提供了Ingress访问,此处增加Virtual Service配置,支持通过vs访问nacos服务。

templates增加Virtual Service资源

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: {{ .Release.Name }}-vs
  namespace: {{ .Release.Namespace | quote }}
spec:
  gateways:
  - yzy-gateway.istio-system # 网关,改为环境对应的istio网关
  hosts:
  - {{ .Values.Namespace }}-{{ .Release.Name }}.{{ .Values.domain }} # 域名,改为环境对应的域名
  http:
  - route:
    - destination:
        {{- if eq .Values.global.mode "cluster" }}
        host: nacos-hs
        {{- else }}
        host: nacos-cs
        {{- end }}
        port: 
          number: {{ .Values.service.port }}

values.yaml增加domain配置项

domain: abc.xyz # 对应Virtual Service资源中使用的domain

修改后的Chart目录结构

修改后的Chart目录结构
相比于官方Chart目录结构,新增了vs.yaml文件,该文件里面是对应的Virtual Service资源

访问nacos

使用Helm命令部署后,通过域名+/nacos访问对应的nacos服务。
注意:未做特殊配置的话,访问nacos时必须追加/nacos。

通过VirtualService实现域名访问自动跳转

通过VirtualServicematchrewrite实现自动跳转

修改vs.yaml文件

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: {{ .Release.Name }}-vs
  namespace: {{ .Release.Namespace | quote }}
spec:
  gateways:
  - biyi-gateway.istio-system
  hosts:
  - {{ .Release.Name }}.{{ .Values.domain }}
  http:
  - match:
    - uri:
        prefix: /nacos
    route:
    - destination: 
        {{- if eq .Values.global.mode "cluster" }}
        host: nacos-hs
        {{- else }}
        host: nacos-cs
        {{- end }}
        port: 
          number: {{ .Values.service.port }}
  - rewrite:
      uri: /nacos
    route:
    - destination:
        {{- if eq .Values.global.mode "cluster" }}
        host: nacos-hs
        {{- else }}
        host: nacos-cs
        {{- end }}
        port: 
          number: {{ .Values.service.port }}

至此,通过Chart部署的nacos可以直接通过域名访问。

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值