Uploading files to data plane nodes
About this task
After you upload the ping-auth plugin’s schema to Konnect, upload the following files for the plugin to each Kong Konnect data plane node:
-
access.lua -
handler.lua -
Network_handle.lua -
response.lua -
schema.lua
|
If a data plane node doesn’t have these files, the |
Follow the Kong Gateway plugin deployment instructions to set up the plugin on each node. Instructions can vary depending on the platform. If you’re running Kong Gateway on Docker, the following instructions are provided as an example.
Install the ping-auth plugin inside the Kong Konnect Docker container for each node. Copy or mount the plugin’s source code into the container.
Steps
-
In your control plane, go to Data Plane Nodes, then click New Data Plane Node.
-
Select a Platform, for example Linux (Docker), and Generate a certificate.
-
Copy the generated Docker run command and add the following snippet to it.
Substitute your own source and target paths.
-
The <source_path> is the location where you extracted the
ping-authplugin files. This is the parent folder that contains theping-authfolder. -
The <target_path> is where you keep custom Kong plugins. This is the path to the
ping-authplugin.-v "/<source_path>:/ping-auth:/<target_path>/ping-auth" \ -e "KONG_PLUGINS=bundled,ping-auth" \ -e "KONG_LUA_PACKAGE_PATH=/<target_path>/?.lua;;" \
-
-
To start a data plane node with the
ping-authplugin loaded, run the command.Example:
For example, the command will look something like this, including the three snippet lines from the previous step. In this example,
plugins/kongrepresents the <source_path> and/usr/local/share/lua/5.1/kong/pluginsrepresents the <target_path>.docker run -d \ -v "/plugins/kong/ping-auth:/usr/local/share/lua/5.1/kong/plugins/ping-auth" \ -e "KONG_PLUGINS=bundled,ping-auth" \ -e "KONG_LUA_PACKAGE_PATH=/usr/local/share/lua/5.1/kong/plugins/?.lua;;" \ -e "KONG_ROLE=data_plane" \ -e "KONG_DATABASE=off" \ -e "KONG_VITALS=off" \ -e "KONG_NGINX_WORKER_PROCESSES=1" \ -e "KONG_CLUSTER_MTLS=pki" \ -e "KONG_CLUSTER_CONTROL_PLANE=<example>.cp0.konghq.com:443" \ -e "KONG_CLUSTER_SERVER_NAME=<example>.cp0.konghq.com" \ -e "KONG_CLUSTER_TELEMETRY_ENDPOINT=<example>.tp0.konghq.com:443" \ -e "KONG_CLUSTER_TELEMETRY_SERVER_NAME=<example>.tp0.konghq.com" \ -e "KONG_CLUSTER_CERT=<cert>" \ -e "KONG_CLUSTER_CERT_KEY=<key>" \ -e "KONG_LUA_SSL_TRUSTED_CERTIFICATE=system" \ -e "KONG_KONNECT_MODE=on" \ -p 8000:8000 \ -p 8443:8443 \ kong/kong-gateway:<version> -
To confirm the Docker deployment, run the following command:
"docker logs [container id]"