Giter Site home page Giter Site logo

nmesos-k8s's Introduction

nmesos-k8s

Over the next couple of years some users of nmesos might decide to move off Mesos and switch to Kubernetes.

nmesos-k8s is a tool that uses the same configs as nmesos, but deploys the service to Kubernetes.

Installing it

From source

  1. Clone the repo
  2. Run make build
    • Note: You need to use ruby 3.0.0 or higher. You should run gem update --system first
  3. Move ./nmesos-k8s to a directory on your path (e.g. ~/.local/bin)

With asdf

First you need to run ...

asdf plugin add nmesos-k8s https://github.com/ninesstack/nmesos-k8s

Afterwards you can run ...

asdf list-all nmeos-k8s
asdf install nmesos-k8s <version>
asdf global nmesos-k8s <version>

... to install whatever version(s) you want.

Note: To get/see the latest version(s) you might need to run asdf plugin update nmesos-k8s to refresh the plugin.

Note: For this to work you need to have [gh][] installed.

Running it

Run the cli with nmesos-k8s. It works more less identically to nmesos in terms of the commands and supplied arguments. There are two notable differences:

  1. You must supply -s or --service-file in front of the service name
  2. You must use --no-dry-run in the standard way, rather than the non-standard --dry-run false that nmesos uses.

Run nmesos-k8s to see all available options.

Commands

  • release is for both deployment and any other changes that need to be made to a service, including scaling
  • delete will remove the service and all associated resources
  • print generates the full Kubernetes manifest that would be submitted to the API

Special Settings

There are a few settings that are supported by nmesos-k8s that are specific to K8s. These will not interfere with nmesos operation on Mesos. They are the following:

  • kubernetes_unfreeze: This can override deploy_freeze against a Kubernetes cluster. It is used to allow a service that is not allowed to be deployed to Mesos to be deployes to K8s anyway. The tool still respects deploy_freeze unless it is overridden in this manner. It is not in the k8s config section so that it can sit in the config right next to deploy_freeze. This is so that humans can try to reason about it.

  • k8s config section. This supports the following:

    • namespace: enables a specific namespace to be used for this service
    • service_account_name: sets the service account to a specific account

nmesos-k8s's People

Contributors

rolandtritsch avatar

Watchers

 avatar Dan avatar Tom Patterer 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.