GithubHelp home page GithubHelp logo

hhy5277 / octant Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vmware-archive/octant

0.0 1.0 0.0 16.7 MB

A web-based, highly extensible platform for developers to better understand the complexity of Kubernetes clusters.

License: Other

Go 81.01% Shell 0.27% JavaScript 0.14% TypeScript 15.10% HTML 2.09% CSS 1.04% Dockerfile 0.09% Makefile 0.22% PowerShell 0.04%

octant's Introduction

Octant

Build Status GitHub release License

A web-based, highly extensible platform for developers to better understand the complexity of Kubernetes clusters.

Octant is a tool for developers to understand how applications run on a Kubernetes cluster. It aims to be part of the developer's toolkit for gaining insight and approaching complexity found in Kubernetes. Octant offers a combination of introspective tooling, cluster navigation, and object management along with a plugin system to further extend its capabilities.

Features

  • Resource Viewer

    Graphically visualizate relationships between objects in a Kubernetes cluster. The status of individual objects are represented by color to show workload performance.

  • Summary View

    Consolidated status and configuration information in a single page aggregated from output typically found using multiple kubectl commands.

  • Port Forward

    Forward a local port to a running pod with a single button for debugging applications and even port forward multiple pods across namespaces.

  • Log Stream

    View log streams of pod and container activity for troubleshooting or monitoring without holding multiple terminals open.

  • Label Filter

    Organize workloads with label filtering for inspecting clusters with a high volume of objects in a namespace.

  • Cluster Navigation

    Easily change between namespaces or contexts across different clusters. Multiple kubeconfig files are also supported.

  • Plugin System

    Highly extensible plugin system for users to provide additional functionality through gRPC. Plugin authors can add components on top of existing views.

Usage

Octant demo

Installation

Package (Linux only)

  1. Download the .deb or .rpm from the releases page.

  2. Install with either dpkg -i or rpm -i respectively.

Download a Pre-built Binary (Linux, macOS, Windows)

  1. Open the releases page from a browser and download the latest tarball.

  2. Extract the tarball:

    $ tar -xzvf ~/Downloads/octant_0.4.1_Linux-64bit.tar.gz
    octant_0.4.1_Linux-64bit/README.md
    octant_0.4.1_Linux-64bit/octant
  3. Verify it runs:

    $ ./octant_0.4.1_Linux-64bit/octant version

Getting Started

Before starting Octant, make sure you have access to a healthy cluster. If kubectl is installed, test using kubectl cluster-info.

Start running Octant:

$ octant

Octant should immediately launch your default web browser to an available high level port on 127.0.0.1. (i.e. http://127.0.0.1:51234)

For configuring Octant, setting up a development environment, or running tests, refer to the documentation here.

Plugins

Plugins are a core part of Octant in the Kubernetes ecosystem. A plugin can read objects and allows users to add components to Octant's views.

An example plugin can be found in cmd/octant-sample-plugin and installed to the default plugin path with make install-test-plugin.

Documentation for plugin components can be found in docs/plugins.

Discussion

Feature requests, bug reports, and enhancements are welcome. Contributors, maintainers, and users are encouraged to collaborate through these communication channels:

Contributing

New contributors will need to sign a contributor license agreement before code changes can be merged. Follow the instructions given by vmwclabot after opening a pull request.

Pull requests should also include a changelog with the naming convention described here.

See our roadmap for tentative features in a 1.0 release.

License

Octant is available under the Apache License, Version 2.0

octant's People

Contributors

alexbrand avatar bryanl avatar dependabot[bot] avatar guesswhosamfoo avatar iheanyi avatar jbeda avatar k8k avatar mdaverde avatar mikeroysoft avatar nfarruggiagl avatar nickgerace avatar schallert avatar shomron avatar underrun avatar wwitzel3 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.