Giter Site home page Giter Site logo

devstack-kubernetes's Introduction

Running a Kubernetes cluster on Devstack

Devstack is a simple OpenStack deployment tool. Its main purpose is setting up testing platforms in OpenStack's CI environment, but it is also very popular as a comparatively simple method for creating proof-of-concept clouds, or clouds for experimenting with OpenStack. Devstack can create comparatively lean clouds that don't require tens of gigabytes of RAM and storage.

This repo is a collection of instructions, scripts and configuration files for creating a single-server Devstack cloud that demonstrates Kubernetes clusters on OpenStack.

It covers two methods of deploying a cluster: Manual via kubeadm, and semiautomatic via OpenStack Magnum. Apart from the standard OpenStack services, it deploys OpenStack's loadbalancer service Octavia, the Kubernetes cluster manager Magnum, and the Octavia and Magnum GUIs. By default, Devstack clouds use an isolated network, and Devstack servers are not meant to be rebooted. These instructions connect the cloud to the external network in your home or lab and include a script that permits rebooting the server.

The instructions are structured as follows:

  1. Setting up Devstack
  2. Creating a Kubernetes cluster with OpenStack cloud provider and the CSI Cinder plugin
  3. Deploying a load-balanced application with Cinder volumes on the cluster
  4. Creating a Kubernetes cluster using the OpenStack Magnum service
  5. Deploying an application on the Magnum-managed Kubernetes cluster

The first three steps are based on the official K8s OpenStack cloud provider documentation and a blog entry on kubernetes.io that covers K8s-OpenStack integration.

Instructions, configurations and manifests were tested on a moderately sized Devstack server running Ubuntu 18.04, with 15GB of RAM and six virtual CPUs. It should be feasible on less RAM (12GB perhaps?), and half the CPUs should not be a problem.

devstack-kubernetes's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

congto duhd

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.