mixer

module
v0.0.0-...-5253b6b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 27, 2017 License: Apache-2.0

README

Mixer

Mixer

GoDoc Go Report Card codecov.io

Mixer enables extensible policy enforcement and control within the Istio service mesh. It is responsible for insulating the proxy (Envoy) from details of the current execution environment and the intricacies of infrastructure backends.

Mixer provides three distinct features:

  • Precondition Checking. Enables callers to verify a number of preconditions before responding to an incoming request from a service consumer. Preconditions can include whether the service consumer is properly authenticated, is on the service's whitelist, passes ACL checks, and more.

  • Quota Management. Enables services to allocate and free quota on a number of dimensions, Quotas are used as a relatively simple resource management tool to provide some fairness between service consumers when contending for limited resources.

  • Telemetry Reporting. Enables services to produce logging, monitoring, tracing and billing streams intended for the service producer itself as well as for its consumers.

Learn more about Mixer here.

Please see istio.io to learn about the overall Istio project and how to get in touch with us. To learn how you can contribute to any of the Istio components, including Mixer, please see the Istio contribution guidelines.

Mixer's developer's guide presents everything you need to know to create, build, and test code for Mixer.

Mixer's Adapter Developer's Guide presents everything you need to know about extending Mixer to provide support for new backends through the development of new adapters.

Directories

Path Synopsis
kubernetes
Package kubernetes provides functionality to adapt mixer behavior to the kubernetes environment.
Package kubernetes provides functionality to adapt mixer behavior to the kubernetes environment.
memquota
Package memquota provides a simple in-memory quota implementation.
Package memquota provides a simple in-memory quota implementation.
noopLegacy
Package noopLegacy is an empty adapter implementing every aspect.
Package noopLegacy is an empty adapter implementing every aspect.
prometheus
Package prometheus publishes metric values collected by Mixer for ingestion by prometheus.
Package prometheus publishes metric values collected by Mixer for ingestion by prometheus.
cmd
shared
Package shared contains types and functions that are used across the full set of mixer commands.
Package shared contains types and functions that are used across the full set of mixer commands.
example
servicegraph
Package servicegraph defines the core model for the servicegraph service.
Package servicegraph defines the core model for the servicegraph service.
servicegraph/dot
Package dot provides serialization utilities for a servicegraph using the dot format.
Package dot provides serialization utilities for a servicegraph using the dot format.
servicegraph/promgen
Package promgen generates service graphs from a prometheus backend.
Package promgen generates service graphs from a prometheus backend.
pkg
adapter
Package adapter defines the types consumed by adapter implementations to interface with Mixer.
Package adapter defines the types consumed by adapter implementations to interface with Mixer.
adapter/test
Package test provides utility functions to assist in creating quality tests for adapters.
Package test provides utility functions to assist in creating quality tests for adapters.
api
aspect
Package aspect contains the various aspect managers which are responsible for mapping incoming requests into the interface expected by individual types of aspects.
Package aspect contains the various aspect managers which are responsible for mapping incoming requests into the interface expected by individual types of aspects.
aspect/test
Package test provides utilities for testing the //pkg/aspect code.
Package test provides utilities for testing the //pkg/aspect code.
config
Package config handles configuration ingestion and processing.
Package config handles configuration ingestion and processing.
config/crd
Package crd provides the store interface to config resources stored as kubernetes custom resource definitions (CRDs).
Package crd provides the store interface to config resources stored as kubernetes custom resource definitions (CRDs).
config/store
Package store provides the interface to the backend storage for the config and the default fsstore implementation.
Package store provides the interface to the backend storage for the config and the default fsstore implementation.
il
Package il implements the intermediate-language for the config-language interpreter of Mixer.
Package il implements the intermediate-language for the config-language interpreter of Mixer.
il/compiler
Package compiler implements a compiler that converts Mixer's expression language into a Mixer IL-based program that can be executed via an interpreter.
Package compiler implements a compiler that converts Mixer's expression language into a Mixer IL-based program that can be executed via an interpreter.
il/interpreter
Package interpreter implements an interpreter based runtime for the Mixer IL.
Package interpreter implements an interpreter based runtime for the Mixer IL.
pool
Package pool provides access to a mixer-global pool of buffers, a pool of goroutines, and a string interning table.
Package pool provides access to a mixer-global pool of buffers, a pool of goroutines, and a string interning table.
status
Package status provides utility functions for RPC status objects.
Package status provides utility functions for RPC status objects.
version
Package version provides utilities for reporting build information (including version, build id, and status) for mixer.
Package version provides utilities for reporting build information (including version, build id, and status) for mixer.
Package test supplies a fake Mixer server for use in testing.
Package test supplies a fake Mixer server for use in testing.
e2e
tools
codegen/pkg/inventory
Package inventory is used to generate the mixer adapter inventory source file.
Package inventory is used to generate the mixer adapter inventory source file.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL