--- apiVersion: v1 kind: Service metadata: name: freshrss namespace: external-services spec: type: ClusterIP ports: - name: http port: 80 ... --- apiVersion: discovery.k8s.io/v1 kind: EndpointSlice metadata: name: freshrss namespace: external-services labels: kubernetes.io/service-name: freshrss addressType: IPv4 ports: - name: http appProtocol: http protocol: TCP port: 21046 endpoints: - addresses: - "192.168.0.12" conditions: ready: true ... --- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: freshrss-cert namespace: istio-system spec: secretName: freshrss-cert commonName: rss.minhas.io dnsNames: - rss.minhas.io issuerRef: name: letsencrypt-prod kind: ClusterIssuer group: cert-manager.io ... --- apiVersion: networking.istio.io/v1beta1 kind: Gateway metadata: name: freshrss-gateway namespace: external-services spec: selector: istio: ingressgateway servers: - port: number: 443 name: https protocol: HTTPS tls: mode: SIMPLE credentialName: freshrss-cert hosts: - rss.minhas.io ... --- apiVersion: networking.istio.io/v1beta1 kind: ServiceEntry metadata: name: freshrss namespace: external-services spec: hosts: - rss.minhas.io addresses: - 0.0.0.0/0 ports: - number: 21046 name: freshrss protocol: HTTP location: MESH_EXTERNAL resolution: STATIC endpoints: - address: 192.168.0.12 ... --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: freshrss-gateway namespace: external-services spec: hosts: - rss.minhas.io gateways: - freshrss-gateway http: - match: - uri: prefix: / route: - destination: port: number: 80 host: freshrss ...