Code Monkey home page Code Monkey logo

fleet's Introduction

fleet - a Distributed init System.

fleet ties together systemd and etcd into a distributed init system. Think of it as an extension of systemd that operates at the cluster level instead of the machine level.

This project is very low level and is designed as a foundation for higher order orchestration. This is a preview release โ€“ please read the security notice.

Build Status

Common Uses

fleet allows you to define flexible architectures for running your services:

  • Deploy a single container anywhere on the cluster
  • Deploy multiple copies of the same container
  • Ensure that containers are deployed together on the same machine
  • Forbid specific services from co-habitation
  • Maintain N containers of a service, re-deploying on failure
  • Deploy containers on machines matching specific metadata

Examples

List Machines in the Cluster

$ fleetctl list-machines
MACHINE									IP			METADATA
148a18ff-6e95-4cd8-92da-c9de9bb90d5a	19.4.0.112	region=us-west
491586a6-508f-4583-a71d-bfc4d146e996	19.4.0.113	region=us-east

Submit & Start Units

$ ls examples/
hello.service	ping.service	pong.service
$ fleetctl submit examples/*
$ fleetctl start hello.service

List Units

$ fleetctl list-units
UNIT			LOAD	ACTIVE	SUB		DESC	MACHINE
hello.service	loaded	active	running	-		148a18ff-6e95-4cd8-92da-c9de9bb90d5a
ping.service	-		-		-		-		-
pong.service	-		-		-		-		-

Getting Started

Before you can deploy units, fleet must be deployed and configured on each host in your cluster. After you have machines configured (fleetctl list-machines), start some units.

Building

fleet must be built with Go 1.2 on a Linux machine, or in a Go docker container. Simply run ./build and then copy the binaries out of bin/ onto each of your machines.

Project Details

APIs

The current fleet interfaces should not be considered stable. Expect incompatible changes in subsequent releases.

Contributing

See CONTRIBUTING for details on submitting patches and contacting developers via IRC and mailing lists.

License

fleet is released under the Apache 2.0 license. See the LICENSE file for details.

Specific components of fleet use code derivative from software distributed under other licenses; in those cases the appropriate licenses are stipulated alongside the code.

fleet's People

Contributors

badboy avatar bcwaldon avatar calavera avatar deedubs avatar jonboulle avatar philips avatar polvi avatar robszumski avatar uwedeportivo avatar yichengq avatar

Watchers

 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.