l7mp / stunner

A Kubernetes media gateway for WebRTC. Contact: info@l7mp.io
https://l7mp.io
MIT License
709 stars 56 forks source link

error install on container : kubernate and helm #146

Closed hassanrahimi closed 3 months ago

hassanrahimi commented 3 months ago

hi , excuse me that I don't use role of create error . I am noob in stunner and kubernate and helm I want install stunner with kubernate and I use this code I want to install in this cloud services (container cloud section ) https://www.arvancloud.ir/en If you want to test in this cloud service I can pay to test full in this services

apiVersion: v1
kind: ConfigMap
metadata:
  name: stunner-config
  namespace: pro-test
data:
  stunnerd.conf: |
    apiVersion: "v1alpha1"
    kind: "StunnerConfig"
    metadata:
      name: "stunner-config"
    spec:
      admin:
        realm: "myrealm"
        username: "user"
        password: "pass"
      listeners:
        - name: "listener-udp"
          protocol: "UDP"
          port: 3478
      relays:
        - name: "relay-udp"
          protocol: "UDP"
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: stunner
  namespace: pro-test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: stunner
  template:
    metadata:
      labels:
        app: stunner
    spec:
      containers:
        - name: stunner
          image: l7mp/stunnerd:latest
          # image: hassan41/my-stunner:latest
          # args: ["stunnerd", "-c", "/etc/stunner/stunner.conf"]
          resources:
            limits:
              cpu: "2"
              ephemeral-storage: 1G
              memory: 4G
            requests:
              cpu: "2"
              ephemeral-storage: 1G
              memory: 4G
          ports:
            - containerPort: 3478
              protocol: UDP
          volumeMounts:
            - name: config-volume
              mountPath: /etc/stunnerd
              subPath: stunnerd.conf
              readOnly: true
      volumes:
        - name: config-volume
          configMap:
            name: stunner-config
            items:
              - key: stunnerd.conf
                path: stunnerd.conf
---
apiVersion: v1
kind: Service
metadata:
  name: stunner-service
  namespace: pro-test
spec:
  selector:
    app: stunner
  ports:
    - protocol: UDP
      port: 3478
      targetPort: 3478
  type: LoadBalancer

log show this error

18:26:19.587675 main.go:115: stunnerd INFO: loading configuration from origin "/stunnerd.conf"
18:26:19.587809 main.go:118: stunnerd ERROR: Get "http:///stunnerd.conf/api/v1/configs/default/stunnerd-teststun-b75bddc4-x4kqk": http: no Host in request URL

can you correct this code , I create new image for test but it dos'nt work.

I tried install with helm , it got other errors that I will say in an other issue.(error related to : ensure CRDs are installed first,)

D:\mediasoup-test\stunner>helm install stunner-gateway-operator stunner/stunner-gateway-operator --namespace=stunner-system
Error: INSTALLATION FAILED: failed to install CRD crds/gateway-api-crd.yaml: [resource mapping not found for name: "gatewayclasses.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "gateways.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "grpcroutes.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "httproutes.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "referencegrants.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "tcproutes.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "tlsroutes.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first, resource mapping not found for name: "udproutes.gateway.networking.k8s.io" namespace: "" from "": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1"
ensure CRDs are installed first]

I tried several and I need use it , it is vary excellant if I can use it in containers with mediasoup and kurento toghater.

please please put in document easy installing way with all complete details for installing with kuberante and helm separately.

rg0now commented 3 months ago

Please, make sure to follow the instructions here precisely to install STUNner. This error no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1" however suggests that something is fundamentally broken in your Kubernetes install. Can you please run kubectl api-resources and copy the output here?

hassanrahimi commented 3 months ago

hi, thank you for response 💯 , 👍 I follow the instruction exactly , this is some short line for execute, at first I download helm then put in my folder then execute instruction Respectively

very easy 👍 first: helm repo add stunner https://l7mp.io/stunner helm repo update second : helm install stunner-gateway-operator stunner/stunner-gateway-operator --namespace=pro-test I made namespace before this section has error that said before post.

I execute you command result : at first I set my source config in (https://www.arvancloud.ir/en)

image

rg0now commented 3 months ago

Your Kubernetes cluster is missing the customresourcedefinitions API resource, which makes it practically impossible to install STUNner (or basically any other custom Kubernetes controller for that matter). Some hardened/locked-down managed Kubernetes services do this. Please contact your Kubernetes provider or move to another Kubernetes offering, yours will not work.