108 Commits

Author SHA1 Message Date
Jeffrey Zhang
e5903d5fa9 Remove include_header and include_footer in all Dockerfiles
include_header and include_footer parameter is already removed, remove
them in all Dockerfiles.
Add missing footer block.

Change-Id: I90da03eb9f95a3827361d5f5ede65fde7d6be2b3
2017-02-05 10:44:48 +08:00
Jenkins
1a683873d6 Merge "Containerized sshd does not work with older PAM" 2017-02-03 11:35:55 +00:00
Vladislav Belogrudov
aae9193675 Containerized sshd does not work with older PAM
sshd containers don't let logins on some systems with older
PAM library because /proc/self/loginuid is not always readable
or writeable. Examples of possible failures on such systems are
erroneous cold and live migrations.

This fix does not upgrade PAM but makes pam_loginuid optional
for nova_ssh and keystone_ssh.

More information:
  https://github.com/docker/docker/issues/5663
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=726661
  https://git.fedorahosted.org/cgit/linux-pam.git/tree/modules/pam_loginuid/pam_loginuid.c#n61

Change-Id: Ic14255b042ceedcff536c062bdcba00502af7a87
Closes-Bug: #1651395
2017-02-03 08:49:39 +00:00
Jenkins
86e8f03967 Merge "Add nova-placement-api container" 2017-02-02 16:58:08 +00:00
Jeffrey Zhang
3b963bb3ad Add openvswitch package for nova-libvirt container
Change-Id: I61ce3b695e66cd76f8f9a43863c94601d312e8fe
Closes-Bug: #1661152
2017-02-02 12:46:17 +08:00
Jeffrey Zhang
4a5f53eea1 Add nova-placement-api container
Change-Id: I30efc20e6d918e08860584c017455e6d5fa91a35
Closes-Bug: #1660987
2017-02-01 14:10:12 +00:00
Sam Yaple
58eee09c15 use static uid/gid in images
This centralizes all user and group creation into a single source. This
will fix any current and furture uid/gid mismatches (such as with
nova-libvirt).

In the process, we also unify users between the distros in a standard
way. The users in the following containers change from thier defaults:

Ubuntu: _chrony user is now chrony
Ubuntu: memcache user is now memcached
All: qemu user is used for ownership and socket permissions

All uid and gid numbers are customizable via kolla-build.conf

Co-Authored-By: Kris Lindgren <klindgren@godaddy.com>
Change-Id: I120f26ab0683dc87d69727c3df8d4707e52a4543
Partially-Implements: blueprint static-uid-gid
2017-01-17 09:02:21 -03:00
Dan Prince
10c26d90e9 Add Apache packages to nova-api container
Some projects that use Kolla docker containers (TripleO) run nova-api under
httpd. This patch adds the httpd package so that it exists in the container
and can optionally by used via Docker entrypoints.

As many of these projects do not require the use of Apache (it is opt-in) at
this point not all deployment frameworks support the use of it so
the existing configuration defaults have been left as-is for now.

Partial-Blueprint: apache-packages-for-apis

Change-Id: Id22da4626c659d8c9f457b71d9423e5fd9e8c25a
2017-01-12 12:07:24 -05:00
Paul Bourke
20801afaea Remove source install type for novnc / spice
Currently Kolla only offers source installs for OpenStack projects.

The novnc and spice images have been consistent with this resulting in
tarballs being pulled from github. The binary/source distinction should
be removed for these images.

Change-Id: Ibdf593a2a164e39bba3ea2a0e6333f2de876c2a0
2017-01-03 16:40:05 +00:00
caoyuan
c68b233c80 Remove the "nova-network" container file
The nova-network service was deprecated, this patch to
remove nova-network container.
TrivialFix

Change-Id: I73b4215f7538570e1140780e9f52df9ca58e92ff
2016-12-01 22:28:46 +08:00
Jenkins
9bc0ad0741 Merge "Allow operators to customise pip packages in nova_compute" 2016-11-14 10:47:28 +00:00
Paul Bourke
4a39e5f3a3 Allow operators to customise pip packages in nova_compute
TrivialFix

Change-Id: I75b82d1d949990f77a1d70992c23544cf53cf9b3
2016-11-11 17:12:16 +00:00
xionglingfeng
17e6e629f5 Allow cinder-volume to be configured to use NFS
Allow cinder-volume, nova-compute and nova-libvirtd to be configured to
use NFS. In order to mount and work with NFS shares, several containers
needed the NFS packages installed during build time.

One somewhat significant change is the addition of an explicit bind
volume for nova-compute that has shared mounts enabled.

According to docker-run(1), the shared mount propagation flag can only
be specified for bind mounted Docker volumes and not named volumes.

In an NFS setup, cinder-volume mounts the NFS shares so that it can
create and manage the Cinder volumes. When a new instance is created
with a Cinder volume or a Cinder volume is attached to an existing
instance, nova-compute mounts the Cinder volume from the NFS share for
nova-libvirtd. In order for nova-libvirtd to then see those Cinder
volumes the shared mounts flag must be enabled for the Docker volume.

Remove the rpcbind container as it is only necessary for operators who
are using NFSv3 or lower. There is no known need for this currently
however, this container can be added in the future should an operator
require it.

Co-authored-by: Ryan Hallisey <rhallise@redhat.com>
Co-authored-by: Andrew Widdersheim <amwiddersheim@gmail.com>
Change-Id: Iad77c05bce8876bdcc69b7ec22edd50e3bf48b9f
Closes-Bug: #1530515
Partially implements: blueprint  nfs-support-in-cinder
2016-11-07 12:57:54 -05:00
Jenkins
5fc716a44e Merge "nova-spicehtml5proxy dependency package added" 2016-11-06 06:00:44 +00:00
Christian Berendt
5cd30d4914 Remove Fedora support
Closes-bug: #1616387
Change-Id: Id97f88b9baa3d48d33ce120962450a374282d044
2016-11-03 10:50:22 +01:00
prameswar
246acc40f3 nova-spicehtml5proxy dependency package added
centos based container already have  python-websockify installed.
but it gives warning to install numpy package.
ubuntu based container  need to install websockify package that will
install both module websockify and its dependency numpy module. so no
need to install numpy package externally in ubnutu but in centos
it need to install.

Closes-bug: #1638801

Change-Id: Ic858543733ec86f55ab506edcd3631a6df1a086d
2016-11-03 05:47:37 +00:00
Jeffrey Zhang
255198e742 Fix the failure to launch instance when enabled Ceph
We need install qemu-kvm package which come from the Cloud SIG rather
then qemu-system-x86 which come from EPEL.

Change-Id: Ibd027069771552d3db0e4fe0c7406ddd1bfc0673
Closes-Bug: #1631984
2016-10-12 01:31:09 +08:00
Jenkins
f7cd6ef27a Merge "Add nova-serialproxy container" 2016-09-16 11:59:39 +00:00
Jenkins
46831f33a1 Merge "Switch arguments to usermod" 2016-09-15 17:36:59 +00:00
Jeff Peeler
9f16111b69 Switch arguments to usermod
Need to add nova user to qemu group.

Change-Id: I0df21d00fb295e0f2c14dd6abd4bee518fec8371
Closes-Bug: #1623682
2016-09-14 17:52:52 -04:00
Eduardo Gonzalez
44ce6266b3 Add nova-serialproxy container
Change-Id: I9cd7e6d26af913f06f6b9119496e2f228266b293
Partially-Implements: blueprint nova-proxies
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-09-14 07:25:41 +02:00
Paul Bourke
b41247c656 Add header blocks to all Dockerfiles
Change needed to add header blocks to all Dockerfiles, similar to the
base.

Use case is to easily run something before packages are installed, e.g.
to COPY a local rpm in that can be added to the package list.

Change-Id: I1bbfdf0b762da0a392aa8bf47781315b45377bee
Closes-Bug: 1618969
2016-09-13 16:53:31 +01:00
Jenkins
b6c40d9deb Merge "Create the nova instances directory when need during starting" 2016-09-01 16:45:57 +00:00
Jenkins
7feed607f2 Merge "Fix nova_ssh container shell to allow instance resizes." 2016-08-31 12:49:16 +00:00
Matthew Taylor
c4be56c1e5 Fix nova_ssh container shell to allow instance resizes.
According to the configuration reference,
http://docs.openstack.org/mitaka/config-reference/compute/resize.html
When using KVM, nova utilizes SSH for instance resizing.
Kolla nova_ssh container has the nova user configured with "/sbin/nologin" shell,
which prevents nova_compute from successfully resizing instances.
Added fix to change shell from nologin to bash.

Change-Id: I46a48e242dae6ee6c9159bc30edd8b823ffbb515
Closes-Bug: 1617902
2016-08-31 14:55:25 +10:00
Eduardo Gonzalez
8e98e5f15e Change source with dot at extend_start files
Is a best practice in Unix/Linux scripts to use dots
instead of source command.
Using dots will avoid issues with non BASH shells

TrivialFix
Change-Id: Ie6480a1954f853f79faffa093452715ebd9f7d90
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-08-29 07:29:16 +02:00
Paul Bourke
d3c60d0035 Customizations for Nova
Change-Id: I7556d6cd473516c7ceb4aba7c1ba1130af2544ee
Partially-implements: blueprint third-party-plugin-support
2016-08-25 14:06:01 +01:00
Jeffrey Zhang
2b741eb870 Create the nova instances directory when need during starting
The /var/lib/nova/instances should be create if it do not exist
during starting nova-compute container. Rather than create it
at the bootstrap service stage.

Change-Id: Ibcc5fb8eec0b38cf2b4313f48d1beb3ba83b1e85
Closes-Bug: #1614970
2016-08-20 17:30:13 +00:00
Jeffrey Zhang
04d6736e89 Pin to Ubuntu 16.04
Upgrade Ubuntu base image to Xenial

Closes-Bug: #1593599
Change-Id: I5832a729a9a4fa73c02442047c92ba088ce20db3
2016-08-20 22:30:28 +08:00
Jeffrey Zhang
3f79e37d21 Fix the overwrite sudoers file issue
Change-Id: I4b109f7fdc3b8e49defed26979b04ca158842e98
Closes-Bug: #1598423
2016-07-05 05:49:13 +00:00
Christian Berendt
e299720eb7 Fix ownership of nova-novncproxy-source directory
This solves the following issue when using latest noVNC sources for
the nova-novncproxy container:

OSError: [Errno 13] Permission denied: '/usr/share/novnc'

Change-Id: Iea1f3dfcc696f53431e99570019e27cdef4ca5cb
Closes-bug: #1593006
2016-06-16 01:24:59 +02:00
Benedikt Trefzer
547a7cf967 Make nova-libvirt container build with debian
- handle different xen-utils version in debian/ubuntu
- add rm -f to ignore nonexistent file in debian
- add variable for libvirt group since different in debian

Partially-implements: blueprint build-debian

Change-Id: I44c55981819294286d163b5391aefe967b6dd1d9
2016-06-04 10:16:20 +02:00
Chris Ricker
d47f6bc90c Install missing package in spiceproxy container
nova-spicehtml5proxy service fails on RPM-based systems unless the
spice-html5 RPM is also installed.

Change-Id: I0807159cd68bcc9df4da2d94d7b54a2871236f59
Closes-Bug: #1587212
2016-05-30 22:35:58 -04:00
Swapnil Kulkarni (coolsvap)
435b21b90d Update ubuntu dockerfiles for formatting
Change-Id: If4be00b937e14ec93443dcb7249cf17099d57cbe
Closes-Bug: #1569417
2016-05-26 04:09:22 +00:00
Steven Dake
a861450fd2 Fix failure to deploy with qemu.conf
Closes-Bug: #1572819

Change-Id: I1f2edb482af1e85708159a0dba44a79427dc5af3
2016-04-21 03:00:45 -04:00
Swapnil Kulkarni (coolsvap)
343f70e7cf Update Nova dockerfiles for formatting
Change-Id: Ie3731732f2026cd0d3a1bda2925be2b6479ae5c7
Partial-Bug:#1569417
2016-04-13 15:02:53 +05:30
Jenkins
544c00b497 Merge "Adds iscsid and tgtd docker containers" 2016-04-12 19:38:46 +00:00
Serguei Bezverkhi
184f01a0d6 Adds iscsid and tgtd docker containers
This partially implements iscsi and lvm2 support for cinder
in Kolla. Adds iscsid and tgtd docker containers.

Change-Id: I7fb48c954e578772b90a2aa619c8bcfa990b3ae8
Partially-Implements: blueprint iscsi-lvm2-docker
2016-04-10 09:17:16 -04:00
Jeffrey Zhang
ad1461f46d Fix the qemu has nova permission in nova instances folder
Fix the permission issue on different distro
* In CentOS, add the qemu to nova group in CentOS
* In Ubuntu, add the nova to libvirtd group

Co-Authored-By: Steven Dake <stdake@cisco.com>
Change-Id: I1f4f9ce29abf0d788965fe94d8918b10a7169a75
Closes-Bug: #1568012
2016-04-08 15:53:28 -04:00
Jenkins
c8f0fa67f7 Merge "Adds migration step from nova to nova_api database" 2016-04-05 11:30:14 +00:00
Serguei Bezverkhi
7676b079e6 Adds migration step from nova to nova_api database
This patch adds a missing required step to migrate information from the nova
to the new nova_api database.

Closes-Bug: #1565497

Change-Id: Ia1554e12c688e5a6509af2d37f1825fd4ab666be
Co-Authored-By: Steven Dake <stdake@cisco.com>
2016-04-05 03:50:01 -04:00
Jeffrey Zhang
42420830f6 Implement nova-ssh container
Add a nova-ssh container to handle the `nova migrate` and
`nova resize` case, in which the nova will use ssh to copy
files between machines.

Change-Id: Ie6675943f3aeabfbba8589d308d55b9c89d732db
Closes-Bug: #1562141
2016-04-03 07:21:17 +00:00
Serguei Bezverkhi
584690a9f2 Fixing permission for libvirtd.log
Fixing permissions so all users could access libvirtd.log

Change-Id: I6f63a847ba9c5591a87922d3b117b101100b2fad
Closes-Bug: 1563430
Co-Authored-By: Steven Dake <stdake@cisco.com>
2016-03-29 13:52:52 -04:00
Jenkins
bd5d38ef3c Merge "Adds genisoimage package dependency to nova-compute" 2016-03-25 10:59:20 +00:00
Vikram Hosakote
7af0ab9ba9 Make heka collect libvirtd.log in nova_libvirt container
Test results of this patch set are at:
http://paste.openstack.org/show/491382/

Change-Id: I1bc8bdb3180f30dc69af28a35fa057ac801bde0f
Closes-Bug: #1560298
2016-03-22 03:23:41 +00:00
SamYaple
8b3f0d0857 Use ubuntu Mitaka repo
The rabbitmq-server package is upgraded to 3.5.7 in cloud-archive
so we update centos to match

The xen-utils package now needs an explict version, xen-utils-4.6 is
what is provided by cloud-archive mitaka

Libvirt 1.3 is in the ubuntu cloud-archive. This has a new daemon for
logging that needs further implementation in newton. For now, it has
been disabled within the qemu.conf

Co-Authored-By: Jeffrey Zhang <jeffrey.zhang@99cloud.net>
TrivialFix
Change-Id: I84217824817c484b6800a64cbd7767b127a3098e
2016-03-14 15:52:48 +00:00
Ryan Hallisey
930737efae Libvirt needs openvswitch to connect br-int
Libvirt is trying to create a port on br-int and is
failing because ovs is not installed.

Co-authored-by: Ian Main <imain@redhat.com>
Closes-bug: 1552717
Change-Id: I6ed0c1ae5b27b58e4c22bcbe7e674f66cde48990
2016-03-03 05:00:50 -05:00
Sean Mooney
768c7d7061 Adds genisoimage package dependency to nova-compute
- This change enables the nova-compute agent to generate
  config drives to attach the an instance.
- This allows the config drive to be used to pass
  cloud-init config files to a guest enableing first boot
  configuration.

Change-Id: Id17741b3fce1382350914c1b6c818b0020fe839a
Closes-Bug: #1538288
2016-02-26 21:50:00 +00:00
SamYaple
06f1519b7a nova-libvirt is not a child of nova-base
The permissions fix was not applied due to a recent patch.

Related-Id: I37d737509bc7cf3dc74bb13ecb0a6ae68080556e

TrivialFix

Change-Id: Ica737a8e51cdb66b06a09b5484a4915d6e26ee06
2016-02-25 16:28:49 +00:00
Éric Lemoine
ede53b1dcb Remove duplicate code in nova extend_start.sh
Change-Id: I37d737509bc7cf3dc74bb13ecb0a6ae68080556e
Partial-Bug: #1546944
2016-02-23 08:58:46 +01:00