Switch README file to Markdown
- Global reformating - Add link to the Puppet Style Guide Change-Id: I7b45bafa79946814d3a44e95651f446b518f58bd Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
This commit is contained in:
parent
d4df05ada3
commit
9be16f3ee5
|
@ -1,5 +1,6 @@
|
||||||
include docs/*
|
include docs/*
|
||||||
include LICENSE
|
include LICENSE
|
||||||
|
include README.md
|
||||||
recursive-include packstack/puppet *
|
recursive-include packstack/puppet *
|
||||||
recursive-include packstack/templates *
|
recursive-include packstack/templates *
|
||||||
global-exclude .gitignore
|
global-exclude .gitignore
|
||||||
|
|
119
README
119
README
|
@ -1,119 +0,0 @@
|
||||||
Utility to install OpenStack on Red Hat based operating system.
|
|
||||||
See other branches for older openstack versions. Details on how to
|
|
||||||
contribute to Packstack may be found in the Packstack wiki at
|
|
||||||
https://wiki.openstack.org/wiki/Packstack Additional information about
|
|
||||||
involvement in the community around Packstack can be found at
|
|
||||||
https://openstack.redhat.com/Get_involved
|
|
||||||
|
|
||||||
|
|
||||||
This utility can be used to install openstack on a single or
|
|
||||||
group of hosts (over ssh)
|
|
||||||
|
|
||||||
This utility is still in the early stages, a lot of the configuration
|
|
||||||
options have yet to be added
|
|
||||||
|
|
||||||
Installation of packstack:
|
|
||||||
$ yum install -y git
|
|
||||||
$ git clone git://github.com/stackforge/packstack.git
|
|
||||||
$ cd packstack && sudo python setup.py install
|
|
||||||
|
|
||||||
Installation of openstack-puppet-modules (REQUIRED if running packstack from source):
|
|
||||||
$ sudo python setup.py install_puppet_modules
|
|
||||||
|
|
||||||
Option 1 (using answer file)
|
|
||||||
$ packstack --gen-answer-file=ans.txt
|
|
||||||
|
|
||||||
# then edit ans.txt as appropriate e.g.
|
|
||||||
o set CONFIG_SSH_KEY to a public ssh key to be installed to remote machines
|
|
||||||
o Edit the IP address to anywhere you want to install a piece of openstack on another server
|
|
||||||
o Edit the 3 network interfaces to whatever makes sense in your setup
|
|
||||||
|
|
||||||
you'll need to use a icehouse repository for example for RHEL
|
|
||||||
CONFIG_REPO=http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/
|
|
||||||
|
|
||||||
|
|
||||||
$ packstack --answer-file=ans.txt
|
|
||||||
|
|
||||||
Option 2 (prompts for configuration options)
|
|
||||||
$ packstack
|
|
||||||
|
|
||||||
that's it, if everything went well you can now start using openstack
|
|
||||||
$ cd
|
|
||||||
$ . keystonerc_admin
|
|
||||||
$ nova list
|
|
||||||
$ swift list # if you have installed swift
|
|
||||||
|
|
||||||
|
|
||||||
Config options
|
|
||||||
CONFIG_NOVA_COMPUTE_HOSTS :
|
|
||||||
a comma seperated list of ip addresses on which to install nova compute
|
|
||||||
CONFIG_SWIFT_STORAGE_HOSTS :
|
|
||||||
a comma seperate list of swift storage devices
|
|
||||||
1.1.1.1 : create a testing loopback device and use this for storage
|
|
||||||
1.1.1.1/sdb : use /dev/sdb on 1.1.1.1 as a storage device
|
|
||||||
|
|
||||||
Logging
|
|
||||||
|
|
||||||
The location of the log files and generated puppet manifests are in the
|
|
||||||
/var/tmp/packstack directory under a directory named by the date in which
|
|
||||||
packstack was run and a random string (e.g. /var/tmp/packstack/20131022-204316-Bf3Ek2).
|
|
||||||
Inside, we find a manifest directory and the openstack-setup.log file; puppet
|
|
||||||
manifests and a log file for each one are found inside the manifest directory.
|
|
||||||
|
|
||||||
Debugging
|
|
||||||
|
|
||||||
To make packstack write more detailed information into the log file you can use the -d switch:
|
|
||||||
|
|
||||||
$ packstack -d --allinone
|
|
||||||
|
|
||||||
Developing
|
|
||||||
|
|
||||||
!!! Warning: this procedure installs openstack-puppet-modules containing code
|
|
||||||
!!! that has not been upstreamed and fully tested yet and as such will not be
|
|
||||||
!!! as robust as the other install procedures. It is recommended to install
|
|
||||||
!!! from RPM instead.
|
|
||||||
|
|
||||||
To ease development of packstack and openstack-puppet-modules, it can be
|
|
||||||
useful to install from git such that updates to the git repositories are
|
|
||||||
immediately effective without reinstallation of packstack and
|
|
||||||
openstack-puppet-modules.
|
|
||||||
|
|
||||||
To do this, start with a minimal fedora20 installation. Then remove any
|
|
||||||
relevant packages that might conflict:
|
|
||||||
|
|
||||||
# yum -y erase openstack-{packstack*,puppet-modules}
|
|
||||||
|
|
||||||
Disable selinux by changing "enforcing" to "permissive" in
|
|
||||||
/etc/sysconfig/selinux, then reboot to allow service changes to take effect
|
|
||||||
and swap over networking. Then install packages:
|
|
||||||
|
|
||||||
# yum -y install git python-setuptools
|
|
||||||
|
|
||||||
And install RDO:
|
|
||||||
|
|
||||||
# yum -y install https://rdo.fedorapeople.org/rdo-release.rpm
|
|
||||||
# yum -y update
|
|
||||||
|
|
||||||
Now we get openstack-puppet-modules. Because `python setup.py
|
|
||||||
install_puppet_modules` from packstack copies rather than linking, this is not
|
|
||||||
entirely straightforward:
|
|
||||||
|
|
||||||
# git clone https://github.com/redhat-openstack/openstack-puppet-modules
|
|
||||||
# cd openstack-puppet-modules
|
|
||||||
# git checkout master-patches
|
|
||||||
# mkdir /usr/share/openstack-puppet
|
|
||||||
# ln -sv /root/openstack-puppet-modules /usr/share/openstack-puppet/modules
|
|
||||||
|
|
||||||
Then we get packstack, and perform a similar dance:
|
|
||||||
|
|
||||||
# git clone https://github.com/stackforge/packstack
|
|
||||||
# cd packstack
|
|
||||||
# python setup.py develop
|
|
||||||
# cd /usr/share/openstack-puppet/modules
|
|
||||||
# ln -sv /root/packstack/packstack/puppet/modules/packstack
|
|
||||||
# ln -sv /root/packstack/packstack/puppet/modules/remote
|
|
||||||
|
|
||||||
|
|
||||||
And we're done. Changes to the contents of packstack and
|
|
||||||
openstack-puppet-modules repositories are picked up by the packstack
|
|
||||||
executable without further intervention, and packstack is ready to install.
|
|
|
@ -0,0 +1,133 @@
|
||||||
|
# Packstack
|
||||||
|
|
||||||
|
Utility to install **OpenStack** on **Red Hat** based operating system. See
|
||||||
|
other branches for older **OpenStack** versions. Details on how to
|
||||||
|
contribute to **Packstack** may be found in the **Packstack** wiki at
|
||||||
|
<https://wiki.openstack.org/wiki/Packstack> Additional information
|
||||||
|
about involvement in the community around **Packstack** can be found at
|
||||||
|
<https://openstack.redhat.com/Get_involved>
|
||||||
|
|
||||||
|
|
||||||
|
This utility can be used to install **OpenStack** on a single or group of
|
||||||
|
hosts (over `ssh`).
|
||||||
|
|
||||||
|
This utility is still in the early stages, a lot of the configuration
|
||||||
|
options have yet to be added.
|
||||||
|
|
||||||
|
## Installation of packstack:
|
||||||
|
|
||||||
|
$ yum install -y git
|
||||||
|
$ git clone git://github.com/stackforge/packstack.git
|
||||||
|
$ cd packstack && sudo python setup.py install
|
||||||
|
|
||||||
|
## Installation of openstack-puppet-modules (REQUIRED if running packstack from source):
|
||||||
|
|
||||||
|
$ sudo python setup.py install_puppet_modules
|
||||||
|
|
||||||
|
### Option 1 (using answer file)
|
||||||
|
|
||||||
|
$ packstack --gen-answer-file=ans.txt
|
||||||
|
|
||||||
|
Then edit `ans.txt` as appropriate e.g.
|
||||||
|
|
||||||
|
- set `CONFIG_SSH_KEY` to a public ssh key to be installed to remote machines
|
||||||
|
- Edit the IP address to anywhere you want to install a piece of openstack on another server
|
||||||
|
- Edit the 3 network interfaces to whatever makes sense in your setup
|
||||||
|
|
||||||
|
you'll need to use a icehouse repository for example for RHEL
|
||||||
|
|
||||||
|
$ CONFIG_REPO=http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/
|
||||||
|
|
||||||
|
$ packstack --answer-file=ans.txt
|
||||||
|
|
||||||
|
### Option 2 (prompts for configuration options)
|
||||||
|
|
||||||
|
$ packstack
|
||||||
|
|
||||||
|
that's it, if everything went well you can now start using openstack
|
||||||
|
|
||||||
|
$ cd
|
||||||
|
$ . keystonerc_admin
|
||||||
|
$ nova list
|
||||||
|
$ swift list # if you have installed swift
|
||||||
|
|
||||||
|
## Config options
|
||||||
|
|
||||||
|
- `CONFIG_NOVA_COMPUTE_HOSTS` :
|
||||||
|
* A comma separated list of ip addresses on which to install nova compute
|
||||||
|
- `CONFIG_SWIFT_STORAGE_HOSTS` :
|
||||||
|
* A comma separated list of swift storage devices
|
||||||
|
* `1.1.1.1`: create a testing loopback device and use this for storage
|
||||||
|
* `1.1.1.1/sdb`: use `/dev/sdb` on `1.1.1.1` as a storage device
|
||||||
|
|
||||||
|
## Logging
|
||||||
|
|
||||||
|
The location of the log files and generated puppet manifests are in the
|
||||||
|
`/var/tmp/packstack` directory under a directory named by the date in which
|
||||||
|
**Packstack** was run and a random string (e.g. `/var/tmp/packstack/20131022-204316-Bf3Ek2`).
|
||||||
|
Inside, we find a manifest directory and the `openstack-setup.log` file; puppet
|
||||||
|
manifests and a log file for each one are found inside the manifest directory.
|
||||||
|
|
||||||
|
## Debugging
|
||||||
|
|
||||||
|
To make **Packstack** write more detailed information into the log file you can use the `-d` switch:
|
||||||
|
|
||||||
|
$ packstack -d --allinone
|
||||||
|
|
||||||
|
## Developing
|
||||||
|
|
||||||
|
**Warning:**
|
||||||
|
this procedure installs **openstack-puppet-modules** containing code that has
|
||||||
|
not been upstreamed and fully tested yet and as such will not be as robust as
|
||||||
|
the other install procedures. It is recommended to install from **RPM**
|
||||||
|
instead.
|
||||||
|
|
||||||
|
To ease development of **Packstack** and **openstack-puppet-modules**, it can be
|
||||||
|
useful to install from *git* such that updates to the git repositories are
|
||||||
|
immediately effective without reinstallation of packstack and
|
||||||
|
**openstack-puppet-modules**.
|
||||||
|
|
||||||
|
To do this, start with a minimal **Fedora 20** installation. Then remove any
|
||||||
|
relevant packages that might conflict:
|
||||||
|
|
||||||
|
$ yum -y erase openstack-{packstack*,puppet-modules}
|
||||||
|
|
||||||
|
Disable **SELinux** by changing "`enforcing`" to "`permissive`" in
|
||||||
|
`/etc/sysconfig/selinux`, then reboot to allow service changes to take effect
|
||||||
|
and swap over networking. Then install packages:
|
||||||
|
|
||||||
|
$ yum -y install git python-setuptools
|
||||||
|
|
||||||
|
And install **RDO**:
|
||||||
|
|
||||||
|
$ yum -y install https://rdo.fedorapeople.org/rdo-release.rpm
|
||||||
|
$ yum -y update
|
||||||
|
|
||||||
|
Now we get **openstack-puppet-modules**. Because `python setup.py
|
||||||
|
install_puppet_modules` from **Packstack** copies rather than linking, this is not
|
||||||
|
entirely straightforward:
|
||||||
|
|
||||||
|
$ git clone https://github.com/redhat-openstack/openstack-puppet-modules
|
||||||
|
$ cd openstack-puppet-modules
|
||||||
|
$ git checkout master-patches
|
||||||
|
$ mkdir /usr/share/openstack-puppet
|
||||||
|
$ ln -sv /root/openstack-puppet-modules /usr/share/openstack-puppet/modules
|
||||||
|
|
||||||
|
Then we get **Packstack**, and perform a similar dance:
|
||||||
|
|
||||||
|
$ git clone https://github.com/stackforge/packstack
|
||||||
|
$ cd packstack
|
||||||
|
$ python setup.py develop
|
||||||
|
$ cd /usr/share/openstack-puppet/modules
|
||||||
|
$ ln -sv /root/packstack/packstack/puppet/modules/packstack
|
||||||
|
$ ln -sv /root/packstack/packstack/puppet/modules/remote
|
||||||
|
|
||||||
|
And we're done. Changes to the contents of **Packstack** and
|
||||||
|
**openstack-puppet-modules** repositories are picked up by the **Packstack**
|
||||||
|
executable without further intervention, and **Packstack** is ready to install.
|
||||||
|
|
||||||
|
## Puppet Style Guide
|
||||||
|
|
||||||
|
**IMPORTANT** <https://docs.puppetlabs.com/guides/style_guide.html>
|
||||||
|
|
||||||
|
Please, respect the Puppet Style Guide as much as possible !
|
2
setup.py
2
setup.py
|
@ -88,7 +88,7 @@ setup(
|
||||||
url="https://github.com/stackforge/packstack",
|
url="https://github.com/stackforge/packstack",
|
||||||
packages=find_packages('.'),
|
packages=find_packages('.'),
|
||||||
include_package_data=True,
|
include_package_data=True,
|
||||||
long_description=read('README'),
|
long_description=read('README.md'),
|
||||||
zip_safe=False,
|
zip_safe=False,
|
||||||
install_requires=['netaddr', 'PyYAML'],
|
install_requires=['netaddr', 'PyYAML'],
|
||||||
classifiers=[
|
classifiers=[
|
||||||
|
|
Loading…
Reference in New Issue