github.com/apprenda/kismatic@v1.12.0/README.md (about)

     1  [![GitHub license](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg)](LICENSE)
     2  [![CircleCI](https://circleci.com/gh/apprenda/kismatic.svg?style=svg)](https://circleci.com/gh/apprenda/kismatic)
     3  [![Slackin](http://slack.kismatic.com/badge.svg)](http://slack.kismatic.com/)
     4  
     5  # Kismatic Enterprise Toolkit (KET): Design, Deployment and Operations System for Production Kubernetes Clusters
     6  
     7  <img src="https://github.com/apprenda/kismatic/raw/master/docs/logo/KET_logo.png" width="500" />
     8  
     9  ## Introduction
    10  
    11  KET is a set of production-ready defaults and best practice tools for creating enterprise-tuned Kubernetes clusters. KET was built to make it simple for organizations who fully manage their own infrastructure to deploy and run secure, highly-available Kubernetes installations with built-in sane defaults for scalable cross-cluster networking, distributed tracing, circuit-breaking, request-level routing, cluster health-checking and much more!
    12  
    13  KET operational tools include:
    14  
    15  1. [`Kismatic CLI`](docs/install.md)
    16     * Command-line control plane and lifecycle tool for installing and configuring Kubernetes on provisioned infrastructure.
    17  2. [`Kismatic Inspector`](cmd/kismatic-inspector/README.md)
    18     * Cluster health and validation utility for assuring that software and network configurations of cluster nodes are correct when installing Kubernetes.
    19  3. [`Kuberang`](https://github.com/apprenda/kuberang)
    20     * Cluster build verification to ensure networking and scaling work as intended. This tool is used to smoke-test a newly built cluster.
    21  4. [`Kismatic Provision`](https://github.com/apprenda/kismatic-provision)
    22     * Quickly provision infrastructure on public clouds such as AWS and Packet. Makes building demo and development clusters a 2-step process.
    23  
    24  ## Components
    25  | Component | Version |
    26  | --- | --- |
    27  | Kubernetes | v1.10.5 |
    28  | Docker | v17.03.2.ce |
    29  | Etcd (for Kubernetes) | v3.1.13 |
    30  | Etcd (for Calico & Contiv) | v3.1.13 |
    31  | Calico | v2.6.10 |
    32  | Weave | v2.3.0 |
    33  | Contiv | v1.1.1 |
    34  | KubeDNS | 1.14.10 |
    35  | CoreDNS | 1.1.3 |
    36  | Nginx Ingress Controller | 0.15.0 |
    37  | Helm | v2.9.1 |
    38  
    39  
    40  [Download KET here](https://github.com/apprenda/kismatic/releases)
    41  
    42  ## Supported Operating Systems
    43  - RHEL 7.4
    44  - CentOS 7.3
    45  - Ubuntu 16.04.3
    46  
    47  # Usage Documentation
    48  
    49  [Full Documentation](docs/README.md) -- Index of all the documentation
    50  
    51  [Installation Overview](docs/install.md) -- Instructions on using KET to install a Kubernetes cluster.
    52  
    53  [Upgrading Your Cluster](docs/upgrade.md) -- Instructions on using KET to upgrade your Kubernetes cluster.
    54  
    55  [Plan File Reference](docs/plan-file-reference.md) -- Reference documentaion for the KET plan file.
    56  
    57  [Cluster Examples](docs/intent.md) -- Examples for various ways you can use KET in your organization.
    58  
    59  [CNI Providers](docs/networking.md) -- Information about the supported CNI providers by KET.
    60  
    61  [Add Ons](docs/add_ons.md) -- Information about the Add-Ons supported by KET.
    62  
    63  [Kismatic CLI](https://github.com/apprenda/kismatic/tree/master/docs/kismatic-cli) -- Dynamically generated documentation for the Kismatic CLI.
    64  
    65  # Development Documentation
    66  
    67  [How to Build KET](docs/development/BUILDING.md)
    68  
    69  [How to Contribute to KET](docs/development/CONTRIBUTING.md)
    70  
    71  [Running Integration Tests](docs/development/INTEGRATION_TESTING.md)
    72  
    73  [KET Code of Conduct](docs/development/code-of-conduct.md)
    74  
    75  [KET Release Process](docs/development/RELEASE.md)
    76  
    77  # Basic Installation Instructions
    78  Use the `kismatic install` command to work through installation of a cluster. The installer expects the underlying infrastructure to be accessible via SSH using Public Key Authentication.
    79  
    80  The installation consists of three phases:
    81  
    82  1. **Plan**: `kismatic install plan`
    83     1. The installer will ask basic questions about the intent of your cluster.
    84     2. The installer will produce a `kismatic-cluster.yaml` which you will edit to capture your intent.
    85  2. **Provision**
    86     1. You provision your own machines
    87     2. You tweak your network
    88     3. Review the installation plan in `kismatic-cluster.yaml` and add information for each node.
    89  3. **Install**: `kismatic install apply`
    90     1. The installer checks your provisioned infrastructure against your intent.
    91     2. If the installation plan is valid, Kismatic will build you a cluster.
    92     3. After installation, Kismatic performs a basic test of scaling and networking on the cluster
    93  
    94  ### Using your cluster
    95  
    96  KET automatically configures and deploys [Kubernetes Dashboard](http://kubernetes.io/docs/user-guide/ui/) in your new cluster. Open the link provided at the end of the installation in your browser to use it.
    97  
    98  Simply use the `kismatic dashboard` command to open the dashboard
    99  
   100  During installation Kismatic generates a [kubeconfig file](http://kubernetes.io/docs/user-guide/kubeconfig-file/) in `generated/dashboard-admin-kubeconfig` with admin access, use that file or [create your own](https://github.com/kubernetes/dashboard/wiki/Creating-sample-user) RBAC backed users to access the dashboard.
   101  
   102  The installer also generates a [kubeconfig file](http://kubernetes.io/docs/user-guide/kubeconfig-file/) in `generated/kubeconfig` required for [kubectl](http://kubernetes.io/docs/user-guide/kubectl-overview/). Instructions are provided at the end of the installation on how to use it.