651016236 opened a new issue #5164:
URL: https://github.com/apache/apisix/issues/5164


   ### Issue description
   
   stream_proxy setting causes apisix to fail to start
   config.yaml
   `apisix:
     node_listen:
       - 9080
     enable_heartbeat: true
     enable_admin: true
     enable_admin_cors: true
     enable_debug: true
     enable_dev_mode: false          # Sets nginx worker_processes to 1 if set 
to true
     enable_reuseport: true          # Enable nginx SO_REUSEPORT switch if set 
to true.
     enable_ipv6: true
     config_center: etcd             # etcd: use etcd to store the config value
   
     proxy_cache:                     # Proxy Caching configuration
       cache_ttl: 10s                 # The default caching time if the 
upstream does not specify the cache time
       zones:                         # The parameters of a cache
         - name: disk_cache_one         # The name of the cache, administrator 
can be specify
           # which cache to use by name in the admin api
           memory_size: 50m             # The size of shared memory, it's used 
to store the cache index
           disk_size: 1G                # The size of disk, it's used to store 
the cache data
           disk_path: "/tmp/disk_cache_one" # The path to store the cache data
           cache_levels: "1:2"           # The hierarchy levels of a cache
   
     allow_admin:                  # 
http://nginx.org/en/docs/http/ngx_http_access_module.html#allow
       - 127.0.0.1/24
       - 0.0.0.0/0
     #   - "::/64"
     port_admin: 9180
   
     admin_key:
       # admin: can everything for configuration data
       - name: "admin"
         key: edd1c9f034335f136f87ad84b625c8f1
         role: admin
       # viewer: only can view configuration data
       - name: "viewer"
         key: 4054f7cf07e344346cd3f287985e76a2
         role: viewer
     router:
       http: 'radixtree_uri'         # radixtree_uri: match route by uri(base 
on radixtree)
       # radixtree_host_uri: match route by host + uri(base on radixtree)
       ssl: 'radixtree_sni'          # radixtree_sni: match route by SNI(base 
on radixtree)
     stream_proxy:
       tcp:
         - 9100
         - "127.0.0.1:9101"
   #    udp:
   #      - 9200
   #      - "127.0.0.1:9211"
     dns_resolver_valid: 30
     resolver_timeout: 5
     ssl:
       enable: true
       enable_http2: true
       listen_port: 9443
       ssl_protocols: "TLSv1 TLSv1.1 TLSv1.2 TLSv1.3"
       ssl_ciphers: 
"ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA"
   
   nginx_config:                     # config for render the template to 
genarate nginx.conf
     error_log: "/dev/stderr"
     error_log_level: "warn"         # warn,error
     worker_rlimit_nofile: 20480     # the number of files a worker process can 
open, should be larger than worker_connections
     event:
       worker_connections: 10620
     http:
       access_log: "/dev/stdout"
       keepalive_timeout: 60s         # timeout during which a keep-alive 
client connection will stay open on the server side.
       client_header_timeout: 60s     # timeout for reading client request 
header, then 408 (Request Time-out) error is returned to the client
       client_body_timeout: 60s       # timeout for reading client request 
body, then 408 (Request Time-out) error is returned to the client
       send_timeout: 10s              # timeout for transmitting a response to 
the client.then the connection is closed
       underscores_in_headers: "on"   # default enables the use of underscores 
in client request header fields
       real_ip_header: "X-Real-IP"    # 
http://nginx.org/en/docs/http/ngx_http_realip_module.html#real_ip_header
       real_ip_from:                  # 
http://nginx.org/en/docs/http/ngx_http_realip_module.html#set_real_ip_from
         - 127.0.0.1
         - 'unix:'
       #lua_shared_dicts:              # add custom shared cache to nginx.conf
       #  ipc_shared_dict: 100m        # custom shared cache, format: 
`cache-key: cache-size`
   
   etcd:
     host:                                 # it's possible to define multiple 
etcd hosts addresses of the same etcd cluster.
       - "http://apisix-etcd.ingress-apisix.svc.cluster.local:2379";
     prefix: "/apisix"     # apisix configurations prefix
     timeout: 30   # 30 seconds
   plugins:                          # plugin list
     - api-breaker
     - authz-keycloak
     - basic-auth
     - batch-requests
     - consumer-restriction
     - cors
     - echo
     - fault-injection
     - grpc-transcode
     - hmac-auth
     - http-logger
     - ip-restriction
     - ua-restriction
     - jwt-auth
     - kafka-logger
     - key-auth
     - limit-conn
     - limit-count
     - limit-req
     - node-status
     - openid-connect
     - authz-casbin
     - prometheus
     - proxy-cache
     - proxy-mirror
     - proxy-rewrite
     - redirect
     - referer-restriction
     - request-id
     - request-validation
     - response-rewrite
     - serverless-post-function
     - serverless-pre-function
     - sls-logger
     - syslog
     - tcp-logger
     - udp-logger
     - uri-blocker
     - wolf-rbac
     - zipkin
     - traffic-split
     - gzip
     - real-ip
   stream_plugins:
     - mqtt-proxy
     - ip-restriction
     - limit-conn`
     
   
![image](https://user-images.githubusercontent.com/5875767/135423162-1c340c7f-3b9d-4ec4-b04f-ec708886e12e.png)
   
   
   ### Environment
   
   - apisix version (cmd: `apisix version`): 2.9
   - OS (cmd: `uname -a`): apache/apisix:2.9-alpine


-- 
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