jens-skribble opened a new issue, #2656:
URL: https://github.com/apache/apisix-ingress-controller/issues/2656

   ### Current Behavior
   
   Hello,
   
   I'm new to APISIX and don't know if this is a bug or a layer 8 problem.
   
   I followed [1] to try my first installation of APISIX in standalone api 
driven mode, in combination with apisix-ingress-controller:2.0.0-rc5 on 
OpenShift 4.19.
   
   OpenShift doesn't allow to install Gateway API custom resources. It comes 
pre-installed with its route resources from the standard channel. Experimental 
route resources like TCPRoute aren't installed and can't be manually added. 
Thus I wasn't able to install those from the helm chart.
   
   However, the ingress-controller was able to start on the cluster and is in a 
crash looping state.
   It's log is attached below.
   
   I read that it was possible to [de]activate the controller's gateway API 
functionality in earlier versions using the `--set 
ingress-controller.config.kubernetes.enableGatewayAPI=false` flag.
   Now it seems that it can't be deactivated [3] anymore.
   
   It would be great APISIX and the ingress controller would also work on 
OpenShift.
   
   If you need anything else, please do not hesitate to contact me.
   
   ---
   [1] 
https://github.com/apache/apisix-ingress-controller/blob/master/docs/en/latest/getting-started/get-apisix-ingress-controller.md#install-apisix-and-apisix-ingress-controller-standalone-api-driven-mode
   [2] 
https://github.com/apache/apisix-ingress-controller/blob/v1.8.0/docs/en/latest/deployments/openshift.md
   [3] 
https://github.com/apache/apisix-ingress-controller/blob/v2.0.0/docs/en/latest/reference/configuration-file.md
   
   ### Expected Behavior
   
   - The helm chart has a flag for OpenShift environments
   - The ingress controller works on environments where experimental gateway 
API resources aren't available.
   
   ### Error Logs
   
   ```
   2025-11-19T14:12:16.220Z INFO root/root.go:125 controller start 
configuration {"config": 
{"log_level":"debug","controller_name":"apisix.apache.org/apisix-ingress-controller","leader_election_id":"apisix-ingress-controller-leader","metrics_addr":":8080","server_addr":":9092","enable_server":false,"enable_http2":false,"probe_addr":":8081","secure_metrics":false,"leader_election":{"lease_duration":"30s","renew_deadline":"20s","retry_period":"2s"},"exec_adc_timeout":"15s","provider":{"type":"apisix-standalone","sync_period":"1m0s","init_sync_delay":"20m0s"},"webhook":{"enable":true,"tls_cert_file":"tls.crt","tls_key_file":"tls.key","tls_cert_dir":"/certs","port":9443}}}
   2025-11-19T14:12:16.221Z INFO client client/client.go:62 ADC client 
initialized {"mode": "apisix-standalone"}
   2025-11-19T14:12:16.221Z INFO setup manager/run.go:207 check ReferenceGrants 
is enabled
   2025-11-19T14:12:16.316Z INFO setup manager/run.go:218 setting up controllers
   2025-11-19T14:12:16.319Z ERROR setup manager/run.go:221 unable to set up 
controllers {"error": "no matches for kind \"TCPRoute\" in version 
\"gateway.networking.k8s.io/v1alpha2\""}
   Error: no matches for kind "TCPRoute" in version 
"gateway.networking.k8s.io/v1alpha2"
   Usage:
   apisix-ingress-controller [command] [flags]
   apisix-ingress-controller [command]
   Available Commands:
   completion Generate the autocompletion script for the specified shell
   help Help about any command
   version version for apisix-ingress-controller
   Flags:
   -c, --config-path string configuration file path for 
apisix-ingress-controller
   --controller-name string The name of the controller (default 
"apisix.apache.org/apisix-ingress-controller")
   --health-probe-bind-address string The address the probe endpoint binds to. 
(default ":8081")
   -h, --help help for apisix-ingress-controller
   --log-level string The log level for apisix-ingress-controller (default 
"info")
   --metrics-bind-address string The address the metrics endpoint binds to. Use 
:8443 for HTTPS or :8080 for HTTP, or leave as 0 to disable the metrics 
service. (default "0")
   -v, --version version for apisix-ingress-controller
   Use "apisix-ingress-controller [command] --help" for more information about 
a command.
   Error: no matches for kind "TCPRoute" in version 
"gateway.networking.k8s.io/v1alpha2"
   ```
   
   ### Steps to Reproduce
   
   Install APISIX with the ingress-controller on OpenShift 4.9 using the Helm 
Chart.
   
   The used `values.yaml` for the helm chart:
   ```
   # apisix helm chart (dependency)
   apisix:
     replicaCount: 2
     resources:
       limits:
         cpu: 200m
         memory: 128Mi
       requests:
         cpu: 100m
         memory: 128Mi
     service: 
       type: ClusterIP
       externalTrafficPolicy: null
     apisix:
       deployment:
         role: "traditional"
         role_traditional:
           config_provider: "yaml"
       admin:
         credentials:
           secretName: "apisix-admin-creds"
           secretAdminKey: "admin-key"
           secretViewerKey: "viewer-key"
     etcd:
       enabled: false
     serviceAccount:
       create: true
       name: apisix-gateway
     podSecurityContext:
       runAsUser: 636
       fsGroup: 636
       seccompProfile:
         type: RuntimeDefault
     securityContext:
       runAsUser: 636
       allowPrivilegeEscalation: false
       runAsNonRoot: true
       capabilities:
         drop:
         - ALL
   
     # apisix-ingress-controller helm chart (transitive dependency)
     ingress-controller:
       enabled: true
       config:
         provider:
           type: "apisix-standalone"
       apisix:
         adminService:
           namespace: "ingress-apisix"
       gatewayProxy:
         createDefault: false
         provider:
           controlPlane:
             auth:
               adminKey:
                 valueFrom:
                   secretKeyRef:
                     name: "apisix-admin-creds"
                     key: "admin-key"
       webhook:
         failurePolicy: Ignore
       deployment:
         podSecurityContext:
           runAsUser: 2000
           seccompProfile:
             type: RuntimeDefault
         resources:
           limits:
             cpu: 200m
             memory: 128Mi
           requests:
             cpu: 100m
             memory: 128Mi
   ```
   
   ### Environment
   
   - Image: apache/apisix-ingress-controller:2.0.0-rc5
   - APISIX Ingress controller version: apisix-ingress-controller version 
2.0.0-rc5--go1.24.7
   - Kubernetes/OpenShift cluster version:
   ```
   Client Version: 4.19.0-202510142112.p2.g298429b.assembly.stream.el9-298429b
   Kustomize Version: v5.5.0
   Server Version: 4.19.18
   Kubernetes Version: v1.32.9
   ```
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to