API7 Docs
Configure and Manage

Configuration Reference for API7 Gateway Data Plane

Detailed configuration reference for API7 Gateway Data Plane, based on the config-default.yaml structure.

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 internal metrics and health check information.

apisix:
  status:
    enabled: true
    port: 7085

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