Git Product home page Git Product logo

compass's Introduction

Overview

Compass is a central, multi-tenant system that allows you to connect Applications and manage them across multiple Kyma Runtimes. Using Compass, you can control and monitor your Application landscape in one central place. As an integral part of Kyma, Compass uses a set of features that Kyma provides, such as Istio, Prometheus, Monitoring, and Tracing. It also includes Compass UI Cockpit that exposes Compass APIs to users. Compass allows you to:

  • Connect and manage Applications and Kyma Runtimes in one central place
  • Store Applications and Runtimes configurations
  • Group Applications and Runtimes to enable integration
  • Communicate the configuration changes to Applications and Runtimes
  • Establish a trusted connection between Applications and Runtimes using various authentication methods

Compass by design does not participate in direct communication between Applications and Runtimes. It only sets up the connection. In case the cluster with Compass is down, the Applications and Runtimes cooperation still works.

For more information about the Compass architecture, technical details, and components, read the project documentation.

Prerequisites

Installation

Enable Compass in Kyma

Read this document to learn about different modes in which you can enable Compass in Kyma.

Chart installation

If you already have a running Kyma instance in at least 1.6 version, with created Secrets and Tiller client certificates, you can install the Compass Helm chart using this command:

helm install --name "compass" ./chart/compass --tls

For local installation, specify additional parameters:

helm install --set=global.isLocalEnv=true --set=global.minikubeIP=$(eval minikube ip) --name "compass" ./chart/compass --tls

Local installation with Kyma

To install Compass along with the minimal Kyma installation from the master branch, run this script:

./installation/cmd/run.sh

You can also specify Kyma version, such as 1.6 or newer:

./installation/cmd/run.sh {version}

Testing

Compass, as a part of Kyma, uses Octopus for testing. To run the Compass tests, run:

./installation/scripts/testing.sh

Read this document to learn more about testing in Kyma.

Usage

Currently, the Compass Gateway is accessible under three different hosts secured with different authentication methods:

  • https://compass-gateway.{domain} - secured with JWT token issued by Identity Service, such as Dex
  • https://compass-gateway-mtls.{domain} - secured with client certificates (mTLS)
  • https://compass-gateway-auth-oauth.{domain} - secured with OAuth 2.0 access token issued by Hydra

You can access Director GraphQL API under the /director/graphql endpoint, and Connector GraphQL API under /connector/graphql.

compass's People

Contributors

a-thaler avatar abbi-gaurav avatar akgalwas avatar akucharska avatar aszecowka avatar crabtree avatar dariadomagala-sap avatar dbadura avatar franpog859 avatar janmedrek avatar kfurgol avatar kjaksik avatar klaudiagrz avatar ksputo avatar kubadz avatar kwiatekus avatar maladie avatar montaro avatar mszostok avatar mwieczorek avatar piotrmiskiewicz avatar pk85 avatar pkosiec avatar polskikiel avatar rafalpotempa avatar rakesh-garimella avatar sayanh avatar szymongib avatar tgorgol avatar wawrzyn321 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.