Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Triton DataCenter: a cloud management platform with first class support for containers.

License

NotificationsYou must be signed in to change notification settings

TritonDataCenter/triton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Triton DataCenter (just "Triton" for short, formerly "SmartDataCenter" and"SDC") is an open-source cloud management platform that delivers nextgeneration, container-based, service-oriented infrastructure across one or moredata centers. With an emphasis on ease of installation and operation, Triton isproven at scale: Triton powers theTritonCloud and private data centers(Triton Enterprise)worldwide.

This repository provides documentation for the overall Triton project andpointers to the other repositories that make up a complete Triton deployment.See therepository list.

Report bugs and request features usingGitHub Issues.For additional resources, you can visit theTriton Developer Center.

Overview

A Triton DataCenter installation consists of two or more servers. All servers runSmartOS. One server acts as the management server, thehead node, which houses the initial set of core services that drive Triton. Theremainder are compute nodes (CNs) which run instances (containers andvirtual machines).

Triton features:

  • SmartOS zones provides high performance container virtualization. KVM supporton top of zones means secure full Linux and Windows guest OS support.
  • RESTful API and CLI tooling for customer self-service
  • Complete operator portal (web app)
  • Robust and observable service oriented architecture (implemented primarily inNode.js)
  • Automated USB key, ISO, or iPXE installation

Triton consists of the following components:

  • A public API for provisioning and managing instances (virtual machines),networks, users, images, etc.
  • An operator portal
  • A set of private APIs
  • Agents running in the global zone of CNs for management and monitoring

For more details, see:

Community

Community discussion about Triton DataCenter happens in two main places:

  • Thesdc-discussmailing list.If you wish to send mail to the list you'll need to join, but you can viewand search the archives online without being a member.

  • In the#smartos IRC channel on theLibera Chat IRC network.

Getting Started

Cloud on a Laptop (CoaL)

An easy way to try Triton DataCenter is by downloading and installing a Cloudon a Laptop (CoaL) build. CoaL is a VMware virtual appliance that provides afull Triton head node for development and testing.

TheCoaL Setup document containsdetailed instructions for downloading and installing the virtual appliance.If you use the ISO installer (see below) on a Virtual Machine, the CoaL setupinstructions post-booting should be followed as well.

If you already have a CoaL and would like to update the installation, followthe instructions for [updating a Triton standup usingsdcadm.

ISO Installer

TheISO installer page containsinformation on the ISO installer. With SmartOS now able to boot off a ZFSpool, the Triton Head Node can do the same.

iPXE installer

Some deployment environments install new hardware using an iPXE boot. AniPXE boot directory for a TritonHead Node can install Triton using an iPXE installation.

Installing Triton on a Physical Server

A Triton DataCenter server runs SmartOS which is a live image. That liveimage, which generates a ramdisk root with many portions set to read-only,can boot from a USB flash drive (a physical USB key), or a ZFS pool. Toinstall a USB-key Triton, first obtain the latest release USB build.Otherwise, given the cautions in theISO installerpage, a physical server can bootoff of itszones pool.

Both USB-key-boot and ZFS-pool-boot use the same interfaces within Triton,with a ZFS bootable filesystem substituting for the USB-key.

Hardware

For Triton development only, the minimum server hardware is:

  • 8 GB USB flash drive
  • Intel Processors with VT-x and EPT support (all Xeon since Nehalem), or AMDProcessors no earlier than EPYC or Zen.
  • 16 GB RAM
  • 20 GB available storage

Hardware RAID is not recommended. Triton will lay down a ZFS ZPOOL across allavailable disks on install. You'll want much more storage if you're workingwith images and instances. If you are using an ISO or iPXE installation,configure a simple layout of disks (e.g. mirrored pair, or single raidzgroup).

If setting up a Triton DataCenter pilot then you'll want to reviewtheHardware Selection Requirements,Networking Layout Requirements,andInstallation Prerequisiteswhich include IPMI and at least 10 gigabit Ethernet. The supported hardwarecomponents for SmartOS are described in theSmartOS Hardware Requirements.certified hardware for Triton DataCenter are all intheTriton Manufacturing Database.

Install

To install a USB-key Triton, first download the latest release image:

curl -C - -O https://us-central.manta.mnx.io/Joyent_Dev/public/SmartDataCenter/usb-latest.tgz

Once you have downloaded the latest release image, you will need towrite it to a USB keyboot the head node server using the USB key, and follow the install prompts. All steps necessaryto plan, install, and configure Triton DataCenter (Triton) are available in thecustomer documentationInstalling Triton Data Center.

To install using theISOinstaller, download theISOimage,make sure you be aware of the available disks, and then follow theinstallation instructions above.

To install using theiPXEinstaller,follow the advice on theiPXE installerdocumentation.

Building

Triton is composed of several pre-built components:

  • ASmartOSplatform image. This isa slightly customized build of vanilla SmartOS for Triton.
  • Virtual machine images for Triton services (e.g. imgapi, vmapi, adminui), whichare provisioned as VMs at install time.
  • Agents bundled into asinglepackageinstalled into the global zone of each compute node.

Each component is built separately and then all are combined intoCoaL, USB, ISO, and iPXE builds (see the preceding sections) via thesdc-headnode repository. Thebuilt components are typically stored in aManta objectstore, and pulled fromthere. For example, Triton builds push to/Joyent_Dev/public/builds in our public Manta in us-central-1(https://us-central.manta.mnx.io/).

You can build your own CoaL and USB images on Mac or SmartOS (see thesdc-headnodeREADME). However, ISOand iPXE images, as well as all other Triton components must be builtusing a running Triton or in a local CoaL). Seethe building document for details onbuilding each of the Triton components.

Contributing

To report bugs or request features, submit issues here onGitHub,TritonDataCenter/triton/issues(or on the GitHub issue tracker for the relevant project).For support of Triton products and services, please contactMNX Solutions customersupport instead.

See theContribution Guidelines for information aboutcontributing changes to the project.

Design Principles

Triton DataCenter is very opinionated about how to architect a cloud. Theseopinions are the result of many years of deploying and debuggingTriton as a public cloud servicein production. Design principles include the following:

  • A VM's primary storage should be local disk, not over the network -- thisavoids difficult to debug performance pathologies.
  • Communication between internal APIs should occur in its own control plane(network) that is separate from the customer networks. Avoid communicatingover the open Internet if possible.
  • A provisioned VM should rely as little as possible on Triton services outside ofthe operating system for its normal operation.
  • Installation and operation should require as little human intervention aspossible.

The goals behind the design of Triton services include:

  • All parts of the stack should be observable.
  • The state of the running service should be simple to obtain.
  • The internals of the system should make it straightforward to debug from acore file (from a crash or taken from a running process usinggcore(1)).
  • Services should be RESTful and accept JSON unless there is a compellingreason otherwise.
  • Services should avoid keeping state and should not assume that there isonly one instance of that service running. This allows multiple instancesof a service to be provisioned for high availability.
  • Node.js and C should be used for new services.

Dependencies and Related Projects

Triton DataCenter usesSmartOS as the host operatingsystem. The SmartOS hypervisor provides both SmartOS zone (container) andKVM virtualization.

Triton's open-sourceManta projectis an HTTP-based object store with built-in support to run arbitraryprograms on data at rest (i.e., without copying data out of the object store).Manta runs on and integrates with Triton DataCenter.

License

Triton DataCenter is licensed under theMozilla Public License version 2.0.See the file LICENSE. SmartOS islicensed separately.

About

Triton DataCenter: a cloud management platform with first class support for containers.

Topics

Resources

License

Stars

Watchers

Forks


[8]ページ先頭

©2009-2025 Movatter.jp