k8s v1.35配置gateway, istio通过metalb vip访问

K8S V1.35新版已经不支持ingress了,所以要用istio代替。本文记录安装设置过程,供大家参考学习。

安装istio

  1. 下载
    https://github.com/istio/istio/releases 下载并解压
  2. 安装
    执行命令
sh 复制代码
./bin/istioctl install --set profile=default -y

Gateway api 安装

sh 复制代码
kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.1/standard-install.yaml

部署应用

yaml 复制代码
---
# 1.业务service
apiVersion: v1
kind: Service
metadata:
 name: tmp-gateway-service
 namespace: irmp-prod
spec:
 ports:
   - port: 8080
     targetPort: 8080
 selector:
   app: tmp-gateway
 type: ClusterIP

# 2. Gateway - 让 Istio 自动创建 Service
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
 name: tmp-gateway-gw
 namespace: irmp-prod
spec:
 gatewayClassName: istio
 listeners:
   - name: default
     hostname: "*.irmp.com"
     port: 80
     protocol: HTTP
     allowedRoutes:
       namespaces:
         from: All
---
# 3. HTTPRoute
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
 name: gw-httproute
 namespace: irmp-prod
spec:
 parentRefs:
   - name: tmp-gateway-gw
 hostnames:
   - "gw.irmp.com"
 rules:
   - matches:
       - path:
           type: PathPrefix
           value: /
     backendRefs:
       - name: tmp-gateway-service
         port: 8080

Gateway部署之后,它会自动安装一个tmp-gateway-gw-istio的Service,可以查看这个service的VIP,通过VIP可以访问你的服务了:

sh 复制代码
 export GW_IP=$(kubectl get svc tmp-gateway-gw-istio -n irmp-prod -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
 echo ${GW_IP}
 curl -H "Host: gw.irmp.com" http://${GW_IP}/
相关推荐
爱莉希雅&&&4 小时前
K8s NFS+StorageClass+PV/PVC+Deployment 实战笔记
笔记·容器·kubernetes
维核科技6 小时前
大模型私有化部署:Docker与Kubernetes实战避坑
docker·容器·kubernetes
SLD_Allen9 小时前
Kubernetes + Ray + Volcano:云原生AI训练调度体系
人工智能·云原生·kubernetes
智码看视界9 小时前
Day46—Spring Cloud Gateway:路由/过滤器/限流全攻略
java·gateway·限流·微服务网关·过滤器链
A-刘晨阳10 小时前
Kubernetes 非共享存储详解:emptyDir 与 hostPath 从入门到实践
运维·云原生·容器·kubernetes·hostpath·emptydir
2401_8346369910 小时前
K8s 控制器全解:Deployment/DaemonSet/Job/CronJob+Service 服务发现实战宝典
容器·kubernetes·服务发现
风曦Kisaki10 小时前
# Kubernetes(K8s)笔记Day15:K8s网络工作原理【Pod 网络模型,CNI 网络插件,Calico 工作模式详解,BGP协议,路由反射器】
运维·网络·nginx·云原生·容器·kubernetes
明王明王11 小时前
从零搭建一个单节点 K8S 可观测实验室(七):从一次 Pod 创建过程,看懂 Kubernetes 核心原理
云原生·容器·kubernetes
云川之下1 天前
【k8s】NAD(NetworkAttachmentDefinition)与SR‑IOV‑Operator 关系
云原生·容器·kubernetes
ZzzZZzzzZZZzzzz…1 天前
K8S实战:NFS+StorageClass+PV/PVC+Deployment
运维·云原生·容器·kubernetes·storageclass·linux运维·持久卷