Configuration and Usage

Reference Configurations

The source distribution includes a set of example configuration information for each of the major Grey Matter deployment types:

  • Service-to-service

  • Sidecar Proxy

  • Edge Proxy

  • Multi-mesh

The goal of this set of example configurations is to demonstrate the full capabilities of Grey Matter in a complex deployment. All features will not be applicable to all use cases. For full documentation see the configuration reference.

Configuration Generator

We use jinja templating to make our configurations easier to create and manage. The source distribution includes a version of the configuration generator that loosely approximates what we use at Lyft. We have also included three example configuration templates for each of the above three scenarios.

  • Generator script

  • Service to service template

  • Sidecar Proxy Template

  • Edge Proxy Template

  • Multi-mesh Template

To generate the example configurations run the following from the root of the repo:

mkdir -p generated/configs
bazel build //configs:example_configs
tar xvf $PWD/bazel-genfiles/configs/example_configs.tar -C generated/configs

The previous command will produce three fully expanded configurations using some variables defined inside of this-script. See the comments inside of this-script for detailed information on how the different expansions work.

Notes about the example configurations:

  • An instance of endpoint discovery service is assumed to be running at discovery.yourcompany.net

  • DNS for yourcompany.net is assumed to be setup for various things. Search the configuration templates for different instances of this.

  • Tracing is configured for .... To disable this or enable . ... or .... tracing, delete or change the tracing configuration accordingly.

  • The configuration demonstrates the use of a global rate limiting service.To disable this delete the rate limit configuration.

  • Route discovery service is configured for the service to service reference configuration and it is assumed to be running at rds.yourcompany.net.

  • Cluster discovery service is configured for the service to service reference configuration and it is assumed that be running at cds.yourcompany.net.

Grey Matter Configuration Topics

  • Consul

  • Fabric

    • Set Up the Grey Matter CLI

    • Set and Modify Sidecar Filters

    • Configure Audits

    • Use the Catalog API

    • Add and Delete a Service from the Mesh

    • Enable Audits to Be Ingested into Elasticsearch with Kibana

  • Mesh Configuration

    • Filters

      • Filters

      • RBAC

    • Networking

      • Host Identification

      • Protocol Switching

    • Routing

      • Multi-Mesh

  • More Mesh Configurations

    • Objects

      • Cluster

      • Domain

      • Listener

      • Proxy

      • Route

      • Shared Rules

      • Zone

    • gm-control

    • Discovery

    • Observability

    • L7 Traffic Management

    • Blacklist - Whitelist

    • Develop and Debug

  • Traffic Management

  • Authentication Policy

  • Authorization

  • Installation Options

  • Policies and Telemetry

  • Operator Installation

  • Resource Annotations

  • Installation Options Changes

  • Service Mesh

Questions?

Configuration Issues?

Contact us at Grey Matter Support to reach our team.