Installing the Emissary-Ingress Sample Application
To install Styra on Emissary-ingress, copy and paste the installation commands from Systems > Settings > Install from your Emissary-Ingress Gateway System into your terminal. This adds a new AuthService pointing to OPA patches OPA sidecar container along with its configuration to connect to Styra DAS through Styra Local Plane (SLP).
The Emissary-Ingress Quick Start provides the link to install the sample application. It consists of the following components that should now run in your minikube.
sample-app: A simple HTTP web server that allows employees of a hypothetical organization to obtain salary details at the path
/finance/salary. It also exposes a path
/hr/dashboardthat is only accessible by employees who are part of HR. Functionally, it is a simple echo server that returns a HTTP 200 response with a plain or text body which contains a success or error message.
client-load: A simple shell script that generates some pre-configured
HTTP GETrequests to simulate the API request being made to the edge-stack and to test the behavior of the deployed policy. It generates data to visualize the impact of the configured ingress policies.
listener and mapping: The Listener Custom Resource Definitions (CRD) defines where and how Emissary-ingress should listen for requests from the network, and mapping routes the traffic to the desired service.
slp: The Styra Local Plane (SLP) is a service that acts as an intermediary between the OPAs and Styra DAS. OPAs are configured to retrieve bundles from SLP rather than directly from Styra DAS. This increases availability as SLP fetches bundles from Styra DAS and persists them to disk. Hence, policies are still available to new or restarted OPAs even if Styra DAS is unavailable.
When you run the Emissary-Ingress sample application, the OPA pods accesses the policy from Styra DAS tenant and start enforcing it. This process takes few minutes to complete.