arehmandev / gloo

The Function Gateway built on top of Envoy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gloo

The Function Gateway


Gloo is an ingress controller and function gateway built on the Envoy Proxy, written in Go.

Gloo expands upon the model of traditional API Gateways as (currently) the only gateway to support routing on the function level. This allows users to compose gateway APIs from more granular components, i.e. the functions that compose services, rather than the services themselves.

This repository contains the core controller of the Gloo system. The core includes the Envoy xDS server and the translator that manages and calls Gloo plugins.

For an in-depth breakdown of of Gloo and its features, please see our documentation.

Getting Started

Getting started with Gloo on Kubernetes is as easy as running

kubectl apply \
  -f https://raw.githubusercontent.com/solo-io/gloo-install/master/kube/install.yaml

which will create the gloo-system namespace and deploy Envoy, Gloo, and Gloo's discovery services. To create your first routes with Gloo, see the getting started page in our documentation.

Documentation

Repository Guide

Repo What it does?
gloo The gloo control plane. Implements the ADS API for envoy
gloo-install Install manifests and Helm chart.
thetool Easily build gloo+envoy with plugins enabled or disabled.
glooctl Command line client for gloo, for easy config manipulation.
gloo-api Proto API definitions (upstreams, virtualhosts, routes...).
gloo-function-discovery Auto discovery for functions in upstreams (i.e. lambda functions, swagger functions).
gloo-storage Abstracts configuration storage and change watch. kube and file are currently supported.
gloo-testing e2e testing with minikube.
gloo-plugins Plugins that can be enabled and built into gloo using thetool.
gloo-k8s-service-discovery Auto register kubernetes services as gloo upstreams.
gloo-ingress-controller Kube ingress controller that generates gloo upstreams.
envoy-common Common libraries that enabled functional envoy filters.
envoy-lambda AWS lambda support for envoy.
envoy-transformation Request and response transformation for envoy.
envoy-google-function Google Cloud Functions support for envoy.

Community

Join us on our slack channel: https://slack.solo.io/


Thanks

Gloo would not be possible without the valuable open-source work of projects in the community. We would like to extend a special thank-you to envoy.

About

The Function Gateway built on top of Envoy

License:Apache License 2.0


Languages

Language:Go 93.4%Language:JavaScript 4.9%Language:Shell 1.1%Language:Makefile 0.6%