You are viewing documentation of Keptn that is currently under development and subject to change.

Quick Start

Learn how to get Keptn running in five minutes.

1. Setup Kubernetes cluster

Select one of the following options:

Google Kubernetes Engine (GKE)

Run your Keptn installation for free on GKE! If you sign up for a Google Cloud account, Google gives you an initial $300 credit. For deploying Keptn you can apply for an additional $200 credit which you can use towards that GKE cluster needed to run Keptn.

Apply for your credit here

  1. Install local tools

  2. Create GKE cluster

    • Master version:: 1.15.x (tested version: 1.15.9-gke.22)
    • One n1-standard-8 node
    • Image type Ubuntu or COS (Note: If you plan to use Dynatrace monitoring, select ubuntu for a more convenient setup.)
    • Sample script to create such cluster:
    // set environment variables
    PROJECT=nameofgcloudproject
    CLUSTER_NAME=nameofcluster
    ZONE=us-central1-a
    REGION=us-central1
    GKE_VERSION="1.15"
    
    gcloud container clusters create $CLUSTER_NAME --project $PROJECT --zone $ZONE --no-enable-basic-auth --cluster-version $GKE_VERSION --machine-type "n1-standard-8" --image-type "UBUNTU" --disk-type "pd-standard" --disk-size "100" --metadata disable-legacy-endpoints=true --scopes "https://www.googleapis.com/auth/devstorage.read_only","https://www.googleapis.com/auth/logging.write","https://www.googleapis.com/auth/monitoring","https://www.googleapis.com/auth/servicecontrol","https://www.googleapis.com/auth/service.management.readonly","https://www.googleapis.com/auth/trace.append" --num-nodes "1" --enable-stackdriver-kubernetes --no-enable-ip-alias --network "projects/$PROJECT/global/networks/default" --subnetwork "projects/$PROJECT/regions/$REGION/subnetworks/default" --addons HorizontalPodAutoscaling,HttpLoadBalancing --no-enable-autoupgrade
    

K3s

Note: Please refer to the official homepage of K3s for detailed installation instructions. Within this page we only provide a very short guide on how we run Keptn on K3s.

  1. Download, install K3s (tested with versions 1.16 to 1.18) and run K3s using the following command:

    curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=v1.18.3+k3s1 K3S_KUBECONFIG_MODE="644" sh -s - --no-deploy=traefik
    

    This installs version v1.18.3+k3s1 (please refer to the K3s GitHub releases page for newer releases), sets file permissions 644 on /etc/rancher/k3s/k3s.yaml and disables traefik as an ingress controller.

  2. Export the Kubernetes profile using

    export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
    
  3. Verify that the connection to the cluster works

    kubectl get nodes   
    

Other options

We also support installation on the following platforms:

  • AWS Elastic Kubernetes Service (EKS)
  • Azure Kubernetes Service (AKS)
  • Minikube
  • OpenShift 3.11
  • Pivotal Container Service

For details on these, please visit our detailed installation guide.

2. Install Keptn

The following instructions will install the latest stable Keptn CLI (0.6.2) in a quick way. Please also look at our detailed installation guide for Keptn if you need more information.

2.1 Install the Keptn CLI

The Keptn CLI is the one-stop-shop for all operations related to Keptn.

Please make sure you have kubectl installed (see kubernetes.io/docs/tasks/tools/install-kubectl).

2.1.1 Automatic install of the Keptn CLI (Linux and Mac)
  1. This will download the latest stable Keptn version from GitHub, unpack it and move it to /usr/local/bin/keptn.

    curl -sL https://get.keptn.sh | sudo -E bash
    
  2. Verify that the installation has worked and that the version is correct by running:

    keptn version
    
2.1.2 Manual install of the Keptn CLI
  1. Download a release for your platform from the release page

  2. Unpack the binary and move it to a directory of your choice (e.g., /usr/local/bin/)

  3. Verify that the installation has worked and that the version is correct by running:

    keptn version
    

3. Run the Keptn installer

Depending on the platform, Keptn install will prompt you different information needed to perform the installation.

keptn install --platform=[aks|eks|gke|openshift|pks|kubernetes]

Note: For a Minikube setup, use option --platform=kubernetes.

After a successful installation, you can verify that Keptn is working by executing

keptn status

Keptn is now ready to be used.

4. Explore tutorials to learn more about the Keptn use cases

With Keptn installed, have a look at the different tutorials to learn hands-on about the Keptn use cases:

A full tour through Keptn: Continuous Delivery & Automated Operations

Learn how to setup Keptn for a sample cloud native app where Keptn deploys, tests, validates, promotes and auto-remediates
Continuous Delivery with Deployment Validation

Keptn deploys, tests, validates and promotes your artifacts across a multi-stage delivery process
Automated Operations

Keptn automates problem remediation in production through self-healing and runbook automation
Performance as a Self-Service

Keptn deploys, tests and provides automated performance feedback of your artifacts
Performance Testing as a Self-Service

Let Keptn execute performance tests against your deployed software and provide automatic SLI/SLO based feedback
Deployment Validation (aka Quality Gates)

Integrate Keptn into your existing CI/CD by automatically validating your monitored environment based on SLIs/SLOs

5. Learn how Keptn works and how it can be adapted to your use cases

Review the documentaiton for a full reference on all Keptn cabilities and components and how they can be combined/extended to your needs:

6. You need help?

Join our slack channel for any questions that may arise.

7. Uninstall Keptn

keptn uninstall