Code Monkey home page Code Monkey logo

mjs-kubernetes's Introduction

kubernetes

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with kubernetes
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module

Overview

This module at present install a kubernetes master and minion. it is still heavily in development as at present should only be used on CentOS 7 unless one wishes to add their own repos

Module Description

Will add a basic minion/master on a series of CentOS 7 Boxes

Setup

Example master setup

node 'master'{

    class {'kubernetes::master':
      master_name => '173.16.32.11', #can be hostname if dns setup
      minion_name => ['173.16.32.12','173.16.32.12'], #can be hostname if dns setup
    }
    contain 'kubernetes'
}

Example minion setup

node 'minion'{

    class {'kubernetes::minion':
      master_name => '173.16.32.11', #can be hostname if dns setup
      minion_name => '173.16.32.12', #can be hostname if dns setup
    }
    contain 'kubernetes'
}

These values can also be specified in hiera

For a master

---
  kubernetes::master_name: '173.16.32.11'
  kubernetes::minion_name:  ['173.16.32.12']

For minions

---
  kubernetes::master_name: '173.16.32.11'
  kubernetes::minion_name:  '173.16.32.12'

What kubernetes affects

kubernetes will install a kube master if kubernetes::master class is called, else it will add a minion if kubernetes::minion is called

Setup Requirements OPTIONAL

Be sure epel is enabled, if you do not have epel you will need to yum install epel-release none as yet but std lib will be needed soon

Beginning with kubernetes

I have tested this on CentOS 7 since epel has all of the rpms you will need (once epel is enabled), no additional packages should be needed. As yet I have not tied down the ordering , this will follow.

Usage

Example master setup

node 'master'{

    class {'kubernetes::master':
      master_name => '173.16.32.11', #can be hostname if dns setup
      minion_name => ['173.16.32.12','173.16.32.12'], #can be hostname if dns setup
    }
    contain 'kubernetes'
}

Example minion setup

node 'minion'{

    class {'kubernetes::minion':
      master_name => '173.16.32.11', #can be hostname if dns setup
      minion_name => '173.16.32.12', #can be hostname if dns setup
    }
    contain 'kubernetes'
}

Reference

classes as follows:

kubernetes
kubernetes::master
kubernetes::minion

Limitations

This should not be considered a production release it is far too young and undeveloped. Nonetheless it can be used as a guide. I would suggest testing this with vagrant.

Development

I welcome any input since we have very few kubernetes modules

mjs-kubernetes's People

Contributors

mjstein avatar

Watchers

James Cloos avatar Matthias Schmitz avatar  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.