Freezer puppet manifests spec¶
https://blueprints.launchpad.net/freezer/+spec/freezer-puppet-manifests
Problem description¶
As there is no any automation tools for Freezer it is proposed to develop a set of puppet manifests for auto install the following Freezer components:
Freezer (freezer-agent and scheduler);
Freezer API;
Freezer Horizon Web UI;
Optionally we can consider possible to add set of manifests for Freezer Disaster Recovery.
Use Cases¶
All implemented manifest should follow principles of idempotence.
This bundle should make Freezer deployment pretty convenient and simple for end-users and shouldn’t require additional pieces of knowledge regarding Freezer infrastructure during the first installation.
Also, these manifests should significantly simplify maintenance of Freezer modules.
Proposed change¶
All Freezer puppet manifest should be located in separate repo: https://github.com/openstack/puppet-freezer
Puppet community requires having packages for various operating systems. Nevertheless, for a while can be used package puppet module
RPM packages should be discussed in #rdo IRC channel on OFTC and then added in RDO trunk according to the RDO guaidliness
Debian packaging of OpenStack should be discussed in #openstack-pkg IRC channel on OFTC
at the very beginning puppet manifests should be implemented for Freezer, Freezer-API and python-freezerclient components and only after that for Freezer-WebUI and Freezer-DR
Alternatives¶
This functionality can be implemented in various ways like ansible playbooks, shell scripts salt formulas, however, it was decided to start from puppet manifests.
Data model impact¶
None
REST API impact¶
None
Security impact¶
None
Notifications impact¶
None
Other end user impact¶
None
Performance Impact¶
None
Other deployer impact¶
None
Developer impact¶
None
Implementation¶
Assignee(s)¶
- Primary assignee:
vnogin (Vitaliy Nogin)
- Other contributors:
<None>
Work Items¶
The following task should be done according to this spec:
Initialization of puppet-freezer repo creation;
Create RPM packages;
Created DEB packages;
Implement puppet manifests for:
handling required system packages;
Freezer components;
Freezer-API components;
python-freezerclient components;
Freezer-WebUI components;
Freezer-DR components;
Create relevant guidelines;
Develop unit tests
Dependencies¶
None
Testing¶
None
Documentation Impact¶
Set of runbook and additional documentation should be implemented with full description how to use Freezer puppet manifests during deployment and maintenance procedures.
References¶
Weekly Meeting Logs[1]
[1] http://eavesdrop.openstack.org/meetings/freezer/2017/freezer.2017-03-02-14.00.log.txt
History¶
Release Name |
Description |
---|---|
Pike |
Introduced |