Docs

Configuration Reference for API7 Gateway Data Plane

The API7 Gateway Data Plane (DP) handles all incoming traffic and applies policies defined by the Control Plane. This page provides a reference for the Data Plane configuration.

Overview

The Data Plane configuration is typically managed via a config.yaml file, which overrides the default settings in config-default.yaml.

Core Configuration

Configure the core worker processes and file limits.

apisix:
  worker_processes: auto # Automatically set to number of CPU cores
  worker_rlimit_nofile: 1024000 # Max number of open files for each worker process

Listening Ports

Configure the ports for different types of traffic.

apisix:
  node_listen:
    - port: 9080 # Default HTTP port
    - port: 9443 # Default HTTPS port

Proxy Cache Configuration

Enable and configure caching to improve performance and reduce upstream load.

apisix:
  proxy_cache:
    cache_ttl: 10s
    zones:
      - name: disk_cache_one
        memory_size: 50m
        disk_size: 1g
        disk_path: "/tmp/disk_cache_one"
        cache_levels: "1:2"

Router Mode

Specify the router mode for matching incoming requests to routes.

apisix:
  router:
    http: radixtree_uri # Default router mode

TLS Settings

Configure TLS behavior for incoming HTTPS requests.

apisix:
  ssl:
    ssl_protocols: "TLSv1.2 TLSv1.3"
    ssl_ciphers: "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"

Status API Endpoint

Expose the liveness and readiness endpoints. The presence of the status block enables the listener; there is no enabled field.

apisix:
  status:
    ip: 127.0.0.1
    port: 7085

The /status endpoint returns 200 after the gateway starts. The /status/ready endpoint returns 503 when none of the configured DP Manager endpoints are available. Change ip from 127.0.0.1 when the probe runs outside the gateway container or host.

Custom Plugin Paths

Load custom-developed plugins into API7 Gateway.

apisix:
  extra_lua_path: "/usr/local/apisix/plugins/?.lua"

Environment Variables

Use environment variables to dynamically configure Data Plane nodes.

# In config.yaml, use ${VAR_NAME} syntax
apisix:
  node_listen:
    - port: ${GATEWAY_PORT}

Next Steps