GithubHelp home page GithubHelp logo

Comments (2)

rg0now avatar rg0now commented on May 30, 2024

Nice, thanks. What about adding a new subsection to the Jitsi tutorial README, something along the lines of "Enable health-checking" or similar?

Some notes:

  • With the new (yet unreleased) version of STUNner you can add per-Gateway annotations: any annotation added to the Gateway will be automatically added to the LB service created by the STUNner operator to expose the Gateway. Gateway annotations override GatewayConfig.Spec.LoadBalancerServiceAnnotations on conflict.
apiVersion: stunner.l7mp.io/v1alpha1
kind: GatewayConfig
metadata:
  name: stunner-gatewayconfig
  namespace: stunner
spec:
  authType: longterm
  sharedSecret: "my-shared-secret"
---
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: udp-gateway
  namespace: stunner
  annotations:
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-port: "8086"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/live"
spec:
  gatewayClassName: stunner-gatewayclass
  listeners:
    - name: health-check
      port: 8086
      protocol: TCP
    - name: udp-listener
      port: 3478
      protocol: UDP
  • Multiprotocol LB services are not supported as of now, since support is fairly uneven across Kubernetes versions. The STUNner operator will remove the TCP service-port from the LB service it creates, leaving only the UDP port in. This means you will have to create the LB service to expose the Gateway manually: just copy the Service created by STUNner and add the missing service-ports.

  • In order to avoid having two LB Services for the Gateway (one created automatically and the manual copy), which usually costs extra $$$, we can fix the type of the service created by STUNner to ClusterIP by adding the special annotation stunner.l7mp.io/service-type: ClusterIP to the Gateway (or to the GatewayConfig loadBalancerServiceAnnotations but that will affect all services created by STUNner). This will still create a service but the type will be ClusterIP so it will not be exposed to the Internet, and this usually does not cause extra $$$.

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: udp-gateway
  namespace: stunner
  annotations:
    stunner.l7mp.io/service-type: ClusterIP
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-port: "8086"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-protocol: "http"
    service.beta.kubernetes.io/do-loadbalancer-healthcheck-path: "/live"
spec:
  gatewayClassName: stunner-gatewayclass
  listeners:
    - name: health-check
      port: 8086
      protocol: TCP
    - name: udp-listener
      port: 3478
      protocol: UDP

from stunner.

rg0now avatar rg0now commented on May 30, 2024

Closing this due to inactivity. Feel free to reopen if the problem persists.

from stunner.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.