istio gateway学习

引言

istio gateway作为网官,暴露80。

目录

引言

架构图

gateway 

VirtualService

浏览器访问


架构图

gateway 

gateway.yaml

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: gateway1
spec:
  selector:
    istio: ingressgateway
  servers:
    - port:
        number: 80
        name: http
        protocol: HTTP
      hosts:
        - '*'

直接暴露80,任何域名都可以访问

我们执行

kubectl apply -f gateway.yaml

 查看运行状况

kubectl get svc -l=istio=ingressgateway -n istio-system

  

你会发现LoadBalancer 里面有IP地址 在EXTERNAL-IP 。

本地集群也可以LoadBalancer, 可以自动分配IP。可以根据教程配置好。

实战:MetalLB的安装与使用-2023.3.5(测试成功)_metallb 安装_一念一生~one的博客-CSDN博客

VirtualService

vs-helloworld.yaml

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: hello-world
spec:
  hosts:
    - "*"
  gateways:
    - gateway1
  http:
    - route:
        - destination:
            host: myapp
            port:
              number: 80

执行

kubectl apply -f vs-helloworld.yaml

查看

kubectl get vs

 

service 部署

test.yaml

apiVersion: v1
kind: Service
metadata:
  name: myapp
  namespace: default
spec:
  selector:
    app: myapp
    release: canary
  ports:
  - name: http
    port: 80
    targetPort: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp-deploy
spec:
  replicas: 1
  selector:
    matchLabels:
      app: myapp
      release: canary
  template:
    metadata:
      labels:
        app: myapp
        release: canary
    spec:
      containers:
      - name: myapp
        image: ikubernetes/myapp:v2
        ports:
        - name: httpd
          containerPort: 80

 验证集群内可以正常访问service服务

浏览器访问

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值