Yes, but with the following caveats. Although OpenStack Heat documentation claims support for a subset of this format, there are a variety of nuances and underlying compatibility tools that must be run on the service provider’s cloud to support that format. Rackspace supports the CFN template format and is slowly adding support for individual resources. Currently, the server and loadbalancer resources are supported implying that customers can re-use CFN templates with these. However, if the existing CFN template contains syntax that invokes resources (AutoScale group for example), it will need to be tweaked before use. Customers are encouraged to provide feedback and request new features. This helps us prioritize our roadmap.
Cloud Deployments: FAQs
Cloud Orchestration is not a replacement for server configuration tools such as Puppet and Chef.In fact, Cloud Orchestration complements Chef or Puppet: you use Chef and Puppet to “templatize” your server software configurations, while using Cloud Orchestration templates to create a full stack that includes all the infrastructure resources required for your stack.
Cloud Orchestration enables you to quickly bootstrap your preferred software configuration management solution on to your servers. With Chef, we have gone several steps further and provide direct support to specify the cookbooks and Berksfile that you want to deploy.
No. Cloud Orchestration is an API service that enables customers to deploy their own custom application stacks. Cloud Deployments is a feature of the Cloud Control Panel that enables customers to deploy Rackspace best-practice, preconfigured application stacks.
We plan to add API support to Cloud Orchestration to enable customers to deploy Rackspace preconfigured application stacks, much like they can today in the Cloud Control Panel by using Cloud Deployments. Additionally, the Cloud Control Panel will evolve to support both Rackspace preconfigured deployments and custom application stack deployments. The ability to deploy application stacks in the Control Panel will continue to improve.
Yes. There are three main differences to note:
- Although Cloud Orchestration is based on the OpenStack Heat project, each service provider running Heat can choose which cloud resource plug-ins to support. In an effort to provide our customers broad orchestration support for the Rackspace public cloud, we run some custom resource plug-ins that other service providers might choose not to run or might not be compatible with other service provider clouds. Templates that use these custom resources might need modification to work properly on other service provider or private OpenStack installations.
Rackspace specific resources are clearly marked in our documentation and begin with Rackspace. For a full list of supported resource types, see the Cloud Orchestration documentation at http://docs.rackspace.com.
- Unlike a standard Heat installation from OpenStack, Cloud Orchestration does not support templates that use the Amazon CFN format. Instead, Cloud Orchestration supports the native Heat Orchestration Template (HOT) syntax.
- At Rackspace, we strive to provide our customers with reliable community-developed features of Heat as often as possible. However, to ensure a positive customer experience, our Cloud Orchestration service might at times use newer or older feature code from that developed in the open community. Both Heat and our Orchestration service have versioned APIs and DSL syntax so you can compare our service versions against other installations of Heat.
The Cloud Orchestration service is offered at no cost, with customers paying standard charges for cloud resources instantiated and consumed and any applicable software license fees.
Cloud Orchestration is a nonstandard Rackspace service. Service level agreements (SLAs) for the underlying infrastructure apply for successfully launched cloud products.
No, not currently. However, we plan to make it available in the Control Panel in the near future. At this time, Cloud Orchestration is accessible only through API calls.
Example templates for Cloud Orchestration are located on GitHub in the Rackspace Orchestration Templates organization.
A Cloud Orchestration template is a text file that declares what resources you want as part of a stack and how to configure those resources, including references to any installation scripts or software configuration management artifacts needed to install appropriate applications. Templates are written using the Heat Orchestration Template (HOT) syntax (currently written in YAML). Documentation on how to write templates is found under “Orchestration” at http://docs.rackspace.com.
If you do not want to create a new template from scratch, you can start by modifying one of the example templates located on GitHub in the Rackspace Orchestration Templates organization at: http://github.com/rackspace-orchestration-templates.
Cloud Orchestration template examples are currently located on GitHub in the Rackspace Orchestration Templates organization located at at https://github.com/rackspace-orchestration-templates.
Yes. Although Rackspace does not currently provide a command-line client for Cloud Orchestration, we recommend that you use the open-source Heat Python client developed by the OpenStack community. The Heat Python client is compatible with the Rackspace Cloud Orchestration service. Instructions on obtaining and installing the command-line client are located in the Cloud Orchestration Getting Started Guide at http://docs.rackspace.com.
The Heat Python client provides command-line access to the Cloud Orchestration API operations. We recommend that you use this client to run simple commands that make API calls. You can specify a --debug parameter on any command to show the underlying API request for the command. This is a good way to become familiar with the API requests.
Cloud Orchestration is an API service that enables you to create, update, and manage groups of cloud resources and their software components as a single unit and then deploy them in an automated, repeatable fashion via a template. Cloud Orchestration is based on the OpenStack Heat project.
Using the API, you can create, edit, and delete full stack configurations. Cloud Orchestration API currently supports the declaration and configuration of the following products, services, and technologies:
- Cloud Servers
- Cloud Load Balancers
- Cloud Databases
- Cloud Block Storage
- Cloud DNS
- Auto Scale
- Bash scripts
- Chef cookbooks and Berkshelf
Over time, Cloud Orchestration and Cloud Deployments will evolve to become one offering, so that the API and Control Panel functionality are the same. Cloud Orchestration is currently based on the OpenStack Heat project, while Cloud Deployments currently uses a different orchestration engine.
Cloud Deployments will evolve to use Cloud Orchestration as its underlying engine, and we expect no service disruption to customers during this evolution. Instead, we expect to offer our customers a variety of new features and capabilities as we work to make Deployments compatible with Cloud Orchestration stacks based on the OpenStack Heat project.
No, not at this time. However, we hope to offer this capability in the near future. We will be evolving the Cloud Deployments feature to be compatible with Cloud Orchestration stacks. We do not expect any service disruptions to customers during this evolution but instead expect to be able to offer our customers a variety of new features and capabilities as a result of consolidating all application deployment capabilities to one open standard.
No. Although OpenStack Heat documentation indicates support for a subset of this format, there are a variety of underlying compatibility tools that must be run on the service provider’s cloud to support that format. Rackspace Cloud Orchestration supports only the Heat Orchestration Template (HOT) format. The Heat community is standardizing on the HOT format as the preferred open syntax for OpenStack orchestration. Customers are encouraged to provide feedback and request new features.