Dean Troyer | 0986a7b | 2014-10-29 22:08:13 -0500 | [diff] [blame] | 1 | === |
| 2 | FAQ |
| 3 | === |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 4 | |
| 5 | - `General Questions <#general>`__ |
| 6 | - `Operation and Configuration <#ops_conf>`__ |
| 7 | - `Miscellaneous <#misc>`__ |
| 8 | |
| 9 | General Questions |
Sean Dague | 3293046 | 2014-11-18 06:51:16 -0500 | [diff] [blame] | 10 | ================= |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 11 | |
| 12 | Q: Can I use DevStack for production? |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 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 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 27 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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 |
Jeremy Stanley | 3eeed23 | 2014-12-05 03:30:41 +0000 | [diff] [blame] | 34 | follow the usual process as described in the `developer |
| 35 | guide <http://docs.openstack.org/infra/manual/developers.html>`__. This Sphinx |
Dean Troyer | ea3cdfa | 2014-11-08 08:29:16 -0600 | [diff] [blame] | 36 | documentation is housed in the doc directory. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 37 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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 |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 42 | production deployments. |
| 43 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 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 | |
Dean Troyer | d97ee30 | 2015-02-04 12:35:39 -0600 | [diff] [blame] | 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. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 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. |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 65 | |
| 66 | Operation and Configuration |
Sean Dague | 3293046 | 2014-11-18 06:51:16 -0500 | [diff] [blame] | 67 | =========================== |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 68 | |
| 69 | Q: Can DevStack handle a multi-node installation? |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 70 | A: Yes, see :doc:`multinode lab guide <guides/multinode-lab>` |
| 71 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 77 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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): |
| 81 | |
| 82 | :: |
| 83 | |
| 84 | disable_service n-vol |
| 85 | |
| 86 | Q: Is enabling a service that defaults to off done with the reverse of the above? |
| 87 | A: Of course! |
| 88 | |
| 89 | :: |
| 90 | |
| 91 | enable_service qpid |
| 92 | |
| 93 | Q: How do I run a specific OpenStack milestone? |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 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: |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 98 | |
| 99 | :: |
| 100 | |
| 101 | [[local|localrc]] |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 102 | GLANCE_BRANCH=stable/kilo |
| 103 | HORIZON_BRANCH=stable/kilo |
| 104 | KEYSTONE_BRANCH=stable/kilo |
| 105 | NOVA_BRANCH=stable/kilo |
| 106 | GLANCE_BRANCH=stable/kilo |
| 107 | NEUTRON_BRANCH=stable/kilo |
| 108 | SWIFT_BRANCH=2.3.0 |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 109 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 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. |
Ian Wienand | a16e461 | 2015-06-02 10:08:04 +1000 | [diff] [blame] | 117 | |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 118 | Q: How can I set up Heat in stand-alone configuration? |
| 119 | A: Configure ``local.conf`` thusly: |
| 120 | |
| 121 | :: |
| 122 | |
| 123 | [[local|localrc]] |
| 124 | HEAT_STANDALONE=True |
| 125 | ENABLED_SERVICES=rabbit,mysql,heat,h-api,h-api-cfn,h-api-cw,h-eng |
| 126 | KEYSTONE_SERVICE_HOST=<keystone-host> |
| 127 | KEYSTONE_AUTH_HOST=<keystone-host> |
| 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. |
| 135 | |
| 136 | Miscellaneous |
Sean Dague | 3293046 | 2014-11-18 06:51:16 -0500 | [diff] [blame] | 137 | ============= |
Sean M. Collins | 09e550c | 2014-10-21 11:40:08 -0400 | [diff] [blame] | 138 | |
| 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. |