Skip to main content

No project description provided

Project description

# Treadmill

[![Build Status](https://travis-ci.org/Morgan-Stanley/treadmill.svg?branch=master)](https://travis-ci.org/Morgan-Stanley/treadmill)
## Download
```shell
wget https://github.com/Morgan-Stanley/treadmill/releases/download/0.0.1/treadmill -O /usr/bin/treadmill && chmod +x /usr/bin/treadmill
```
This will put `treadmill` in your path.

## Vagrant setup for development

### Prerequisites
* [VirtualBox](https://www.virtualbox.org/wiki/Downloads)
* [Vagrant](https://www.vagrantup.com/docs/installation/)
* Install the [Guest Additions plugin](https://github.com/dotless-de/vagrant-vbguest) for Vagrant
``` sh
vagrant plugin install vagrant-vbguest
```
### Vagrant Setup
* Clone the [treadmill](https://github.com/Morgan-Stanley/treadmill.git) repo.
* Clone the [treadmill-pid1](https://github.com/Morgan-Stanley/treadmill-pid1) repo.
* Run the following commands
``` sh
cd treadmill
git checkout standard_setup
vagrant up
vagrant ssh
```
* Create the cgroup folders as root
``` sh
sudo su -
cd /sys/fs/cgroup
for i in *; do mkdir -p $i/treadmill/apps $i/treadmill/core $i/system ; done
cd -
```
* Start the zookeeper service
``` sh
cd /home/centos && zookeeper-3.4.9/bin/zkServer.sh start
```
* Make the mount private
``` sh
sudo mount --make-rprivate /
```
* Treadmill should now be available on the box
``` sh
source /home/centos/env/bin/activate
treadmill --help
```


### Treadmill cli cheatsheet
``` sh
treadmill sproc scheduler /tmp
treadmill sproc service --root-dir /tmp/treadmill/ localdisk --reserve 20G --img-location /tmp/treadmill --default-read-bps 100M --default-write-bps 100M --default-read-iops 300 --default-write-iops 300
treadmill sproc service --root-dir /tmp/treadmill/ network
treadmill sproc service --root-dir /tmp/treadmill/ cgroup

# Zookeeper shell
create /scheduled/centos.bar#123 {"memory":"100M","cpu":"10%","disk":"500M","proid":"centos","affinity":"centos.bar","services":[{"name":"sleep","command":"/bin/top","restart":{"limit":5,"interval":60}}]}
create /servers/localhost.localdomain {"parent":"all:unknown","features":[],"traits":[],"label":null,"valid_until":1488573090.0}
create /cell/all:unknown {}
create /buckets/all:unknown {"parent":null,"traits":0}

# System shell
treadmill sproc init --approot /tmp/treadmill/
cd /tmp/treadmill/running && nohup /bin/s6-svscan > s6_svscan.out & && cd -
treadmill sproc eventdaemon
treadmill sproc appcfgmgr
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Treadmill-0.0.2.tar.gz (279.0 kB view hashes)

Uploaded Source

Built Distribution

Treadmill-0.0.2-py3.4.egg (923.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page