Coder Social home page Coder Social logo

souravbh / lattice-release Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cloudfoundry-attic/lattice-release

0.0 2.0 0.0 24.59 MB

Lattice

Home Page: http://lattice.cf

License: Apache License 2.0

Ruby 0.36% Shell 7.20% Makefile 0.22% Go 91.93% Perl 0.07% Vim Script 0.04% HCL 0.18%

lattice-release's Introduction

Cloud Foundry Lattice

Lattice is an open source project for running containerized workloads on a cluster. Lattice bundles up http load-balancing, a cluster scheduler, log aggregation/streaming and health management into an easy-to-deploy and easy-to-use package.

[ Website | Latest Release | Nightly Builds ]

Deploy Lattice with Vagrant

A colocated deployment of Lattice can be launched locally with Vagrant. You will need:

NOTE: Ubuntu 14.04 LTS does not install a compatible version of Vagrant by default. You can upgrade the version that you get out of the box by downloading the .deb file from Vagrant.

Spin up a virtual environment

Unzip the Lattice bundle, and switch to the vagrant directory

unzip lattice-bundle-VERSION.zip
cd lattice-bundle-VERSION/vagrant
vagrant up --provider virtualbox

This spins up a virtual environment that is accessible at local.lattice.cf

Install ltc (the Lattice CLI)

If you're running Linux: curl -O http://receptor.local.lattice.cf/v1/sync/linux/ltc

If you're running OS X: curl -O http://receptor.local.lattice.cf/v1/sync/osx/ltc

Finally: chmod +x ltc

Use the Lattice CLI to target Lattice
./ltc target local.lattice.cf

Deploy Lattice with Terraform

A scalable cluster deployment of Lattice can be launched on Amazon Web Services with Terraform. You will need:

Configure your virtual environment

Unzip the Lattice bundle, and switch to the terraform/aws directory

unzip lattice-bundle-VERSION.zip
cd lattice-bundle-VERSION/terraform/aws

Update the terraform.tfvars file with your AWS credentials and desired cluster configuration.

Deploy the cluster to AWS
terraform apply

Terraform will generate a terraform.tfstate file. This file describes the cluster that was built - keep it around in order to modify/tear down the cluster.

Install ltc (the Lattice CLI)

After a successful deployment Terraform will print the Lattice target and Lattice user information. Refer to the target = <lattice target> output line to find the address of your cluster.

If you're running Linux: curl -O http://receptor.<lattice target>/v1/sync/linux/ltc

If you're running OS X: curl -O http://receptor.<lattice target>/v1/sync/osx/ltc

Finally: chmod +x ltc

Use the Lattice CLI to target Lattice
./ltc target <lattice target>

Development

NOTE: These instructions are for people contributing code to Lattice. If you only want to deploy Lattice, see above. These instructions cover Vagrant/Virtualbox development. A similar process can be followed for Vagrant/VMWare, Vagrant/AWS, and Terraform/AWS development. More documentation is forthcoming.

To develop Lattice you will need to have the following tools installed:

  • Packer
  • Vagrant
  • Virtualbox
  • Direnv (optional)

Clone the Lattice source

git clone --recursive https://github.com/cloudfoundry-incubator/lattice-release.git

Build Lattice

Setup your shell for building Lattice:

cd lattice-release
direnv allow # or: source .envrc

Building a Lattice Box

If you change any Diego components, you'll need to build a local Vagrant box with your changes. If you don't plan to change any Diego components, you can update the box_version property in vagrant/Vagrantfile to point to a pre-built Lattice box on Atlas and skip this step.

bundle
cd vagrant
./build -only=virtualbox-iso
vagrant box add --force lattice-virtualbox-v0.box --name lattice/colocated

Building a release of Lattice

# in lattice-release/vagrant
../release/build lattice.tgz

Deploy Lattice

Once you have a Lattice tarball, use vagrant to deploy Lattice:

# in lattice-release/vagrant
vagrant up --provider=virtualbox

Install ltc

Compiling ltc is as simple as using go install:

go install github.com/cloudfoundry-incubator/ltc

Test the running Lattice Cluster

ltc target local.lattice.cf
ltc test -v

Contributing

If you are interested in contributing to Lattice, please refer to CONTRIBUTING.

Copyright

See LICENSE for details. Copyright (c) 2015 Pivotal Software, Inc.

lattice-release's People

Contributors

atulkc avatar ches avatar crawsible avatar damon-pivotal avatar davidwadden avatar ekcasey avatar keaty avatar mdelillo avatar rexxar-liang avatar sclevine avatar tushar-dadlani 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.