- Jun 18, 2019
-
-
Marek Svensson authored
This change defaults freezer to use mariadb as default backend for database and adds elasticsearch as an optional backend due to the requirement of freezer to use elasticsearch version 2.3.0. The default elasticsearch in kolla-ansible is 5.6.x and that doesn't work with freezer. Added needed options to the elasticsearch backend like: - protocol - address - port - number of replicas Change-Id: I88616c285bdb297fd1f738846ddffe1b08a7a827 Signed-off-by:
Marek Svensson <marek@marex.st>
-
- Jun 16, 2019
-
-
Jeffrey Zhang authored
The nova-consoleauth service was deprecated during the Rocky release [1] and has not been necessary since unless you're using cells v1. As Kolla has never supported cells v1, which is finally being removed during Train [2], we can get ahead of the curve and stop deploying nova-consoleauth immediately. [1] https://specs.openstack.org/openstack/nova-specs/specs/rocky/implemented/convert-consoles-to-objects.html [2] https://blueprints.launchpad.net/nova/+spec/remove-cells-v1/ Change-Id: I099080979f5497537e390f531005a517ab12aa7a
-
- Jun 07, 2019
-
-
Carlos Goncalves authored
The project has been retired and there will be no Train release [1]. This patch removes Neutron LBaaS support in Kolla. [1] https://review.opendev.org/#/c/658494/ Change-Id: Ic0d3da02b9556a34d8c27ca21a1ebb3af1f5d34c
-
- Jun 06, 2019
-
-
Pierre Riteau authored
Check if a base Nova cell already exists before calling `nova-manage cell_v2 create_cell`, which would otherwise create a duplicate cell when the transport URL or database connection change. If a base cell already exists but the connection values have changed, we now call `nova-manage cell_v2 update_cell` instead. This is only possible if a duplicate cell has not yet been created. If one already exists, we print a warning inviting the operator to perform a manual cleanup. We don't use a hard fail to avoid an abrupt change of behavior if this is backported to stable branches. Change-Id: I7841ce0cff08e315fd7761d84e1e681b1a00d43e Closes-Bug: #1734872
-
- May 31, 2019
-
-
Gaetan Trellu authored
Qinling is an OpenStack project to provide "Function as a Service". This project aims to provide a platform to support serverless functions. Change-Id: I239a0130f8c8b061b531dab530d65172b0914d7c Implements: blueprint ansible-qinling-support Story: 2005760 Task: 33468
-
- May 22, 2019
-
-
Pierre Riteau authored
Kolla-Ansible populates /etc/hosts with overcloud hosts using their API interface IP address. When configured correctly, this allows Nova to use the API interface for live migration of instances between compute hosts. The hostname used is from the `ansible_hostname` variable, which is a short hostname generated by Ansible using the first dot as a delimiter. However, Nova defaults to use the result of socket.gethostname() to register nova-compute services. In deployments where hostnames are set to FQDNs, for example when using FreeIPA, nova-compute would try to reach the other compute node using its FQDN (as registered in the Nova database), which was absent from /etc/hosts. This can result in failures to live migrate instances if DNS entries don't match. This commit populates /etc/hosts with `ansible_nodename` (hostname as reported by the system) in addition to `ansible_hostname`, if they are different. Change-Id: Id058aa1db8d60c979680e6a41f7f3e1c39f98235 Closes-Bug: #1830023
-
- May 17, 2019
-
-
Mark Goddard authored
Right now every controller rotates fernet keys. This is nice because should any controller die, we know the remaining ones will rotate the keys. However, we are currently over-rotating the keys. When we over rotate keys, we get logs like this: This is not a recognized Fernet token <token> TokenNotFound Most clients can recover and get a new token, but some clients (like Nova passing tokens to other services) can't do that because it doesn't have the password to regenerate a new token. With three controllers, in crontab in keystone-fernet we see the once a day correctly staggered across the three controllers: ssh ctrl1 sudo cat /etc/kolla/keystone-fernet/crontab 0 0 * * * /usr/bin/fernet-rotate.sh ssh ctrl2 sudo cat /etc/kolla/keystone-fernet/crontab 0 8 * * * /usr/bin/fernet-rotate.sh ssh ctrl3 sudo cat /etc/kolla/keystone-fernet/crontab 0 16 * * * /usr/bin/fernet-rotate.sh Currently with three controllers we have this keystone config: [token] expiration = 86400 (although, keystone default is one hour) allow_expired_window = 172800 (this is the keystone default) [fernet_tokens] max_active_keys = 4 Currently, kolla-ansible configures key rotation according to the following: rotation_interval = token_expiration / num_hosts This means we rotate keys more quickly the more hosts we have, which doesn't make much sense. Keystone docs state: max_active_keys = ((token_expiration + allow_expired_window) / rotation_interval) + 2 For details see: https://docs.openstack.org/keystone/stein/admin/fernet-token-faq.html Rotation is based on pushing out a staging key, so should any server start using that key, other servers will consider that valid. Then each server in turn starts using the staging key, each in term demoting the existing primary key to a secondary key. Eventually you prune the secondary keys when there is no token in the wild that would need to be decrypted using that key. So this all makes sense. This change adds new variables for fernet_token_allow_expired_window and fernet_key_rotation_interval, so that we can correctly calculate the correct number of active keys. We now set the default rotation interval so as to minimise the number of active keys to 3 - one primary, one secondary, one buffer. This change also fixes the fernet cron job generator, which was broken in the following cases: * requesting an interval of more than 1 day resulted in no jobs * requesting an interval of more than 60 minutes, unless an exact multiple of 60 minutes, resulted in no jobs It should now be possible to request any interval up to a week divided by the number of hosts. Change-Id: I10c82dc5f83653beb60ddb86d558c5602153341a Closes-Bug: #1809469
-
binhong.hua authored
When integrating 3rd party component into openstack with kolla-ansible, maybe have to mount some extra volumes to container. Change-Id: I69108209320edad4c4ffa37dabadff62d7340939 Implements: blueprint support-extra-volumes
-
- Apr 10, 2019
-
-
Mark Goddard authored
During the Train cycle, Bifrost switched to using JSON-RPC by default for Ironic's internal communication [1], avoiding the need to install RabbitMQ. This simplifies things, so we may as well remove our custom configuration of RabbitMQ. [1] https://review.openstack.org/645093 Change-Id: I3107349530aa753d68fd59baaf13eb7dd5485ae6
-
- Apr 08, 2019
-
-
Mark Goddard authored
With Docker CE, the daemon sets the default policy of the iptables FORWARD chain to DROP. This causes problems for provisioning bare metal servers when ironic inspector is used with the 'iptables' PXE filter. It's not entirely clear why these two things interact in this way, but switching to the 'dnsmasq' filter works around the issue, and is probably a good move anyway because it is more efficient. We have added a migration task here to flush and remove the ironic-inspector iptables chain since inspector does not do this itself currently. Change-Id: Iceed5a096819203eb2b92466d39575d3adf8e218 Closes-Bug: #1823044
-
Mark Goddard authored
Make an early start on the TODOs for the Train cycle. 1. Remove the task that removes the vitrage_collector container, which was added in the Stein cycle to clean up this container which is no longer deployed. 2. Remove globals.yml configuration in CI to disable Heat for upgrade jobs. Heat is now enabled in the previous release (Stein). 3. Remove the deprecated variable cinder_iscsi_helper, which was renamed to cinder_target_helper in Stein. Change-Id: I774bf395e0bdd4db9c20c6289a22cf059fa42e1a
-
- Apr 05, 2019
-
-
OpenStack Release Bot authored
Add file to the reno documentation build to show release notes for stable/stein. Use pbr instruction to increment the minor version number automatically so that master versions are higher than the versions on stable/stein. Change-Id: I4a9a0eab03f3dd06bf2214ed6d6e8db6af5bd032 Sem-Ver: feature
-
- Mar 29, 2019
-
-
Mark Goddard authored
Change-Id: I0d66e49f09313de8abb89f510c7a5098507c572a
-
- Mar 14, 2019
-
-
Scott Solkhon authored
Adds support to seperate Swift access and replication traffic from other storage traffic. In a deployment where both Ceph and Swift have been deployed, this changes adds functionalality to support optional seperation of storage network traffic. This adds two new network interfaces 'swift_storage_interface' and 'swift_replication_interface' which maintain backwards compatibility. The Swift access network interface is configured via 'swift_storage_interface', which defaults to 'storage_interface'. The Swift replication network interface is configured via 'swift_replication_interface', which defaults to 'swift_storage_interface'. If a separate replication network is used, Kolla Ansible now deploys separate replication servers for the accounts, containers and objects, that listen on this network. In this case, these services handle only replication traffic, and the original account-, container- and object- servers only handle storage user requests. Change-Id: Ib39e081574e030126f2d08f51de89641ddb0d42e
-
caoyuan authored
refer to [0] [0]: https://docs.openstack.org/ceilometer/latest/install/install-compute-rdo.html Co-Authored-By:
zhulingjie <easyzlj@gmail.com> Change-Id: I4cda336dedb3d807b80d13bcc219268a8d667b4d
-
- Mar 11, 2019
-
-
Erol Guzoglu authored
This patch implements the support for the elasticsearch-exporter in kolla-ansible The configuration and prechecks are reused from the other exporters Depends-On: Id138f12e10102a6dd2cd8d84f2cc47aa29af3972 Change-Id: Iae0eac0179089f159804490bf71f1cf2c38dde54
-
- Mar 08, 2019
-
-
Doug Szumski authored
In some scenarios it may be useful to perform custom formatting of logs before forwarding them. For example, the JSON formatter plugin can be used to convert an event to JSON. Change-Id: I3dd9240c5910a9477456283b392edc9566882dcd
-
Bai Yongjun authored
Because kolla-ansible not have cyborg so should add it. Implements: blueprint add-cyborg-to-kolla-ansible Depend-On: I497e67e3a754fccfd2ef5a82f13ccfaf890a6fcd Change-Id: I6f7ae86f855c5c64697607356d0ff3161f91b239
-
- Mar 01, 2019
-
-
Mark Goddard authored
The iscsi_helper option was deprecated in favour of target_helper in Queens, and will be removed in the Stein release. This also renames the cinder_iscsi_helper variable to cinder_target_helper, deprecating but still supporting the former name until the Train release. Change-Id: Ie38c09b2dd8598f62b0733c8444eec5f6ce3daac
-
- Feb 22, 2019
-
-
Mark Goddard authored
Adds a new flag, 'enable_openstack_core', which defaults to 'yes'. Setting this flag to 'no' will disable the core OpenStack services, including Glance, Heat, Horizon, Keystone, Neutron, and Nova. Improves the default configuration of OpenStack Ironic when used in standalone mode. In particular, configures a noauth mode when Keystone is disabled, and allows the iPXE server to be used for provisioning as well as inspection if Neutron is disabled. Documentation for standalone ironic will be updated separately. This patch was developed and tested using Bikolla [1]. [1] https://github.com/markgoddard/bikolla Change-Id: Ic47f5ad81b8126a51e52a445097f7950dba233cd Implements: blueprint standalone-ironic
-
- Jan 24, 2019
-
-
binhong.hua authored
The path /var/lib/docker/volumes/kolla_logs/_data/ is too long shorter log path will help to debug from log. The volume path is compatible with docker-engine and docker-ce. Change-Id: I9195d5f24d938f5060fe748aac3ae58c79ec5abf
-
binhong.hua authored
By default, docker containers inherit ulimit from limits of docker deamon. On CentOS 7, docker daemon default NOFILE is 1048576. It can found in /usr/lib/systemd/system/docker.service. The big limit will cause many problem. we should control it in production environment. Change-Id: Iab962446a94ef092977728259d9818b86cfa7f68
-
- Jan 21, 2019
-
-
Jorge Niedbalski authored
This patch implements the initial support for the openstack-exporter[0] in the kolla-ansible prometheus monitoring system. The configuration and prechecks are reused from the other exporters and a new template is provided for generating a os-client-config file required by the exporter. The default scrape interval is 60 seconds, but it can be extended via a configuration option. [0] https://github.com/Linaro/openstack-exporter Change-Id: I4a34c4bb56e74b5cd544972cbd6540d9acb6e4a1
-
- Jan 18, 2019
-
-
binhong.hua authored
bump up the max_files to 32768 and max_processes to 131072. when nova used ceph as backend, the default limit 1024 is not enough. each connection from rbd image to osd needs 1 fd and 2 threads. if we have 200 osds, we need 200 fds and 400 threads for 1 image. Change-Id: I94c3ec111473ea2ccacdea5dbbf3fdc9c569859f
-
- Dec 24, 2018
-
-
weiyj authored
Change-Id: I07e4e563538b4a47d9b1707b4e660531ccce7b9b
-
- Dec 21, 2018
-
-
Martin Chlumsky authored
Currently, you cannot deploy custom policy files in horizon for disabled openstack projects that don't have a horizon plugin. This patch allows customizing disabled openstack projects policy files used by horizon. For services that do not have horizon plugins, it creates variables of the form `enable_*_horizon_policy_file` and sets these to the relevant `enable_*` variables by default. This ensures backwards compatibility. This patch is useful when you are migrating to kolla-ansible from another deployment method one openstack project at a time and you have custom policy files deployed by the old method. Partially-Implements: blueprint docs-migrating-to-kolla Closes-Bug: #1809314 Change-Id: Ifc33ef65759fa4831c24d177b272af5b45f80931
-
- Dec 17, 2018
-
-
Mark Goddard authored
Kolla Ansible's bootstrap-servers command provides support for installing the Docker engine. This is currently done using the packages at https://apt.dockerproject.org and https://yum.dockerproject.org. These packages are outdated, with the most recent packages from May 2017 - docker-engine-17.05. The source for up to date docker packages is https://download.docker.com, which was introduced with the move to Docker Community Edition (CE) and Docker Enterprise Edition (EE). This change adds support to bootstrap-servers for Docker CE for CentOS and Ubuntu. It also adds a new variable, 'enable_docker_repo', which controls whether a package repository for Docker will be enabled. It also adds a new variable, 'docker_legacy_packages', which controls whether the legacy packages at dockerproject.org will be used or the newer packages at docker.com. The default value for this variable is 'false', meaning to use Docker CE. Upgrading from docker-engine to docker-ce has been tested on CentOS 7.5 and Ubuntu 16.04, by running 'kolla-ansible bootstrap-servers' with 'docker_legacy_packages' set to 'false'. The upgrades were successful, but result in all containers being stopped. For this reason, the bootstrap-servers command checks running containers prior to upgrading packages, and ensures they are running after the package upgrade is complete. As mentioned in the release note, care should be taken when upgrading Docker with clustered services, which could lose quorum. To avoid this, use --serial or --limit to apply the change in batches. Change-Id: I6dfd375c868870f8646ef1a8f02c70812e8f6271 Implements: blueprint docker-ce
-
Patrick O'Neill authored
Add an enable_cinder_backend_quobyte option to etc/kolla/globals.yml to enable use the Quobyte Cinder backend. Change the bind mounts for /var/lib/nova/mnt to include the shared propogation if Quobyte is enabled. Update the documentation to include a section on configuring the Cinder. Implements: blueprint cinder-quobyte-backend Change-Id: I364939407ad244fe81cea40f880effdbcaa8a20d
-
- Dec 11, 2018
-
-
Kien Nguyen authored
Vitrage has already supported Prometheus as datasource. Kolla can config it automatically, just need a little changes, for example in wsgi config file [1]. Co-Authored-By:
Hieu LE <hieulq2@viettel.com.vn> [1] https://review.openstack.org/#/c/584649/8/devstack/apache-vitrage.template Change-Id: I64028a0dfd9887813b980a31c30c2c1b1046da61
-
- Dec 05, 2018
-
-
Eduardo Gonzalez authored
This change adds support to comfigure tty, it was enabled by default but a recent patch removed it. Some services such as Karaf in opendaylight requires a TTY during startup. Closes-Bug: #1806662 Change-Id: Ia4335523b727d0e45505cbb1efb40ccf04c27db7
-
- Nov 30, 2018
-
-
Paul Bourke authored
Nova allows customisation of various metadata passed through to VMs via a 'release' file[0]. Allow operators to make use of this. [0] https://github.com/openstack/nova/blob/master/etc/nova/release.sample Change-Id: I71569314c8e64320f8ffad79b9273f4d6d903bb6
-
- Nov 26, 2018
-
-
Eduardo Gonzalez authored
With this change, an operator may be able to stop a service container without stopping all services in a host. This change is the starting point to start fast-forward upgrades support. In next changes new flags will be introducced to disable stop dataplane services during upgrades. Change-Id: Ifde7a39d7d8596ef0d7405ecf1ac1d49a459d9ef Implements: blueprint support-stop-containers
-
- Nov 22, 2018
-
-
Nick Jones authored
blueprint database-backup-recovery Introduce a new option, mariadb_backup, which takes a backup of all databases hosted in MariaDB. Backups are performed using XtraBackup, the output of which is saved to a dedicated Docker volume on the target host (which defaults to the first node in the MariaDB cluster). It supports either full (the default) or incremental backups. Change-Id: Ied224c0d19b8734aa72092aaddd530155999dbc3
-
- Nov 21, 2018
-
-
Eduardo Gonzalez authored
Glance cache is used to keep a locally cache image in the glance_api service. Is an usefull service when an image is commonly used to speed times between pulling from storage backend and send to nova. Change-Id: I8e684cc10e4fee1cb52c17a126e3b11f69576cf6
-
- Nov 20, 2018
-
-
caoyuan authored
Refer to neutron docs [1][2] [1]: https://docs.openstack.org/neutron/pike/admin/archives/adv-config.html#l3-metering-service-driver [2]: https://wiki.openstack.org/wiki/Neutron/Metering/Bandwidth Co-Authored-By:
ZhijunWei <wzj334965317@outlook.com> Change-Id: I4a676d041bc2a86497cb139d9347365738b156df
-
Mark Goddard authored
The dnsmasq PXE filter [1] provides far better scalability than the iptables filter typically used. Inspector manages files in a dhcp-hostsdir directory that is watched by dnsmasq via inotify. Dnsmasq then either whitelists or blacklists MAC addresses based on the contents of these files. This change adds a new variable, ironic_inspector_pxe_filter, that can be used to configure the PXE filter for ironic inspector. Currently supported values are 'iptables' and 'dnsmasq', with 'iptables' being the default for backwards compatibility. [1] https://docs.openstack.org/ironic-inspector/latest/admin/dnsmasq-pxe-filter.html Implements: blueprint ironic-inspector-dnsmasq-pxe-filter Change-Id: I73cae9c33b49972342cf1984372a5c784df5cbc2
-
- Nov 19, 2018
-
-
caoyuan authored
The variable {{ node_config_directory }} is used for the configuration directory on the remote hosts, and should not be used for paths on the deploy host (localhost). This changes the default value of the TLS certificate and CA file to reference {{ CONFIG_DIR }}, in line with the directory used for admin-openrc.sh (as of I0709482ead4b7a67e82796e17f85bde151e71bc0). This change also introduces a variable, {{ node_config }}, that references {{ CONFIG_DIR | default('/etc/kolla') }}, to remove duplication. Change-Id: Ibd82ac78630ebfff5824c329d7399e1e900c0ee0 Closes-Bug: #1804025
-
- Nov 06, 2018
-
-
Paul Bourke authored
The concept of splitting the compute group into external/internal just to specify agent_mode for Neutron DVR was deemed to be heavy handed, and depreacated in the Pike cycle. Now that Rocky has been released we can remove these completely for Stein. Change-Id: I28a1eba7f40fee55a7ec41c27451e39e4d7fd8f0
-
Mark Goddard authored
If the [processing] ramdisk_logs_dir option is set, logs returned by the ironic inspection ramdisk following hardware inspection will be stored at that location. This enables easier debugging if inspection fails. Change-Id: I36bdf75c04b088b67b5f54fdf20251c10bdddb63
-
- Nov 02, 2018
-
-
Doug Szumski authored
The Monasca Grafana fork allows users to log into Grafana with their OpenStack user credentials and see metrics associated with their OpenStack project. The long term goal is to enable Keystone support in upstream Grafana, but this work seems to have stalled. Partially-Implements: blueprint monasca-grafana Change-Id: Icc04613b2571c094ae23b66d0bcc38b58c0ee4e1
-