200 Commits

Author SHA1 Message Date
Zuul
975db2b2b4 Merge "OVN Support" 2020-04-15 20:51:57 +00:00
Radosław Piliszek
3c234603a9 Fix Designate not to use etcd coordination backend
etcd via tooz does not support group membership required by
Designate coordination.
The best k-a can do is not to configure etcd in Designate.

Change-Id: I2f64f928e730355142ac369d8868cf9f65ca357e
Closes-bug: #1872205
Related-bug: #1840070
2020-04-13 17:33:02 +02:00
Michal Nasiadka
8a0740df97 OVN Support
Implement OVN Ansible role.

Implements: blueprint ovn-controller-neutron-ansible

Depends-On: https://review.opendev.org/713422
Change-Id: Icd425dea85d58db49c838839d8f0b864b4a89a78
2020-04-09 07:40:12 +02:00
Doug Szumski
b758883418 Support setting Kafka storage volume
Not everyone wants Kafka data stored on a Docker volume. This
change allows a user to flexibly control where the data is stored.

Change-Id: I2ba8c7a85c7bf2564f954a43c6e6dbb3257fe902
2020-03-30 11:00:03 +02:00
Christian Berendt
d749b34160 Add deprecation notes to vmware/xenserver/hyperv guides
The support of vmware, xenserver and hyperv was deprecated.

Change-Id: Id06770c2247ce242f1fc2ac7220bbe6c3070598d
2020-03-03 19:05:06 +01:00
Zuul
0c5432dc8e Merge "Introduce influxdb_datadir_volume" 2020-02-20 20:09:03 +00:00
Jason Anderson
cd99ebe55c Update docs to say that external Ceph required
There is no longer support for provisioning Ceph in Kolla Ansible, so we
should no longer say that it's only sometimes necessary to create the
cluster/pools/keyrings externally.

Change-Id: Ia3026cfeebfb8258b79490f9facc341c928845f9
2020-02-20 16:39:28 +00:00
Will Szumski
4cf7ff9fa2 Introduce influxdb_datadir_volume
This allows you to tune the performance of InfluxDB by locating the
volume on a drive that is separate to the default docker storage.

Change-Id: Iea555a2702b225b30f5d7035b8a703d4f3376ee7
2020-02-19 16:08:33 +00:00
Zuul
cd3c51197e Merge "Remove kolla-ceph" 2020-02-13 10:09:24 +00:00
Zuul
3269b13ddd Merge "Ironic: fix documentation again" 2020-02-12 03:53:04 +00:00
Michal Nasiadka
4e6fe7a6da Remove kolla-ceph
Kolla-Ansible Ceph deployment mechanism has been deprecated in Train [1].

This change removes the Ansible code and associated CI jobs.

[1]: https://review.opendev.org/669214

Change-Id: Ie2167f02ad2f525d3b0f553e2c047516acf55bc2
2020-02-11 11:42:06 +01:00
Mark Goddard
58816f738e Ironic: fix documentation again
Ports need physical-network to be set for a flat network, otherwise they
will not bind.

Closes-Bug: #1862628
Change-Id: I9d579b4317a8acbc3e51bbd9c0236846b75d598b
2020-02-11 10:05:20 +00:00
Zuul
b8fb5666c3 Merge "Ironic: fix documentation" 2020-02-11 08:02:45 +00:00
Mark Goddard
a8529db5fc Ironic: fix documentation
Backport: train

* Ironic dropped CoreOS IPA images in Train - use CentOS DIB images
* Nova flavor requires dropping standard resources
* Link to sections in ironic docs

Change-Id: Id65ada7cd6766d3a907a5a1da54978b56319979c
2020-02-10 13:02:54 +00:00
Radosław Piliszek
c83c5b0edc Docs: fix cells upgrade guide
Change-Id: Ia122aa157413e71eb50bd22e3c9f44a2e5c0bf4f
2020-02-08 16:29:40 +01:00
Michal Nasiadka
de27891b46 doc: external Ceph - add manila ceph caps note
Change-Id: Iad7347b6bdd34fc99872e1035e673fe69d6c55ea
2020-01-30 11:23:40 +01:00
Michal Nasiadka
ab797c1ae9 doc: fix bullets in external_ceph.rst
Bullets under Cinder paragraph were not properly formatted.

Change-Id: I0626c93435c989447feb257cd24ddc3af2d05851
2020-01-29 17:14:31 +01:00
Michal Nasiadka
fdf3729f83 External Ceph: add ceph_*_user variables
To make the configuration easier for the user, and to allow non-standard
ceph authentication ids - introduce ceph_*_user variables.

Change-Id: I24e01c43c826b62b6748d93a498f4b7d8ce9e309
2020-01-29 11:06:58 +00:00
Michal Nasiadka
1f929336e3 External Ceph: keys as variables
Introduce user modifiable variables instead of fixed-names
of Ceph keyring files for external Ceph functionality.

Change-Id: I1a33b3f9d6eca5babf53b91187461e43aef865ce
2020-01-22 18:16:38 +00:00
Zuul
94def91405 Merge "Fix duplicated words issue like "are are out of"" 2020-01-06 12:25:39 +00:00
zhufl
1b90ed1c47 Fix duplicated words issue like "are are out of"
This is to fix the duplicated words issue like
"Other services that are are out of scope of this".

Change-Id: Ie4882dbb64d6e8774888b97895af20ba3855f0f8
2020-01-06 09:26:22 +00:00
Zuul
827d70a985 Merge "Docs: remove some bad recommendations" 2020-01-02 14:28:10 +00:00
Radosław Piliszek
ede61e743b Docs: remove some bad recommendations
Change-Id: I401a073eb6225e90b6f9d6b2a32f33d22d1d7a79
2019-12-20 18:41:59 +01:00
Zuul
558b745ae1 Merge "Support deploying Elasticsearch Curator" 2019-12-10 10:52:46 +00:00
Doug Szumski
d4381456fd Support deploying Elasticsearch Curator
This allows users to supply an Elasticsearch Curator actions file
to manage log retention [1]. Curator then runs on a cron job, which
defaults to every day. A default curator actions file is provided,
which can be customised by the end user if required.

[1] https://www.elastic.co/guide/en/elasticsearch/client/curator/current/actionfile.html

Change-Id: Ide9baea9190ae849e61b9d8b6cff3305bdcdd534
2019-12-09 14:49:05 +00:00
Zuul
f8862c6cc2 Merge "[Train] Fix Tacker config for the local Glance store" 2019-12-03 10:21:34 +00:00
Michal Nasiadka
0947974ff6 Split out OVS/Linuxbridge agent configs from ml2_conf.ini
Change-Id: I799993728112a525e34cfbc4e786a10f0ed03be9
2019-11-27 13:42:48 +00:00
Radosław Piliszek
c5f9ea9590 [Train] Fix Tacker config for the local Glance store
It turned out the previous fix ([1]) was incomplete.
Additionally, it seems we have to limit Tacker server
to one instance co-located with conductor.

[1] https://review.opendev.org/684275
commit b96ade3cf01009d822f85744efee523127f2674c

Change-Id: I9ce27d5f68f32ef59e245960e23336ae5c5db905
Closes-bug: #1853715
Related-bug: #1845142
2019-11-25 20:13:15 +01:00
Michal Nasiadka
eec6831fff Remove OpenDaylight role
Opendaylight support has been deprecated in Train - time to remove it.

Change-Id: I3a61bfbcbf366c327ea3e25d2424bc3fedca29f0
2019-11-18 11:57:32 +00:00
Jan Vondra
9137828b97 Allow passing arguments to RabbitMQ server
Adds rabbitmq_server_additional_erl_args variable which
is appended to RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS
environment variable to RabbitMQ server startup script.

This can be used to configure the schedulers.

Docs attached.

Change-Id: Id683c8cc6dac61354ffd94f3b460335b42136ba2
Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Related-bug: #1846467
2019-10-25 11:38:45 +02:00
Zuul
160af32c2c Merge "[train] Add required Tacker Conductor config and docs" 2019-10-21 13:17:00 +00:00
Zuul
45aff323b9 Merge "Docs: add nova cells" 2019-10-21 09:22:34 +00:00
Eduardo Gonzalez
b96ade3cf0 [train] Add required Tacker Conductor config and docs
Tacker requires config for storing CSAR vnf packages.
This patch adds it as well as relevant docs.
Only one Tacker Conductor is deployed by default due to
lack of a shared filesystem.

Change-Id: Iad391f35105e79fa9319502256528990915df9b7
Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Closes-Bug: #1845142
2019-10-21 11:15:29 +02:00
Radosław Piliszek
099a33c87d [train] Finish configuring Zun to use Placement
This also enables Placement when Zun is enabled like Kolla Ansible
already does with Nova.

Change-Id: Id2a09f702e8503b49d2b9e73e06b2ce9f4d168a9
Closes-bug: #1840573
2019-10-20 19:33:56 +02:00
Mark Goddard
52bc6f609a Docs: add nova cells
Add documentation about deploying nova with multiple cells.

Change-Id: I89ee276917e5b9170746e07b7f644c7593b03da1
Depends-On: https://review.opendev.org/#/c/675659/
Related: blueprint bp/support-nova-cells
2019-10-17 13:43:39 +01:00
Radosław Piliszek
bc053c09c1 Implement IPv6 support in the control plane
Introduce kolla_address filter.
Introduce put_address_in_context filter.

Add AF config to vars.

Address contexts:
- raw (default): <ADDR>
- memcache: inet6:[<ADDR>]
- url: [<ADDR>]

Other changes:

globals.yml - mention just IP in comment

prechecks/port_checks (api_intf) - kolla_address handles validation

3x interface conditional (swift configs: replication/storage)

2x interface variable definition with hostname
(haproxy listens; api intf)

1x interface variable definition with hostname with bifrost exclusion
(baremetal pre-install /etc/hosts; api intf)

neutron's ml2 'overlay_ip_version' set to 6 for IPv6 on tunnel network

basic multinode source CI job for IPv6

prechecks for rabbitmq and qdrouterd use proper NSS database now

MariaDB Galera Cluster WSREP SST mariabackup workaround
(socat and IPv6)

Ceph naming workaround in CI
TODO: probably needs documenting

RabbitMQ IPv6-only proto_dist

Ceph ms switch to IPv6 mode

Remove neutron-server ml2_type_vxlan/vxlan_group setting
as it is not used (let's avoid any confusion)
and could break setups without proper multicast routing
if it started working (also IPv4-only)

haproxy upgrade checks for slaves based on ipv6 addresses

TODO:

ovs-dpdk grabs ipv4 network address (w/ prefix len / submask)
not supported, invalid by default because neutron_external has no address
No idea whether ovs-dpdk works at all atm.

ml2 for xenapi
Xen is not supported too well.
This would require working with XenAPI facts.

rp_filter setting
This would require meddling with ip6tables (there is no sysctl param).
By default nothing is dropped.
Unlikely we really need it.

ironic dnsmasq is configured IPv4-only
dnsmasq needs DHCPv6 options and testing in vivo.

KNOWN ISSUES (beyond us):

One cannot use IPv6 address to reference the image for docker like we
currently do, see: https://github.com/moby/moby/issues/39033
(docker_registry; docker API 400 - invalid reference format)
workaround: use hostname/FQDN

RabbitMQ may fail to bind to IPv6 if hostname resolves also to IPv4.
This is due to old RabbitMQ versions available in images.
IPv4 is preferred by default and may fail in the IPv6-only scenario.
This should be no problem in real life as IPv6-only is indeed IPv6-only.
Also, when new RabbitMQ (3.7.16/3.8+) makes it into images, this will
no longer be relevant as we supply all the necessary config.
See: https://github.com/rabbitmq/rabbitmq-server/pull/1982

For reliable runs, at least Ansible 2.8 is required (2.8.5 confirmed
to work well). Older Ansible versions are known to miss IPv6 addresses
in interface facts. This may affect redeploys, reconfigures and
upgrades which run after VIP address is assigned.
See: https://github.com/ansible/ansible/issues/63227

Bifrost Train does not support IPv6 deployments.
See: https://storyboard.openstack.org/#!/story/2006689

Change-Id: Ia34e6916ea4f99e9522cd2ddde03a0a4776f7e2c
Implements: blueprint ipv6-control-plane
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-10-16 10:24:35 +02:00
Zuul
5478f362e7 Merge "Docs: improve Nova documentation" 2019-10-13 08:49:32 +00:00
Mark Goddard
e91186c66c Docs: improve Nova documentation
Adds a top-level guide for Nova, with links off to the various virt
driver guides.

Generalises the libvirt TLS guide into a libvirt guide, and adds info on
hardware virtualisation and qemu vs. kvm.

Adds information on configuring consoles.

Change-Id: I36beaaee313bdbc4bcf8cc15c41dda245a5a81ba
2019-10-08 08:30:35 +00:00
Zuul
6bdd7dba75 Merge "[designate] Add coordination backend for designate workers" 2019-10-03 13:15:52 +00:00
Joseph M
9cae608392 [designate] Add coordination backend for designate workers
Add coordination backend configuration to designate.conf which is
required in multinode environments. Fixes warning from designate:

WARNING designate.coordination [-] No coordination backend configured,
assuming we are the only worker. Please configure a coordination backend

Change-Id: I23c4d2de7e3f9368795c423000a4f9a6c3a431e2
Closes-Bug: #1843842
Related-Bug: #1840070
2019-09-30 11:02:27 -04:00
Michal Nasiadka
d3b41a181a Update Neutron reference docs
Add Neutron reference docs, especially a note around
using OVS native firewall driver on recent (4.3+) kernels [1].

[1]: https://docs.openstack.org/neutron/latest/admin/config-ovsfwdriver.html

Change-Id: I6994e364c116234b46f5d5e9f0a4666b83f86375
Closes-Bug: #1653987
2019-09-26 15:49:53 +00:00
Zuul
b2f5d53b58 Merge "[prometheus] Added documentation for deployment and setting extra options" 2019-09-26 09:42:31 +00:00
Zuul
340b6d9456 Merge "Add support for libvirt+tls" 2019-09-26 09:19:33 +00:00
Dincer Celik
bb7fc2e5b1 [prometheus] Added documentation for deployment and setting extra options
Change-Id: I8bb39eaf8a4239c37fcbf91b55ec8003542e2506
2019-09-24 15:58:31 +03:00
Alexis Deberg
0adbbb268e Swift: add swift_extra_ring_files variable to handle multi-policies deployment
The current tasks only use a hardcoded list deploying only the required files.
When using multiple custom policies, additionnal object-*.builder and
object*.gz files are to be deployed as well.
This adds a new default-empty variable that can be overridden when needed

Change-Id: I29c8e349c7cc83e3a2e01ff702d235a0cd97340e
Closes-Bug: #1844752
2019-09-24 02:43:15 -04:00
Kris Lindgren
f8cfccb99e Add support for libvirt+tls
To securely support live migration between computenodes we should enable
tls, with cert auth, instead of TCP with no auth support.

Implements: blueprint libvirt-tls

Change-Id: I22ea6233933c840b853fdcc8e03400b2bf577271
2019-09-19 15:32:41 +01:00
Mark Goddard
15e35333dd Remove support for OracleLinux
We have agreed to remove support for Oracle Linux.

http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006896.html

Change-Id: If11b4ff37af936a0cfd34443e8babb952307882b
2019-09-18 12:25:12 +01:00
Zuul
5dae45e26e Merge "Enable Swift Recon" 2019-09-12 14:06:15 +00:00
Scott Solkhon
d463d3f7bf Enable Swift Recon
This commit adds the necessary configuration to the Swift account,
container and object configuration files to enable the Swift recon
cli.

In order to give the object server on each Swift host access to the
recon files, a Docker volume is mounted into each container which
generates them. The volume is then mounted read only into the object
server container. Note that multiple containers append to the same
file. This should not be a problem since Swift uses a lock when
appending.

Change-Id: I343d8f45a78ebc3c11ed0c68fe8bec24f9ea7929
Co-authored-by: Doug Szumski <doug@stackhpc.com>
2019-09-12 11:45:02 +01:00
Hongbin Lu
0f5e065855 Configure Zun for Placement (Train+)
After the integration with placement [1], we need to configure how
zun-compute is going to work with nova-compute.

* If zun-compute and nova-compute run on the same compute node,
  we need to set 'host_shared_with_nova' as true so that Zun
  will use the resource provider (compute node) created by nova.
  In this mode, containers and VMs could claim allocations against
  the same resource provider.
* If zun-compute runs on a node without nova-compute, no extra
  configuration is needed. By default, each zun-compute will create
  a resource provider in placement to represent the compute node
  it manages.

[1] https://blueprints.launchpad.net/zun/+spec/use-placement-resource-management

Change-Id: I2d85911c4504e541d2994ce3d48e2fbb1090b813
2019-09-10 01:47:15 +00:00