|
...
|
...
|
@@ -2,99 +2,120 @@
|
|
2
|
2
|
FAQ
|
|
3
|
3
|
===
|
|
4
|
4
|
|
|
5
|
|
-- `General Questions <#general>`__
|
|
6
|
|
-- `Operation and Configuration <#ops_conf>`__
|
|
7
|
|
-- `Miscellaneous <#misc>`__
|
|
|
5
|
+.. contents::
|
|
|
6
|
+ :local:
|
|
8
|
7
|
|
|
9
|
8
|
General Questions
|
|
10
|
9
|
=================
|
|
11
|
10
|
|
|
12
|
|
-Q: Can I use DevStack for production?
|
|
13
|
|
-
|
|
14
|
|
- A: DevStack is targeted at developers and CI systems to use the
|
|
15
|
|
- raw upstream code. It makes many choices that are not appropriate
|
|
16
|
|
- for production systems.
|
|
17
|
|
-
|
|
18
|
|
- Your best choice is probably to choose a `distribution of
|
|
19
|
|
- OpenStack
|
|
20
|
|
- <https://www.openstack.org/marketplace/distros>`__.
|
|
21
|
|
-
|
|
22
|
|
-Q: Why a shell script, why not chef/puppet/...
|
|
23
|
|
- A: The script is meant to be read by humans (as well as ran by
|
|
24
|
|
- computers); it is the primary documentation after all. Using a
|
|
25
|
|
- recipe system requires everyone to agree and understand chef or
|
|
26
|
|
- puppet.
|
|
27
|
|
-
|
|
28
|
|
-Q: I'd like to help!
|
|
29
|
|
- A: That isn't a question, but please do! The source for DevStack is
|
|
30
|
|
- at
|
|
31
|
|
- `git.openstack.org <https://git.openstack.org/cgit/openstack-dev/devstack>`__
|
|
32
|
|
- and bug reports go to
|
|
33
|
|
- `LaunchPad <http://bugs.launchpad.net/devstack/>`__. Contributions
|
|
34
|
|
- follow the usual process as described in the `developer
|
|
35
|
|
- guide <http://docs.openstack.org/infra/manual/developers.html>`__. This Sphinx
|
|
36
|
|
- documentation is housed in the doc directory.
|
|
37
|
|
-
|
|
38
|
|
-Q: Why not use packages?
|
|
39
|
|
- A: Unlike packages, DevStack leaves your cloud ready to develop -
|
|
40
|
|
- checkouts of the code and services running in screen. However, many
|
|
41
|
|
- people are doing the hard work of packaging and recipes for
|
|
42
|
|
- production deployments.
|
|
43
|
|
-
|
|
44
|
|
-Q: Why isn't $MY\_FAVORITE\_DISTRO supported?
|
|
45
|
|
- A: DevStack is meant for developers and those who want to see how
|
|
46
|
|
- OpenStack really works. DevStack is known to run on the
|
|
47
|
|
- distro/release combinations listed in ``README.md``. DevStack is
|
|
48
|
|
- only supported on releases other than those documented in
|
|
49
|
|
- ``README.md`` on a best-effort basis.
|
|
50
|
|
-
|
|
51
|
|
-Q: Are there any differences between Ubuntu and Centos/Fedora support?
|
|
52
|
|
- A: Both should work well and are tested by DevStack CI.
|
|
53
|
|
-
|
|
54
|
|
-Q: Why can't I use another shell?
|
|
55
|
|
- A: DevStack now uses some specific bash-ism that require Bash 4, such
|
|
56
|
|
- as associative arrays. Simple compatibility patches have been accepted
|
|
57
|
|
- in the past when they are not complex, at this point no additional
|
|
58
|
|
- compatibility patches will be considered except for shells matching
|
|
59
|
|
- the array functionality as it is very ingrained in the repo and project
|
|
60
|
|
- management.
|
|
61
|
|
-
|
|
62
|
|
-Q: Can I test on OS/X?
|
|
63
|
|
- A: Some people have success with bash 4 installed via
|
|
64
|
|
- homebrew to keep running tests on OS/X.
|
|
|
11
|
+Can I use DevStack for production?
|
|
|
12
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
13
|
+
|
|
|
14
|
+DevStack is targeted at developers and CI systems to use the raw
|
|
|
15
|
+upstream code. It makes many choices that are not appropriate for
|
|
|
16
|
+production systems.
|
|
|
17
|
+
|
|
|
18
|
+Your best choice is probably to choose a `distribution of OpenStack
|
|
|
19
|
+<https://www.openstack.org/marketplace/distros/distribution>`__.
|
|
|
20
|
+
|
|
|
21
|
+Why a shell script, why not chef/puppet/...
|
|
|
22
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
23
|
+
|
|
|
24
|
+The script is meant to be read by humans (as well as ran by
|
|
|
25
|
+computers); it is the primary documentation after all. Using a recipe
|
|
|
26
|
+system requires everyone to agree and understand chef or puppet.
|
|
|
27
|
+
|
|
|
28
|
+I'd like to help!
|
|
|
29
|
+~~~~~~~~~~~~~~~~~
|
|
|
30
|
+
|
|
|
31
|
+That isn't a question, but please do! The source for DevStack is at
|
|
|
32
|
+`git.openstack.org
|
|
|
33
|
+<https://git.openstack.org/cgit/openstack-dev/devstack>`__ and bug
|
|
|
34
|
+reports go to `LaunchPad
|
|
|
35
|
+<http://bugs.launchpad.net/devstack/>`__. Contributions follow the
|
|
|
36
|
+usual process as described in the `developer guide
|
|
|
37
|
+<http://docs.openstack.org/infra/manual/developers.html>`__. This
|
|
|
38
|
+Sphinx documentation is housed in the doc directory.
|
|
|
39
|
+
|
|
|
40
|
+Why not use packages?
|
|
|
41
|
+~~~~~~~~~~~~~~~~~~~~~
|
|
|
42
|
+
|
|
|
43
|
+Unlike packages, DevStack leaves your cloud ready to develop -
|
|
|
44
|
+checkouts of the code and services running in screen. However, many
|
|
|
45
|
+people are doing the hard work of packaging and recipes for production
|
|
|
46
|
+deployments.
|
|
|
47
|
+
|
|
|
48
|
+Why isn't $MY\_FAVORITE\_DISTRO supported?
|
|
|
49
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
50
|
+
|
|
|
51
|
+DevStack is meant for developers and those who want to see how
|
|
|
52
|
+OpenStack really works. DevStack is known to run on the distro/release
|
|
|
53
|
+combinations listed in ``README.md``. DevStack is only supported on
|
|
|
54
|
+releases other than those documented in ``README.md`` on a best-effort
|
|
|
55
|
+basis.
|
|
|
56
|
+
|
|
|
57
|
+Are there any differences between Ubuntu and Centos/Fedora support?
|
|
|
58
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
59
|
+
|
|
|
60
|
+Both should work well and are tested by DevStack CI.
|
|
|
61
|
+
|
|
|
62
|
+Why can't I use another shell?
|
|
|
63
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
64
|
+
|
|
|
65
|
+DevStack now uses some specific bash-ism that require Bash 4, such as
|
|
|
66
|
+associative arrays. Simple compatibility patches have been accepted in
|
|
|
67
|
+the past when they are not complex, at this point no additional
|
|
|
68
|
+compatibility patches will be considered except for shells matching
|
|
|
69
|
+the array functionality as it is very ingrained in the repo and
|
|
|
70
|
+project management.
|
|
|
71
|
+
|
|
|
72
|
+Can I test on OS/X?
|
|
|
73
|
+~~~~~~~~~~~~~~~~~~~
|
|
|
74
|
+
|
|
|
75
|
+Some people have success with bash 4 installed via homebrew to keep
|
|
|
76
|
+running tests on OS/X.
|
|
65
|
77
|
|
|
66
|
78
|
Operation and Configuration
|
|
67
|
79
|
===========================
|
|
68
|
80
|
|
|
69
|
|
-Q: Can DevStack handle a multi-node installation?
|
|
70
|
|
- A: Yes, see :doc:`multinode lab guide <guides/multinode-lab>`
|
|
|
81
|
+Can DevStack handle a multi-node installation?
|
|
|
82
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
83
|
+
|
|
|
84
|
+Yes, see :doc:`multinode lab guide <guides/multinode-lab>`
|
|
|
85
|
+
|
|
|
86
|
+How can I document the environment that DevStack is using?
|
|
|
87
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
71
|
88
|
|
|
72
|
|
-Q: How can I document the environment that DevStack is using?
|
|
73
|
|
- A: DevStack includes a script (``tools/info.sh``) that gathers the
|
|
74
|
|
- versions of the relevant installed apt packages, pip packages and
|
|
75
|
|
- git repos. This is a good way to verify what Python modules are
|
|
76
|
|
- installed.
|
|
|
89
|
+DevStack includes a script (``tools/info.sh``) that gathers the
|
|
|
90
|
+versions of the relevant installed apt packages, pip packages and git
|
|
|
91
|
+repos. This is a good way to verify what Python modules are
|
|
|
92
|
+installed.
|
|
77
|
93
|
|
|
78
|
|
-Q: How do I turn off a service that is enabled by default?
|
|
79
|
|
- A: Services can be turned off by adding ``disable_service xxx`` to
|
|
80
|
|
- ``local.conf`` (using ``n-vol`` in this example):
|
|
|
94
|
+How do I turn off a service that is enabled by default?
|
|
|
95
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
96
|
+
|
|
|
97
|
+Services can be turned off by adding ``disable_service xxx`` to
|
|
|
98
|
+``local.conf`` (using ``n-vol`` in this example):
|
|
81
|
99
|
|
|
82
|
100
|
::
|
|
83
|
101
|
|
|
84
|
102
|
disable_service n-vol
|
|
85
|
103
|
|
|
86
|
|
-Q: Is enabling a service that defaults to off done with the reverse of the above?
|
|
87
|
|
- A: Of course!
|
|
|
104
|
+Is enabling a service that defaults to off done with the reverse of the above?
|
|
|
105
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
106
|
+Of course!
|
|
88
|
107
|
|
|
89
|
108
|
::
|
|
90
|
109
|
|
|
91
|
110
|
enable_service qpid
|
|
92
|
111
|
|
|
93
|
|
-Q: How do I run a specific OpenStack milestone?
|
|
94
|
|
- A: OpenStack milestones have tags set in the git repo. Set the
|
|
95
|
|
- appropriate tag in the ``*_BRANCH`` variables in ``local.conf``.
|
|
96
|
|
- Swift is on its own release schedule so pick a tag in the Swift repo
|
|
97
|
|
- that is just before the milestone release. For example:
|
|
|
112
|
+How do I run a specific OpenStack milestone?
|
|
|
113
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
114
|
+
|
|
|
115
|
+OpenStack milestones have tags set in the git repo. Set the
|
|
|
116
|
+appropriate tag in the ``*_BRANCH`` variables in ``local.conf``.
|
|
|
117
|
+Swift is on its own release schedule so pick a tag in the Swift repo
|
|
|
118
|
+that is just before the milestone release. For example:
|
|
98
|
119
|
|
|
99
|
120
|
::
|
|
100
|
121
|
|
|
...
|
...
|
@@ -107,16 +128,16 @@ Q: How do I run a specific OpenStack milestone?
|
|
107
|
107
|
NEUTRON_BRANCH=stable/kilo
|
|
108
|
108
|
SWIFT_BRANCH=2.3.0
|
|
109
|
109
|
|
|
110
|
|
-Q: What can I do about RabbitMQ not wanting to start on my fresh new VM?
|
|
111
|
|
- A: This is often caused by ``erlang`` not being happy with the
|
|
112
|
|
- hostname resolving to a reachable IP address. Make sure your
|
|
113
|
|
- hostname resolves to a working IP address; setting it to 127.0.0.1
|
|
114
|
|
- in ``/etc/hosts`` is often good enough for a single-node
|
|
115
|
|
- installation. And in an extreme case, use ``clean.sh`` to eradicate
|
|
116
|
|
- it and try again.
|
|
|
110
|
+What can I do about RabbitMQ not wanting to start on my fresh new VM?
|
|
|
111
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
112
|
+
|
|
|
113
|
+This is often caused by ``erlang`` not being happy with the hostname
|
|
|
114
|
+resolving to a reachable IP address. Make sure your hostname resolves
|
|
|
115
|
+to a working IP address; setting it to 127.0.0.1 in ``/etc/hosts`` is
|
|
|
116
|
+often good enough for a single-node installation. And in an extreme
|
|
|
117
|
+case, use ``clean.sh`` to eradicate it and try again.
|
|
117
|
118
|
|
|
118
|
|
-Q: How can I set up Heat in stand-alone configuration?
|
|
119
|
|
- A: Configure ``local.conf`` thusly:
|
|
|
119
|
+Configure ``local.conf`` thusly:
|
|
120
|
120
|
|
|
121
|
121
|
::
|
|
122
|
122
|
|
|
...
|
...
|
@@ -126,22 +147,25 @@ Q: How can I set up Heat in stand-alone configuration?
|
|
126
|
126
|
KEYSTONE_SERVICE_HOST=<keystone-host>
|
|
127
|
127
|
KEYSTONE_AUTH_HOST=<keystone-host>
|
|
128
|
128
|
|
|
129
|
|
-Q: Why are my configuration changes ignored?
|
|
130
|
|
- A: You may have run into the package prerequisite installation
|
|
131
|
|
- timeout. ``tools/install_prereqs.sh`` has a timer that skips the
|
|
132
|
|
- package installation checks if it was run within the last
|
|
133
|
|
- ``PREREQ_RERUN_HOURS`` hours (default is 2). To override this, set
|
|
134
|
|
- ``FORCE_PREREQ=1`` and the package checks will never be skipped.
|
|
|
129
|
+Why are my configuration changes ignored?
|
|
|
130
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
131
|
+
|
|
|
132
|
+You may have run into the package prerequisite installation
|
|
|
133
|
+timeout. ``tools/install_prereqs.sh`` has a timer that skips the
|
|
|
134
|
+package installation checks if it was run within the last
|
|
|
135
|
+``PREREQ_RERUN_HOURS`` hours (default is 2). To override this, set
|
|
|
136
|
+``FORCE_PREREQ=1`` and the package checks will never be skipped.
|
|
135
|
137
|
|
|
136
|
138
|
Miscellaneous
|
|
137
|
139
|
=============
|
|
138
|
140
|
|
|
139
|
|
-Q: ``tools/fixup_stuff.sh`` is broken and shouldn't 'fix' just one version of packages.
|
|
140
|
|
- A: [Another not-a-question] No it isn't. Stuff in there is to
|
|
141
|
|
- correct problems in an environment that need to be fixed elsewhere
|
|
142
|
|
- or may/will be fixed in a future release. In the case of
|
|
143
|
|
- ``httplib2`` and ``prettytable`` specific problems with specific
|
|
144
|
|
- versions are being worked around. If later releases have those
|
|
145
|
|
- problems than we'll add them to the script. Knowing about the broken
|
|
146
|
|
- future releases is valuable rather than polling to see if it has
|
|
147
|
|
- been fixed.
|
|
|
141
|
+``tools/fixup_stuff.sh`` is broken and shouldn't 'fix' just one version of packages.
|
|
|
142
|
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
143
|
+
|
|
|
144
|
+Stuff in there is to correct problems in an environment that need to
|
|
|
145
|
+be fixed elsewhere or may/will be fixed in a future release. In the
|
|
|
146
|
+case of ``httplib2`` and ``prettytable`` specific problems with
|
|
|
147
|
+specific versions are being worked around. If later releases have
|
|
|
148
|
+those problems than we'll add them to the script. Knowing about the
|
|
|
149
|
+broken future releases is valuable rather than polling to see if it
|
|
|
150
|
+has been fixed.
|