配置 ingress nginx 与 Milvus
本主题介绍如何配置 ingress nginx 与 Milvus。 更多细节,请参考 ingress-nginx。
配置 ingress nginx
- 设置环境变量。
export DNS_LABEL="milvustest" # 你的 DNS 标签必须在 Azure 位置内是唯一的。
export NAMESPACE="ingress-basic"
- 安装 ingress nginx
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm install ingress-nginx ingress-nginx/ingress-nginx \
--create-namespace \
--namespace $NAMESPACE \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-dns-label-name"=$DNS_LABEL \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz
- 获取外部 IP 地址。
kubectl --namespace $NAMESPACE get services -o wide -w ingress-nginx-controller
- 为你的 ingress 控制器配置 FQDN。
# 你的 ingress 控制器的公共 IP 地址
IP="MY_EXTERNAL_IP"
# 获取公共 IP 的资源 ID
PUBLICIPID=$(az network public-ip list --query "[?ipAddress!=null]|[?contains(ipAddress, '$IP')].[id]" --output tsv)
# 使用 DNS 名称更新公共 IP 地址
az network public-ip update --ids $PUBLICIPID --dns-name $DNS_LABEL
# 显示 FQDN
az network public-ip show --ids $PUBLICIPID --query "[dnsSettings.fqdn]" --output tsv
# 示例输出: milvustest.eastus2.cloudapp.azure.com
安装 cert-manager
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install cert-manager jetstack/cert-manager \
--namespace $NAMESPACE \
--set installCRDs=true