463 Commits

Author SHA1 Message Date
Jenkins
84a81ed75b Merge "Updates Heat Template for M3 Release" 2015-03-24 14:32:44 +00:00
Jenkins
a6447c839d Merge "Adds Rabbit and MariaDB TCP ports to Heat template" 2015-03-24 14:31:44 +00:00
Daneyon Hansen
fd250d58bd Adds Rabbit and MariaDB TCP ports to Heat template
Previously, Heat was not allowing the necessary TCP ports for
RabbitMQ and MariaDB to Kolla nodes.

Change-Id: If34ca2de2e5213cb97138e5855cc88ff5c564b76
2015-03-24 07:47:34 +00:00
Daneyon Hansen
a0dfb204ed Updates Dev Doc for M3 Release
A few errors in the dev doc were causing problems with deploying
a dev env. The dev dos has been updated with the correct steps for
prep'ing a host for running Kolla. Additionally, wording has been
added to reference the Heat template for dev env deployment.

Change-Id: I9f0ba1bd2deca490a72b3c54cb1a7df386228ee8
2015-03-24 00:56:01 +00:00
Daneyon Hansen
cdb97831f5 Updates Heat Template for M3 Release
Updates the following:

1. Replaces Docker copr pkgs with binary
2. Updates docs
3. Adds compose from sdake GH repo
4. Adds required ebtables kernel module for nova-network
5. Adds container net/subnet info required for correct nova
networking functionality.
6. Consolidates pkgs installs from get-image script to the
heat template.

Change-Id: Ibec2dd5909bb8379c193b5cdbad665a5b6c2e8f8
2015-03-24 00:38:59 +00:00
Jenkins
d944259056 Merge "Fixes bug where heat container was not getting heat meta data" 2015-03-23 20:48:41 +00:00
Ryan Hallisey
1aa0f7ce49 Fixes bug where heat container was not getting heat meta data
Heat container is having trouble accessing heat meta data.
Heat needs to have HEAT_CFN_API_SERVICE_HOST set in order
to properly receive meta data.

Closes-bug 1435288

Change-Id: Ia28ece3ae91ec7acc62cc86039612841ac487f36
2015-03-23 16:22:05 -04:00
Jenkins
3d37fd95d7 Merge "Make mariadb use a data container without a bindmount" 2015-03-23 20:09:09 +00:00
Jenkins
1c0bf08eb8 Merge "Make nova-compute-network use a data volume container" 2015-03-23 20:09:00 +00:00
Jenkins
73725e535b Merge "Add a stop command to shut down Kolla AIO" 2015-03-23 20:06:29 +00:00
Jenkins
12b00b2959 Merge "Improve developer docs around docker-compose and docker-dev" 2015-03-23 16:16:07 +00:00
Steven Dake
c2b92c5e96 Make mariadb use a data container without a bindmount
A data container is meant to operate without bindmounts.

Change-Id: I2624a63fd75db7ed8050054c17e19885f8a7ac8a
Co-Authored-By: Daneyon Hansen (danehans@cisco.com)
2015-03-22 08:55:24 -07:00
Steven Dake
f4fd47dc2c Make nova-compute-network use a data volume container
A data volume container is far superior to bind mounting the
host's shared directories.  It preserves the idempotency,
immutability and declarative properties of the containers.

The way this works in practice is that a data volume container is
created.  Then when the containers start they use LVM to access
the filesystem where /var/lib/docker is contained.  Then the
container startup logic bindmounts the data volume stored on the
host filesystem in /var/lib/docker/vfs/dir/ID.  This prevents
people with access to the host operating system from damaging
the contents of the data container.

It does mean that now we must use tools/stop to stop our containers
rather than tools/cleanup-containers -f.

This is a containers best practice.  For more details see:

https://docs.docker.com/userguide/dockervolumes/

Big credit goes to Danyeon Hansen for seeding this idea in the
mariadb containers.

Note occasionally docker-compose start/stop seems to not want to stop
a container.  This bug needs to be addressed upstream separately
from our utilization of this best practice.

Change-Id: Iaa1419f606e1b1b7a7560a095c49e79d643164f1
2015-03-22 08:54:53 -07:00
Steven Dake
3f036e3f93 Add a stop command to shut down Kolla AIO
Use docker-compose with the stop operation rather than cleanup-containers -f.

Change-Id: I1b0f97589b04eaa4e3a0b4e5247294e4c4b0dc47
2015-03-21 15:09:20 -07:00
Steven Dake
03606b8a85 Improve developer docs around docker-compose and docker-dev
docker-compose master now requires 1.18 API, which is only available
in the development version of docker.  Show how to retrieve and run it.

Change-Id: Ia3a7a659c495547fcc04d31cf38ffeaaf6fd729a
2015-03-20 23:45:52 -07:00
Jeff Peeler
07f5999276 Check for root privilege in start.sh
This change was lost in 888bb9cc8c68bf61fddc0ca08a69f764a4012121.
Both modprobe and setenforce require root, so I think this is a good
sanity check.

Change-Id: I431df44e0fed4a981df96a9a98bfbb5c350e49ac
2015-03-21 02:18:01 -04:00
Jenkins
0d9a53470d Merge "Use -L flag in curl" 2015-03-21 03:28:12 +00:00
Jenkins
be79b50b31 Merge "Don't kill keystone, but instead wait for it to finish at the end" 2015-03-21 03:19:48 +00:00
Jenkins
f84c2b1705 Merge "Fix wait_for function in kolla-common.sh" 2015-03-21 03:17:15 +00:00
Jenkins
ad6026e0e1 Merge "Refactors nwfilter" 2015-03-21 03:16:24 +00:00
Jenkins
68978c2338 Merge "Make the Horizon dashboard work properly" 2015-03-21 03:15:58 +00:00
Jenkins
a99a861bc0 Merge "Improve Heat integration" 2015-03-21 03:15:38 +00:00
Jenkins
64f59e229c Merge "Add pid: host to libvirt" 2015-03-21 03:12:30 +00:00
Jenkins
b6d4cf6310 Merge "Cleanup leftovers after wait_for was merged into kolla-common.sh" 2015-03-21 03:07:48 +00:00
Jenkins
1854cb52e9 Merge "Remove reference to k8s directory from README" 2015-03-21 03:06:37 +00:00
Steven Dake
f4b128f7bb Use -L flag in curl
The cirros image uses a redirect.  Use curl -L to follow redirections.

Change-Id: I3a9309901ab3528442009fd6802600c51c98242f
2015-03-20 20:01:57 -07:00
Jenkins
17eccb0dfd Merge "Implements: blueprint Implement a database container set" 2015-03-21 02:47:52 +00:00
Martin André
448e48a75b Cleanup leftovers after wait_for was merged into kolla-common.sh
Change-Id: I97ab671bfbdcf5434feedec617a938b30af4579b
2015-03-21 11:11:57 +09:00
Daneyon Hansen
c49613ad0a Refactors nwfilter
Previously, the nwfilter daemon/conf pkgs would need to be
installed on the host. Compose would then mount the host DIR
to the compute containers. A more efficient approach is to simply
install the nwfilter config/daemon in the libvirt container. Both
appoaches address the following error when booting an instance:

'no-mac-spoofing' is missing

Change-Id: I81b446d198920473bf99b97ef5eac6ef5ee85024
2015-03-20 22:00:54 +00:00
Steven Dake
3f4c45fac5 Add ADMIN_USER_PASSWORD to genenv tool
The genenv tool was generating the wrong password for the openrc
file as a result of recent keystone rework.  This patch fixes that
problem.

Change-Id: I169e3255e3f3ef57938861c31ef4e342d9a32cbc
2015-03-20 13:41:08 -07:00
Jenkins
ed617a59f8 Merge "Fixes Keystone openrc and sets / for scripts" 2015-03-20 19:14:28 +00:00
Steven Dake
f642fd7b2d Don't kill keystone, but instead wait for it to finish at the end
use the bash wait builtin to wait for the keystone process to exit.

Change-Id: I03057e7925e7e41120c163c0be22ade75050d9f1
2015-03-20 10:48:32 -07:00
Steven Dake
71576f4e42 Make the Horizon dashboard work properly
The Horizon dashboard was not working properly prior to this work.

Also a docker-compose file was added to start the dashboard.

Change-Id: I8a438c15b967b0cec00bfe44b997f833bf745191
2015-03-20 10:21:29 -07:00
Steven Dake
dbddef4f78 Improve Heat integration
Generate Heat environment variables.
Rename yml file to api and engine to follow other service conventions.
Add heat to compose/start
Modify integration guide to include new variables.

Change-Id: I058d829901881e28d6f4785f59fcf778058241e4
2015-03-20 10:21:01 -07:00
Steven Dake
5bfc3e11f6 Add pid: host to libvirt
Without pid: host, nova-compute and libvirt fail to operate correctly
together.  I don't understand why, and I wish it weren't so, but it means
folks will have to install docker-compose from my personal github account
until the pull request is merged upstream.

Change-Id: I24e55405139c831f2df246f54c5b6fd39d00656a
2015-03-20 10:05:03 -07:00
Daneyon Hansen
5547b5fe78 Implements: blueprint Implement a database container set
Previously, the database container was configured for use with
Kubernetes. This patch removed any k8s dependencies, adds a script
to manage mysql server.cnf settings and splits data and app
containers. Splitting the containers provides additional
portability and operational efficiencies compared to host mounts.

Change-Id: I80656450c02dda5f2959d187eec20d5877dc54a2
2015-03-20 16:17:51 +00:00
Jenkins
fb425db56d Merge "Move genenv.sh and start.sh to tools directory" 2015-03-20 16:09:32 +00:00
Daneyon Hansen
8eb36e7cde Fixes Keystone openrc and sets / for scripts
Previously, the keydtone openrc file was not using the proper
auth url, whcih was broken with too many double ticks. Also
changed the auth port from public to admin since keystone user
is an admin tenant. Changed DIR for scripts to align with the
rest of the project.

Change-Id: Iadde3239227e65ecca479b16a7b7db51d3a579c8
2015-03-20 07:18:21 +00:00
Martin André
1cb5514353 Fix wait_for function in kolla-common.sh
Add `wait_for_output` and `wait_for_output_unless` helper functions that
only succeed when the command output contains the expected string, with
a possibility to exit early with a failure for `wait_for_output_unless`.

Change-Id: Ie20e7c72fb84f626f1a3fe9c4d2f22c9d6863dbe
2015-03-20 12:55:53 +09:00
Jenkins
9b7a844094 Merge "Always restart glance services" 2015-03-20 01:39:08 +00:00
Martin André
888bb9cc8c Move genenv.sh and start.sh to tools directory
Rename them `genenv` and `start`.
Have `genenv` create the openrc file in the top-level directory.

Add openrc and compose/openstack.env to gitignore, as well as *.img.

Change-Id: I5d8006e97efd77cf364215f55d5e585139ae273e
2015-03-20 10:31:02 +09:00
Martin André
3e439b5e1e Remove reference to k8s directory from README
Kolla has moved away from Kubernetes and is now using docker-compose to
define container sets.

Remove last reference to Kubernetes in the README file, and document
the `compose` directory instead.

Change-Id: Ic586da2ae7859817c0da888f6ce5c788188e43d2
2015-03-20 10:13:26 +09:00
Jenkins
65683e5ed7 Merge "Remove traces of kubernetes" 2015-03-20 01:01:21 +00:00
Jenkins
e201fd5206 Merge "Check for root privilege in start.sh" 2015-03-20 00:58:05 +00:00
Steven Dake
096a85da32 Always restart glance services
Always restart glance services since they are idempotent.

Change-Id: I6ad98eacf0fd10b97a007db81dbe23459cc71e2b
2015-03-19 13:18:41 -07:00
Jenkins
415c5e4747 Merge "Use keystone authentication with Glance" 2015-03-19 20:06:03 +00:00
Jenkins
f91293cd5d Merge "Correct glance-api-registry format" 2015-03-19 20:02:37 +00:00
Steven Dake
f7bf845c00 Remove traces of kubernetes
Change-Id: Ie14063022aa1f4e1409421b8049ec75ec9a32802
2015-03-19 10:00:00 -07:00
Steven Dake
858cdda3ec Use keystone authentication with Glance
Previously glance was not using keystone for authentication.  This resulted
in --is-public true failing when doing image-create.

Co-Authored-By: Lars Stedman (larsks@redhat.com)

Change-Id: I54273115242ee169201643fe0ad559392650c883
2015-03-19 09:21:48 -07:00
Jeff Peeler
0dc0cf1b9e Check for root privilege in start.sh
Change-Id: I38f6cf133b0ebf59a9595fb62868a81f731a0b85
2015-03-19 12:05:22 -04:00