m3em

module
v0.0.0-...-c39c2fe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 4, 2018 License: Apache-2.0

README

Migration Warning

This repository has been migrated to github.com/m3db/m3. It's contents can be found at github.com/m3db/m3/src/m3em. Follow along there for updates. This repository is marked archived, and will no longer receive any updates.

m3em GoDoc Build Status Coverage Status

m3em (pronounced meme) is an acronym for M3 Environment Manager. ccm:C* :: m3em:m3db. Unlike ccm, m3em permits remote host operations.

The goal of m3em is to make it easy to create, manage and destroy services across hosts. It is meant for testing clustered services like m3db and m3aggregator .

Components

There are two primary components in m3em:

(1) API constructs encapsulating placement interactions (see cluster package), along with remote process orchestration (see node package).

(2) m3em_agent: process running on remote hosts. It's responsible for process lifecycle, heartbeating back to the coordinating host.

Usage Example

  • For API usage, refer tools/dtest in M3DB
m3em_agent
$ make m3em_agent
$ scp ./out/m3em_agent <remote-host>:<remote-path>
$ ssh <remote-host>
$ cat >m3em.agent.yaml <<EOF
server:
  listenAddress: "0.0.0.0:14541"
  debugAddress: "0.0.0.0:24541"

metrics:
  sampleRate: 0.02
  m3:
    hostPort: "127.0.0.1:9052"
    service: "m3em"
    includeHost: true
    env: "development"

agent:
  workingDir: /var/m3em-agent
  startupCmds:
    - path: /bin/echo
      args:
        - "sample startup command"
  releaseCmds:
    - path: /bin/echo
      args:
        - "sample release command"
  testEnvVars:
    UBER_DATACENTER: sjc1
EOF
$ /remote-path/m3em_agent -f m3em.agent.yaml

This project is released under the Apache License, Version 2.0.

Directories

Path Synopsis
generated
proto/heartbeat
Package heartbeat is a generated protocol buffer package.
Package heartbeat is a generated protocol buffer package.
proto/m3em
Package m3em is a generated protocol buffer package.
Package m3em is a generated protocol buffer package.
os
fs
services
x

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL