diff --git a/docs/index.md b/docs/index.md index 69eebae9..b6918bfb 100644 --- a/docs/index.md +++ b/docs/index.md @@ -42,7 +42,8 @@ For deploying telco-cloud with cloud-native functions, loxilb can be used as a S ![loxilb svc](photos/scp.svg) -Telco-cloud requires load-balancing and communication across various interfaces/standards like N2, N4, E2(ORAN), S6x, 5GLAN, GTP etc. Each of these present its own unique challenges which loxilb aims to solve e.g.: +Telco-cloud requires load-balancing and communication across various interfaces/standards like N2, N4, E2(ORAN), S6x, 5GLAN, GTP etc. Each of these present its own unique challenges which loxilb aims to solve e.g.: + - N4 requires PFCP level session-intelligence - N2 requires NGAP parsing capability(Related Blogs - [Blog-1](https://www.loxilb.io/post/ngap-load-balancing-with-loxilb), [Blog-2](https://futuredon.medium.com/5g-sctp-loadbalancer-using-loxilb-b525198a9103), [Blog-3](https://medium.com/@ben0978327139/5g-sctp-loadbalancer-using-loxilb-applying-on-free5gc-b5c05bb723f0)) - S6x requires Diameter/SCTP multi-homing LB support(Related [Blog](https://www.loxilb.io/post/k8s-introducing-sctp-multihoming-functionality-with-loxilb)) diff --git a/docs/kube-loxilb.md b/docs/kube-loxilb.md index 42482663..bb45a94a 100644 --- a/docs/kube-loxilb.md +++ b/docs/kube-loxilb.md @@ -81,7 +81,7 @@ Many of the above flags and arguments can be overriden on a per-service basis ba | loxilb.io/secondaryIPs | When using the SCTP multi-homing function, specify the secondary IP to be assigned to the service. Multiple IPs(upto 3) can be specified at the same time using a comma(,). When used with the loxilb.io/poolSelectSecondary annotation, loxilb.io/secondaryIPs takes priority.)

Example:
metadata:
name: sctp-lb-secips
  annotations:
    loxilb.io/lbmode: "fullnat"
loxilb.io/secondaryIPs: "1.1.1.1,2.2.2.2"
spec:
  loadBalancerClass: loxilb.io/loxilb
  selector:
    what: sctp-lb-secips
  ports:
   - port: 56004
     targetPort: 9999
     protocol: SCTP
  type: LoadBalancer| | loxilb.io/staticIP | Specifies the External IP to assign to the LoadBalancer service. By default, an external IP is assigned within the externalCIDR range set in kube-loxilb, but using the annotation, IPs outside the range can also be statically specified.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb-fullnat
  annotations:
    loxilb.io/lbmode: "fullnat"
    loxilb.io/staticIP: "192.168.255.254"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-fullnat-test
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer| | loxilb.io/liveness | Set LoxiLB to perform a health check (probe) based endpoint selection(If flag is set, only active endpoints will be selected). The default value is no, and when the value is set to yes, the probe function of the corresponding service is activated.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb-fullnat
  annotations:
    loxilb.io/liveness : "yes"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-fullnat-test
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer| -| loxilb.io/lbmode | Set LB mode individually for each service. The values ​​that can be specified: “default”, “onearm”, “fullnat” and "dsr". Please refer to [this](https://loxilb-io.github.io/loxilbdocs/nat/) document for more details.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb-fullnat
  annotations:
    loxilb.io/lbmode: "fullnat"
    spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-fullnat-test
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | +| loxilb.io/lbmode | Set LB mode individually for each service. The values ​​that can be specified: "default", "onearm", "fullnat", "hostonearm", "fullproxy" and "dsr". Please refer to [this](https://loxilb-io.github.io/loxilbdocs/nat/) document for more details.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb-fullnat
  annotations:
    loxilb.io/lbmode: "fullnat"
    spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-fullnat-test
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/ipam | Specify which IPAM mode the service will use. Select one of three options: “ipv4”, “ipv6”, or “ipv6to4”.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/ipam : "ipv4"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/timeout | Set the session retention time for the service.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/timeout : "60"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/probetype | Specifies the protocol type to use for endpoint probe operations. You can select one of “udp”, “tcp”, “https”, “http”, “sctp”, “ping”, or “none”. Probetype is set to protocol type, if you are using lbMode as "fullnat" or "onearm". To set it off, use probetype : "none"

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/probetype : "ping"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | @@ -90,7 +90,7 @@ Many of the above flags and arguments can be overriden on a per-service basis ba | loxilb.io/proberesp | Specifies the response to the probe request. It is not applied if the loxilb.io/probetype annotation is not used or if it is of type icmp or none.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/probetype : "tcp"
    loxilb.io/probeport : "3000"
    loxilb.io/probereq : "health"
    loxilb.io/proberesp : "ok"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/probetimeout | Specifies the timeout for starting a probe request (in seconds). The default value is 60 seconds

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/liveness : "yes"
    loxilb.io/probetimeout : "10"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/proberetries | Specifies the number of probe request retries before considering an endpoint as inoperative. The default value is 2

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/liveness : "yes"
    loxilb.io/probetimeout : "10"
    loxilb.io/proberetries : "3"
spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | -| loxilb.io/epselect | Specifies the algorithm for end-point slection e.g "rr", "hash", "persist", "lc" etc. The default value is roundrobin.

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/liveness : "yes"
    loxilb.io/probetimeout : "10"
    loxilb.io/proberetries : "3"
    loxilb.io/epselect : "hash"
    spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | +| loxilb.io/epselect | Specifies the algorithm for end-point slection e.g "rr"/"roundrobin", "hash", "persist", "lc", "n2" and "n3" etc. The default value is "roundrobin".

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/liveness : "yes"
    loxilb.io/probetimeout : "10"
    loxilb.io/proberetries : "3"
    loxilb.io/epselect : "hash"
    spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | | loxilb.io/usepodnetwork | Whether to select PodIP and targetPort as EndPoints

Example:
apiVersion: v1
kind: Service
metadata:
  name: sctp-lb
  annotations:
    loxilb.io/liveness : "yes"
    loxilb.io/probetimeout : "10"
    loxilb.io/proberetries : "3"
    loxilb.io/usepodnetwork : "yes"
    spec:
  loadBalancerClass: loxilb.io/loxilb
  externalTrafficPolicy: Local
  selector:
    what: sctp-lb
  ports:
   - port: 56004
     protocol: SCTP
     targetPort: 9999
  type: LoadBalancer | * Apply the yaml after making necessary changes :