Skip to content
Snippets Groups Projects
  1. May 16, 2023
    • Sean Mooney's avatar
      always add service_user section to nova.conf · ddadaa28
      Sean Mooney authored
      
      As of I3629b84d3255a8fe9d8a7cea8c6131d7c40899e8 nova
      now requires the service_user section to be configured
      to address CVE-2023-2088. This change adds
      the service user section to the nova.conf template in
      the nova and nova-cell roles.
      
      Related-Bug: #2004555
      Signed-off-by: default avatarSven Kieske <kieske@osism.tech>
      Change-Id: I2189dafca070accfd8efcd4b8cc4221c6decdc9f
      (cherry picked from commit a77ea13ef1991543df29b7eea14b1f91ef26f858)
      (cherry picked from commit 03c12abbcc107bfec451f4558bc97d14facae01c)
      (cherry picked from commit cb105dc293ff1cdb11ab63fa3e3bf39fd17e0ee0)
      (cherry picked from commit efe6650d09441b02cf93738a94a59723d84c5b19)
      ddadaa28
  2. Mar 02, 2023
  3. Feb 14, 2023
  4. Jan 13, 2023
    • Matt Crees's avatar
      Add a flag to handle RabbitMQ high availability · 09df6fc1
      Matt Crees authored
      A combination of durable queues and classic queue mirroring can be used
      to provide high availability of RabbitMQ. However, these options should
      only be used together, otherwise the system will become unstable. Using
      the flag ``om_enable_rabbitmq_high_availability`` will either enable
      both options at once, or neither of them.
      
      There are some queues that should not be mirrored:
      * ``reply`` queues (these have a single consumer and TTL policy)
      * ``fanout`` queues (these have a TTL policy)
      * ``amq`` queues (these are auto-delete queues, with a single consumer)
      An exclusionary pattern is used in the classic mirroring policy. This
      pattern is ``^(?!(amq\\.)|(.*_fanout_)|(reply_)).*``
      
      Change-Id: I51c8023b260eb40b2eaa91bd276b46890c215c25
      09df6fc1
  5. Jan 05, 2023
  6. Nov 07, 2022
    • Simon Dodsley's avatar
      Add NVMe-RoCE Cinder driver support for Pure Storage · 716899ff
      Simon Dodsley authored
      From OpenStack Zed the Pure Storage Cinder driver supports
      NVMe-RoCE as a dataplane protocol. This patch adds support
      for this new driver type.
      
      Also amend a couple of documentation formatting typos.
      
      Change-Id: Ic1eed7d19e9b583e22419625c92ac3507ea4614d
      716899ff
  7. Oct 07, 2022
  8. Oct 03, 2022
  9. Aug 17, 2022
    • Will Szumski's avatar
      Introduce variables for cinder backend names · 0fe8010c
      Will Szumski authored
      This allows you to use a more descriptive name if you desire.
      For example, when using cinder with multiple ceph backends, rbd-1,
      doesn't convey much information. You could include location, disk
      technology, etc. in the name.
      
      Change-Id: Icfdc2e5726fec8b645d6c2c63391a13c31f2ce9a
      0fe8010c
  10. Jul 27, 2022
  11. Jul 21, 2022
  12. Jun 09, 2022
    • Will Szumski's avatar
      Add keystone_authtoken.service_type · 49006e56
      Will Szumski authored
      Fixes an issue where access rules failed to validate:
      
          Cannot validate request with restricted access rules. Set
          service_type in [keystone_authtoken] to allow access rule validation
      
      I've used the values from the endpoint. This was mostly a straight
      forward copy and paste, except:
      
      - versioned endpoints e.g cinderv3 where I stripped the version
      - monasca has multiple endpoints associated with a single service. For
        this, I concatenated logging and monitoring to be logging-monitoring.
      
      Closes-Bug: #1965111
      Change-Id: Ic4b3ab60abad8c3dd96cd4923a67f2a8f9d195d7
      49006e56
  13. Jun 02, 2022
    • Michal Arbet's avatar
      Remove configuration related to api_workers · eafd3a59
      Michal Arbet authored
      This patch is removing api related configuration
      from service's config files as we are using
      apache mod_wsgi and this configuration is not
      used.
      
      Change-Id: I69a1542a6f24214fbf6e703782aefb566de4fb26
      eafd3a59
  14. May 28, 2022
    • Radosław Piliszek's avatar
      Do not use keystone_admin_url et al · 7ca9349b
      Radosław Piliszek authored
      Following up on [1].
      The 3 variables are only introducing noise after we removed
      the reliance on Keystone's admin port.
      
      [1] I5099b08953789b280c915a6b7a22bdd4e3404076
      
      Change-Id: I3f9dab93042799eda9174257e604fd1844684c1c
      7ca9349b
  15. May 13, 2022
    • Simon Dodsley's avatar
      Add support for Pure Storage FlashArray backend to Cinder · f088b799
      Simon Dodsley authored
      Add an enable_cinder_backend_pure_iscsi and
      enable_cinder_backend_pure_fc options to etc/kolla/globals.yml
      to enable use of the FlashArray backend.
      Update the documentation to include a section on configuring
      Cinder with the FlashArray.
      
      Implements: blueprint pure-cinder-driver
      Change-Id: I464733f1322237321ed1ffff8636cf30bd1cbb38
      f088b799
  16. Feb 18, 2022
    • alecorps's avatar
      Add support for VMware First Class Disk (FCD) · 812e03f7
      alecorps authored
      An FCD, also known as an Improved Virtual Disk (IVD) or
      Managed Virtual Disk, is a named virtual disk independent of
      a virtual machine. Using FCDs for Cinder volumes eliminates
      the need for shadow virtual machines.
      This patch adds Kolla support.
      
      Change-Id: Ic0b66269e6d32762e786c95cf6da78cb201d2765
      812e03f7
  17. Jan 04, 2022
  18. Jun 22, 2021
  19. Jun 21, 2021
  20. Feb 24, 2021
    • Doug Szumski's avatar
      Fix Cinder log parsing · fa5511c7
      Doug Szumski authored
      
      The Cinder API log is currently written to a file called
      cinder-wsgi.log, and the WSGI logs to cinder-api.log. Fluentd
      then tries to parse the WSGI log as an OpenStack log which
      results in 'got incomplete line' errors and prevents proper
      ingestion of these logs.
      
      Co-Authored-By: default avataryaoning <yaoning@unitedstack.com>
      Closes-Bug: 1916752
      Change-Id: I3296dcc4780160cbf88bd18285571276f58bb249
      fa5511c7
  21. Sep 22, 2020
    • Pierre Riteau's avatar
      Reduce the use of SQLAlchemy connection pooling · c8177202
      Pierre Riteau authored
      When the internal VIP is moved in the event of a failure of the active
      controller, OpenStack services can become unresponsive as they try to
      talk with MariaDB using connections from the SQLAlchemy pool.
      
      It has been argued that OpenStack doesn't really need to use connection
      pooling with MariaDB [1]. This commit reduces the use of connection
      pooling via two configuration options:
      
      - max_pool_size is set to 1 to allow only a single connection in the
        pool (it is not possible to disable connection pooling entirely via
        oslo.db, and max_pool_size = 0 means unlimited pool size)
      - lower connection_recycle_time from the default of one hour to 10
        seconds, which means the single connection in the pool will be
        recreated regularly
      
      These settings have shown better reactivity of the system in the event
      of a failover.
      
      [1] http://lists.openstack.org/pipermail/openstack-dev/2015-April/061808.html
      
      Change-Id: Ib6a62d4428db9b95569314084090472870417f3d
      Closes-Bug: #1896635
      c8177202
  22. Sep 17, 2020
    • Mark Goddard's avatar
      Support TLS encryption of RabbitMQ client-server traffic · 761ea9a3
      Mark Goddard authored
      This change adds support for encryption of communication between
      OpenStack services and RabbitMQ. Server certificates are supported, but
      currently client certificates are not.
      
      The kolla-ansible certificates command has been updated to support
      generating certificates for RabbitMQ for development and testing.
      
      RabbitMQ TLS is enabled in the all-in-one source CI jobs, or when
      The Zuul 'tls_enabled' variable is true.
      
      Change-Id: I4f1d04150fb2b5af085b762890092f87ae6076b5
      Implements: blueprint message-queue-ssl-support
      761ea9a3
  23. Aug 19, 2020
    • Rafael Weingärtner's avatar
      Standardize use and construction of endpoint URLs · f425c067
      Rafael Weingärtner authored
      
      The goal for this push request is to normalize the construction and use
       of internal, external, and admin URLs. While extending Kolla-ansible
       to enable a more flexible method to manage external URLs, we noticed
       that the same URL was constructed multiple times in different parts
       of the code. This can make it difficult for people that want to work
       with these URLs and create inconsistencies in a large code base with
       time. Therefore, we are proposing here the use of
       "single Kolla-ansible variable" per endpoint URL, which facilitates
       for people that are interested in overriding/extending these URLs.
      
      As an example, we extended Kolla-ansible to facilitate the "override"
      of public (external) URLs with the following standard
      "<component/serviceName>.<companyBaseUrl>".
      Therefore, the "NAT/redirect" in the SSL termination system (HAproxy,
      HTTPD or some other) is done via the service name, and not by the port.
      This allows operators to easily and automatically create more friendly
       URL names. To develop this feature, we first applied this patch that
       we are sending now to the community. We did that to reduce the surface
        of changes in Kolla-ansible.
      
      Another example is the integration of Kolla-ansible and Consul, which
      we also implemented internally, and also requires URLs changes.
      Therefore, this PR is essential to reduce code duplicity, and to
      facility users/developers to work/customize the services URLs.
      
      Change-Id: I73d483e01476e779a5155b2e18dd5ea25f514e93
      Signed-off-by: default avatarRafael Weingärtner <rafael@apache.org>
      f425c067
  24. Jul 09, 2020
  25. Jun 27, 2020
    • James Kirsch's avatar
      Fix etcd protocol configuration · a1584322
      James Kirsch authored
      The etcd service protocol is currently configured with internal_protocol.
      The etcd service is not load balanced by a HAProxy container, so
      there is no proxy layer to do TLS termination when internal_protocol
      is configured to be "https".
      
      Until the etcd service is configured to deploy with native TLS
      termination, the etcd uses should be independent of
      internal_protocol, and "http" by default.
      
      Change-Id: I730c02331514244e44004aa06e9399c01264c65d
      Closes-Bug: 1884137
      a1584322
  26. Jun 11, 2020
    • Michal Arbet's avatar
      Fix group_vars and cinder template per documentation · f1addfa3
      Michal Arbet authored
      When installing kolla with external ceph, ceph_cinder_user
      var has to be set per documentation instead of ceph_cinder_volume_user.
      This value is also rendered in example etc/kolla/globals.yml file.
      
      This patch is fixing this bug or, let's say typo.
      
      Change-Id: Id82b07867f4bc0e5d5e56363f0122014df6892bc
      f1addfa3
  27. Apr 03, 2020
  28. Mar 26, 2020
  29. Jan 29, 2020
    • Michal Nasiadka's avatar
      External Ceph: add ceph_*_user variables · fdf3729f
      Michal Nasiadka authored
      To make the configuration easier for the user, and to allow non-standard
      ceph authentication ids - introduce ceph_*_user variables.
      
      Change-Id: I24e01c43c826b62b6748d93a498f4b7d8ce9e309
      fdf3729f
  30. Jan 13, 2020
    • James Kirsch's avatar
      Configure services to use Certificate Authority · c15dc203
      James Kirsch authored
      Include a reference to the globally configured Certificate Authority to
      all services. Services use the CA to verify HTTPs connections.
      
      Change-Id: I38da931cdd7ff46cce1994763b5c713652b096cc
      Partially-Implements: blueprint support-trusted-ca-certificate-file
      c15dc203
  31. Dec 16, 2019
  32. Dec 07, 2019
  33. Oct 16, 2019
    • Radosław Piliszek's avatar
      Implement IPv6 support in the control plane · bc053c09
      Radosław Piliszek authored
      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: default avatarRadosław Piliszek <radoslaw.piliszek@gmail.com>
      bc053c09
  34. Aug 15, 2019
  35. Jun 24, 2019
  36. Jun 18, 2019
  37. Mar 06, 2019
    • Jim Rollenhagen's avatar
      Allow swift proxy server to use independent hostnames · 31ed556e
      Jim Rollenhagen authored
      This allows swift service endpoints to use custom hostnames, and adds the
      following variables:
      
      * swift_internal_fqdn
      * swift_external_fqdn
      
      These default to the old values of kolla_internal_fqdn or
      kolla_external_fqdn.
      
      This also adds a swift_proxy_server_listen_port option, which defaults to
      swift_proxy_server_port for backward compatibility.
      
      This option allow the user to differentiate between the port the
      service listens on, and the port the service is reachable on. This is
      useful for external load balancers which live on the same host as the
      service itself.
      
      While we're in here, use the ``internal_protocol`` variable for the swift
      endpoint in cinder's swift backup driver configuration, instead of hardcoding
      to ``http``.
      
      Change-Id: Ibc01618383c26e16c0067f7f6b9cf5160d968d1e
      Implements: blueprint service-hostnames
      31ed556e
    • Jim Rollenhagen's avatar
      Allow cinder services to use independent hostnames · 45bde4b9
      Jim Rollenhagen authored
      This allows cinder service endpoints to use custom hostnames, and adds the
      following variables:
      
      * cinder_internal_fqdn
      * cinder_external_fqdn
      
      These default to the old values of kolla_internal_fqdn or
      kolla_external_fqdn.
      
      This also adds a cinder_api_listen_port option, which defaults to
      cinder_api_port for backward compatibility.
      
      This option allow the user to differentiate between the port the
      service listens on, and the port the service is reachable on. This is
      useful for external load balancers which live on the same host as the
      service itself.
      
      Change-Id: I2a5036456afac6135dca3723ae754ea9f8bc8475
      Implements: blueprint service-hostnames
      45bde4b9
    • Jim Rollenhagen's avatar
      Use keystone_*_url var in all configs · 2e4e6050
      Jim Rollenhagen authored
      We're duplicating code to build the keystone URLs in nearly every
      config, where we've already done it in group_vars. Replace the
      redundancy with a variable that does the same thing.
      
      Change-Id: I207d77870e2535c1cdcbc5eaf704f0448ac85a7a
      2e4e6050
  38. Mar 01, 2019
    • Mark Goddard's avatar
      Use new cinder target_helper option · 1c22da32
      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
      1c22da32
Loading