通过Istio将prometheus开放至外部
[root@master Traffic-Management-Basics]# kubectl apply -f prometheus/
destinationrule.networking.istio.io/prometheus created
gateway.networking.istio.io/prometheus-gateway created
virtualservice.networking.istio.io/prometheus-virtualservice created
[root@master Traffic-Management-Basics]# cat prometheus/prometheus-gateway.yaml
apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
name: prometheus-gateway
namespace: istio-system
spec:
selector:
app: istio-ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "prometheus.yang.com"
---
[root@master Traffic-Management-Basics]# cat prometheus/prometheus-virtualservice.yaml
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: prometheus-virtualservice
namespace: istio-system
spec:
hosts:
- "prometheus.yang.com"
gateways:
- prometheus-gateway
http:
- match:
- uri:
prefix: /
route:
- destination:
host: prometheus
port:
number: 9090
---
[root@master Traffic-Management-Basics]# cat prometheus/prometheus-destinationrule.yaml
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: prometheus
namespace: istio-system
spec:
host: prometheus
trafficPolicy:
tls:
mode: DISABLE
---
做好内部域名解析浏览器直接访问