Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
148 lines (108 sloc) 10.1 KB

Triton DataCenter repos

This page holds an overview of the source repositories that make up Triton DataCenter. See also the reference.

The customer-facing self-service API:

The user interface and CLI tools for administering the system:

  • sdc-adminui: Operations UI for SDC
  • sdc-sdc: Contains all the tools that go into the 'sdc' zone.
  • sdcadm: A tool for SDC upgrades, health and sanity checks, and possibly other SDC setup duties
  • sdc-imgapi-cli: SDC CLI client for working with an IMGAPI repository
  • sdc-amonadm: SDC monitoring configuration tool

Cloudapi and the administrative tools call out to the internal REST APIs to manage the system:

  • sdc-amon: SDC internal API and agents for monitoring and alarming
  • sdc-cloud-analytics: SDC internal API for gathering real-time metrics across the datacenter
  • sdc-cnapi: SDC Compute Node API -- deals with communication to and management of compute nodes
  • sdc-fwapi: SmartDataCenter Firewall API
  • sdc-imgapi: SDC internal API for managing Images
  • sdc-napi: SmartDataCenter Network API: manages networking-related data
  • sdc-papi: SDC Packages API, an HTTP interface topackages used for creating new VMs
  • sdc-sapi: SDC Services API. It coordinates the configuration and deployment of SDC services.
  • sdc-vmapi: SDC internal API for managing VMs
  • sdc-workflow: SDC installer for Workflow API and Runners

The data storage layer is used to provide HA storage to the APIs and other services:

  • moray: Moray, the highly-available key/value store (Joyent SDC, Manta)
  • sdc-ufds: SDC LDAP Server
  • manatee: Automated fault monitoring and leader-election system for strongly-consistent, highly-available writes to PostgreSQL

Infrastructure zones (VM instances) provide other essential services:

  • sdc-amonredis: SDC "amonredis" core zone.
  • sdc-assets: Static file service for SDC CNs.
  • binder: SDC/Manta DNS server over Apache Zookeeper
  • sdc-booter: SmartDataCenter Compute Node DHCP and TFTP server
  • sdc-manatee: SDC HA Postgres
  • sdc-manta: SDC tools for deploying and managing a Manta
  • mahi: Authentication cache
  • sdc-rabbitmq: RabbitMQ zone for SDC.
  • sdc-redis: SDC "redis" core zone.
  • muppet: Loadbalancer for Manta and SmartDataCenter
  • zookeeper-common: Common submodule of the sdc-zookeeper (deprecated) and binder zones, to reduce drift in ZK
  • keyapi: SmartDataCenter token API

Agents are services that run in the Global Zone of a Compute Node for management or monitoring purposes:

There are also agents that run in each SDC service zone:

Service clients are node client APIs for communicating with services:

SmartOS repos are used by the SmartOS project to build the OS image, and form the foundation for SDC:

Build tools are used for creating the zone images:

  • sdcnode: Tools for creation of prebuilt node tarballs for SDC components.
  • sdc-headnode: Repository for building headnode images for SDC, and the intial setup and configuration of the headnode itself
  • sdc-scripts: Common scripts for configuring and setting up SDC zones.
  • ipxe: SDC iPXE implementation

There are also services responsible for syncing data between datacenters or to manta:

  • sdc-hermes: Centralised tool to upload SDC logs to Manta

Documentation repos:

  • sdc: starting point for SmartDataCenter
  • eng: Joyent Engineering Guide
  • restdown-brand-remora: "remora" restdown brand/style for coherent API documentation
  • oid-docs: Document the Joyent OID tree (1.3.6.1.4.1.38678)
  • schemas: Schemas used by Joyent APIs, tools, and databases

The other repos are used by one of the other repos above:

You can’t perform that action at this time.