Browse Source

Freezer puppet manifests spec

This spec is focused on issues related to various steps that need to be
done to achieve automation deployment and maintenance for Freezer
components.

Change-Id: Ia42ab8b8cb15f4df6bf33483324743ec9c0cb0d0
Vitalii Nogin 2 years ago
parent
commit
d5d5caa0dd
1 changed files with 169 additions and 0 deletions
  1. 169
    0
      specs/pike/approved/freezer-puppet-manifests.rst

+ 169
- 0
specs/pike/approved/freezer-puppet-manifests.rst View File

@@ -0,0 +1,169 @@
1
+..
2
+ This work is licensed under a Creative Commons Attribution 3.0 Unported
3
+ License.
4
+
5
+ http://creativecommons.org/licenses/by/3.0/legalcode
6
+
7
+==========================================
8
+Freezer puppet manifests spec
9
+==========================================
10
+
11
+https://blueprints.launchpad.net/freezer/+spec/freezer-puppet-manifests
12
+
13
+Problem description
14
+===================
15
+
16
+As there is no any automation tools for Freezer it is proposed to develop a
17
+set of puppet manifests for auto install the following Freezer components:
18
+
19
+* Freezer (freezer-agent and scheduler);
20
+* Freezer API;
21
+* Freezer Horizon Web UI;
22
+
23
+Optionally we can consider possible to add set of manifests for Freezer
24
+Disaster Recovery.
25
+
26
+Use Cases
27
+---------
28
+
29
+All implemented manifest should follow principles of idempotence.
30
+
31
+This bundle should make Freezer deployment pretty convenient and simple for
32
+end-users and shouldn't require additional pieces of knowledge regarding
33
+Freezer infrastructure during the first installation.
34
+
35
+Also, these manifests should significantly simplify maintenance of Freezer
36
+modules.
37
+
38
+
39
+Proposed change
40
+===============
41
+
42
+* All Freezer puppet manifest should be located in separate repo:
43
+  https://github.com/openstack/puppet-freezer
44
+* Puppet community requires having packages for various operating systems.
45
+  Nevertheless, for a while can be used package puppet module
46
+
47
+ * RPM packages should be discussed in #rdo IRC channel on Freenode and then
48
+   added in RDO trunk according to the RDO `guaidliness <https://www.rdoproject.org/documentation/rdo-packaging/#how-to-add-a-new-package-to-rdo-trunk>`_
49
+ * Debian packaging of OpenStack should be discussed in #openstack-pkg IRC
50
+   channel on Freenode
51
+
52
+* at the very beginning puppet manifests should be implemented for Freezer,
53
+  Freezer-API and python-freezerclient components and only after that for
54
+  Freezer-WebUI and Freezer-DR
55
+
56
+Alternatives
57
+------------
58
+
59
+This functionality can be implemented in various ways like ansible playbooks,
60
+shell scripts salt formulas, however, it was decided to start from puppet
61
+manifests.
62
+
63
+Data model impact
64
+-----------------
65
+
66
+None
67
+
68
+REST API impact
69
+---------------
70
+
71
+None
72
+
73
+Security impact
74
+---------------
75
+
76
+None
77
+
78
+Notifications impact
79
+--------------------
80
+
81
+None
82
+
83
+Other end user impact
84
+---------------------
85
+
86
+None
87
+
88
+Performance Impact
89
+------------------
90
+
91
+None
92
+
93
+Other deployer impact
94
+---------------------
95
+
96
+None
97
+
98
+Developer impact
99
+----------------
100
+
101
+None
102
+
103
+Implementation
104
+==============
105
+
106
+Assignee(s)
107
+-----------
108
+
109
+Primary assignee:
110
+  <None>
111
+
112
+Other contributors:
113
+  <None>
114
+
115
+Work Items
116
+----------
117
+
118
+The following task should be done according to this spec:
119
+
120
+* Initialization of puppet-freezer repo creation;
121
+* Create RPM packages;
122
+* Created DEB packages;
123
+* Implement puppet manifests for:
124
+
125
+ * handling required system packages;
126
+ * Freezer components;
127
+ * Freezer-API components;
128
+ * python-freezerclient components;
129
+ * Freezer-WebUI components;
130
+ * Freezer-DR components;
131
+
132
+* Create relevant guidelines;
133
+* Develop unit tests
134
+
135
+Dependencies
136
+============
137
+
138
+None
139
+
140
+Testing
141
+=======
142
+
143
+None
144
+
145
+Documentation Impact
146
+====================
147
+
148
+Set of runbook and additional documentation should be implemented with full
149
+description how to use Freezer puppet manifests during deployment and
150
+maintenance procedures.
151
+
152
+References
153
+==========
154
+
155
+Weekly Meeting Logs[1]
156
+
157
+[1] http://eavesdrop.openstack.org/meetings/freezer/2017/freezer.2017-03-02-14.00.log.txt
158
+
159
+
160
+History
161
+=======
162
+
163
+.. list-table:: Revisions
164
+   :header-rows: 1
165
+
166
+   * - Release Name
167
+     - Description
168
+   * - Pike
169
+     - Introduced

Loading…
Cancel
Save