Kubernetes Operations (kOps) - Production Grade k8s Installation, Upgrades and Management
Go to file
Justin Santa Barbara c69b81147d Tag 1.7.1 release 2017-10-09 11:35:25 -04:00
.back_github Adding dir 2017-02-01 01:39:06 -07:00
_vendor Restore removed submodules 2017-07-15 12:47:55 -04:00
addons Merge pull request #2949 from BradErz/fixes-2708 2017-07-15 13:13:26 -04:00
channels Have kops 1.7 use k8s 1.7 2017-06-30 15:32:54 -04:00
charts/kops Getting API server running in a kubernetes cluster with helm and docker containers 2017-03-28 06:10:21 +02:00
cloudmock/aws Support dns=private with terraform #1848 2017-04-06 07:44:41 -07:00
cmd Merge pull request #3050 from craigmonson/master 2017-07-25 14:53:50 -07:00
dns-controller support china region 2017-07-16 00:57:38 +08:00
docker Dockerfile for kops 2017-04-23 14:16:11 -05:00
docs 1.7.1 Release notes first pass 2017-10-09 09:35:15 -04:00
examples Support generated clientset as alternative to vfs clientset 2017-06-20 22:29:37 -04:00
federation Fix more instances where cluster could be nil 2017-07-23 23:39:57 -04:00
hack Merge pull request #3016 from justinsb/upload_taskify_2 2017-07-21 12:10:47 -07:00
hooks hook for prepulling images 2017-04-19 20:43:56 -04:00
images versioning kops-server container, and changing container to kubernetes default image 2017-07-17 16:18:42 -06:00
nodeup/pkg support china region 2017-07-16 00:57:38 +08:00
permalinks Channel manifest should be version aware 2017-01-25 23:13:48 -05:00
pkg Merge pull request #2960 from justinsb/dont_delete_shared_subnets 2017-07-24 22:05:43 -07:00
protokube protokube changes for allowing running a custom version of etcd 2017-07-16 20:19:03 -06:00
tests Update images in CI tests 2017-10-08 21:47:44 -04:00
upup Update kube-dns to 1.14.5 for CVE-2017-14491 2017-10-08 23:08:20 -04:00
util/pkg Fix swallowed err variable in vfs package 2017-07-18 18:09:39 -07:00
vendor vendor github.com/tent/http-link-go 2017-07-09 23:42:26 -04:00
.dockerignore Add .dockerignore file to improve build times 2017-01-04 18:11:11 -03:00
.gitignore Don't ignore tags files - we have a package named tags 2017-05-22 11:16:36 -04:00
.gitmodules vendor github.com/tent/http-link-go 2017-07-09 23:42:26 -04:00
.shipbot.yaml Add manifest for shipbot 2017-02-24 09:08:46 -05:00
.travis.yml Setting versions for go and kubectl in protokube 2017-06-24 18:35:32 -06:00
CHANGELOG.md Documentation updates 2017-06-30 15:33:37 -06:00
CONTRIBUTING.md Updates per the repo 2016-12-19 22:03:24 -07:00
LICENSE Unmangle the Apache library 2017-01-19 10:49:31 -05:00
Makefile Tag 1.7.1 release 2017-10-09 11:35:25 -04:00
OWNERS Updates per the repo 2016-12-19 22:03:24 -07:00
README.md One space after a period. Periods after sentences. 2017-07-11 19:02:53 -06:00
ROADMAP.md Fixes per code-review 2017-05-23 23:21:17 -04:00
code-of-conduct.md updating base docs to match close to kubernetes-template-project 2016-12-19 22:02:58 -07:00
doc.go Add canonical import paths 2016-11-03 23:46:27 -04:00
labels.yaml Create labels.yaml file to define the 'lgtm' and 'approved' labels. 2017-07-24 11:14:29 -07:00
version.go Sanitize docker tag consistently 2017-03-01 14:14:19 -05:00

README.md

Kubernetes Operations (kops)

Build Status Go Report Card GoDoc Widget

The easiest way to get a production grade Kubernetes cluster up and running.

What is kops?

We like to think of it as kubectl for clusters.

kops helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS (Amazon Web Services) is currently officially supported, with GCE and VMware vSphere in alpha and other platforms planned.

Can I see it in action?

Launching a Kubernetes cluster hosted on AWS

To replicate the above demo, check out our tutorial for launching a Kubernetes cluster hosted on AWS.

Features

  • Automates the provisioning of Kubernetes clusters in (AWS)
  • Deploys Highly Available (HA) Kubernetes Masters
  • Supports upgrading from kube-up
  • Built on a state-sync model for dry-runs and automatic idempotency
  • Ability to generate configuration files for AWS CloudFormation and Terraform Terraform configuration
  • Supports custom Kubernetes add-ons
  • Command line autocompletion
  • Manifest Based API Configuration
  • Community supported!

Documentations

Documentation is in the /docs directory, and the index is here.

Installing

kubectl is required, see here.

OSX From Homebrew (Latest Stable Release)

$ brew update && brew install kops

The kops binary is also available via our releases.

Linux

Download the latest release, then:

$ chmod +x kops-linux-amd64                 # Add execution permissions
$ mv kops-linux-amd64 /usr/local/bin/kops   # Move the kops to /usr/local/bin

History

See the releases for more information on changes between releases.

Getting involved and contributing!

Are you interested in contributing to kops? We, the maintainers and community, would love your suggestions, contributions, and help! We have a quick-start guide on adding a feature. Also, the maintainers can be contacted at any time to learn more about how to get involved.

In the interest of getting more new folks involved with kops, we are starting to tag issues with good-starter-issue. These are typically issues that have smaller scope but are good ways to start to get acquainted with the codebase.

We also encourage ALL active community participants to act as if they are maintainers, even if you don't have "official" write permissions. This is a community effort, we are here to serve the Kubernetes community. If you have an active interest and you want to get involved, you have real power! Don't assume that the only people who can get things done around here are the "maintainers".

We also would love to add more "official" maintainers, so show us what you can do!

What this means:

Issues

  • Help read and triage issues, assist when possible.
  • Point out issues that are duplicates, out of date, etc.
    • Even if you don't have tagging permissions, make a note and tag maintainers (/close,/dupe #127).

Pull Requests

  • Read and review the code. Leave comments, questions, and critiques (/lgtm ).
  • Download, compile, and run the code and make sure the tests pass (make test).
    • Also verify that the new feature seems sane, follows best architectural patterns, and includes tests.

Maintainers

Office Hours

Kops maintainers set aside one hour every other week for public office hours. Office hours are hosted on a zoom video chat on Fridays at 5 pm UTC/12 noon ET/9 am US Pacific, on odd week numbered weeks. We strive to get to know and help developers either working on kops or interested in getting to know more about the project.

Open Office Hours Topics

Include but not limited to:

  • Help and guide to those who attend, who are interested in contributing.
  • Discuss the current state of the kops project, including releases.
  • Strategize about how to move kops forward.
  • Collaborate about open and upcoming PRs.
  • Present demos.

This time is focused on developers, although we will never turn a courteous participant away. Please swing by, even if you've never actually installed kops.

We encourage you to reach out beforehand if you plan on attending. You're welcome to join any session, and please feel free to add an item to the agenda where we track notes from office hours.

Office hours are hosted on Zoom video conference, held on Fridays at 5 pm UTC/12 noon ET/9 am US Pacific every other odd numbered week.

You can check your week number using:

date +%V

The maintainers and other community members are generally available on the kubernetes slack in #kops, so come find and chat with us about how kops can be better for you!

GitHub Issues

Bugs

If you think you have found a bug please follow the instructions below.

  • Please spend a small amount of time giving due diligence to the issue tracker. Your issue might be a duplicate.
  • Set -v 10 command line option and save the log output. Please paste this into your issue.
  • Note the version of kops you are running (from kops version), and the command line options you are using.
  • Open a new issue.
  • Remember users might be searching for your issue in the future, so please give it a meaningful title to helps others.
  • Feel free to reach out to the kops community on kubernetes slack.

Features

We also use the issue tracker to track features. If you have an idea for a feature, or think you can help kops become even more awesome follow the steps below.

  • Open a new issue.
  • Remember users might be searching for your issue in the future, so please give it a meaningful title to helps others.
  • Clearly define the use case, using concrete examples. EG: I type this and kops does that.
  • Some of our larger features will require some design. If you would like to include a technical design for your feature please include it in the issue.
  • After the new feature is well understood, and the design agreed upon we can start coding the feature. We would love for you to code it. So please open up a WIP (work in progress) pull request, and happy coding.