Skip to content
Snippets Groups Projects
  1. Aug 06, 2021
    • Ilya Popov's avatar
      Extra var ironic_enable_keystone_integration added. · da4fd2d6
      Ilya Popov authored
      Basically, there are three main installation scenario:
      
      Scenario 1:
      Ironic installation together with other openstack services
      including keystone. In this case variable enable_keystone
      is set to true and keystone service will be installed
      together with ironic installation. It is possible realise this
      scenario, no fix needed
      
      Scenario 2:
      Ironic installation with connection to already installed
      keystone. In this scenario we have to set enable_keystone
      to “No” to prevent from new keystone service installation
      during the ironic installation process. But in other hand,
      we need to have correct sections in ironic.conf to provide
      all information needed to connect to existing keystone.
      But all sections for keystone are added to ironic.conf only
      if enable_keystone var is set to “Yes”. It isn’t possible
      to realise this scenario. Proposed fix provide support for
      this scenario, where multiple regions share the same
      keystone service.
      
      Scenario 3:
      No keystone integration. Ironic don't connect to Keystone.
      It is possible realise this scenario, no fix needed
      
      Proposed solution also keep the default behaviour: if no
      enable_keystone_integration is manually defined by default
      it takes value of enable_keystone variable and all behaviour
      is the same. But if we don't want to install keystone and
      want to connect to existing one at the same time, it will be
      possible to set enable_keystone var to “No”
      (preventing keystone from installation) and at the same
      time set ironic_enable_keystone_integration to Yes to allow
      needed section appear in ironic.conf through templating.
      
      Change-Id: I0c7e9a28876a1d4278fb2ed8555c2b08472864b9
      da4fd2d6
  2. Jul 28, 2021
    • LinPeiWen's avatar
      Delete haproxy_single_service_listen.cfg.j2 template · fca9be38
      LinPeiWen authored
      Delete the "haproxy_single_service_listen.cfg.j2" template,
      which has been replaced by "haproxy_single_service_split.cfg.j2"
      and deprecated in the Victoria version
      
      Change-Id: I3599f85afe9d3045820ea1ea70481ea2500e49ac
      fca9be38
  3. Jul 22, 2021
    • Mark Goddard's avatar
      ironic: always enable conductor HTTP server · 411668ea
      Mark Goddard authored
      In the Xena release, Ironic removed the iSCSI driver [1]. The
      recommended driver is direct, which uses HTTP to transfer the disk
      image. This requires an HTTP server, and the simplest option is to use
      the one currently deployed when enable_ironic_ipxe is set to true. For
      this reason, this patch always enables the HTTP server running on the
      conductor.
      
      iPXE is still enabled separately, since it cannot currently be used at
      the same time as PXE.
      
      [1] https://review.opendev.org/c/openstack/ironic/+/789382
      
      Change-Id: I30c2ad2bf2957ac544942aefae8898cdc8a61ec6
      411668ea
  4. Jul 21, 2021
    • Mark Goddard's avatar
      Fix ironic_ipxe healthcheck on Debian/Ubuntu · aa28675c
      Mark Goddard authored
      The healthcheck checks for a process called httpd, but these distros
      call it apache2.  This results in the ironic_ipxe container being marked
      as unhealthy.
      
      This change fixes the issue by making the process name distro dependent.
      
      Change-Id: I0b0126e3071146e7f8593ba970ecbed65b36fcfa
      Closes-Bug: #1937037
      aa28675c
  5. Jul 20, 2021
    • Kyle Dean's avatar
      manila: add glance section in manila-share.conf · 2e4f51f6
      Kyle Dean authored
      Since the Victoria release, manila-share.conf requires a glance section
      for some drivers. This change adds the missing section.
      
      It also uses the correct cinder_keystone_user variable to reference the
      cinder user.
      
      Closes-Bug: #1921935
      
      Change-Id: Ib7ce4ed79c28456281087eb4156577f910c072e7
      2e4f51f6
  6. Jul 15, 2021
  7. Jul 02, 2021
    • Rafael Weingärtner's avatar
      Make setup module arguments configurable · 15f2fdcd
      Rafael Weingärtner authored
      
      Ansible facts can have a large impact on the performance of the Ansible
      control host. This patch introduces some control over which facts are
      gathered (kolla_ansible_setup_gather_subset) and which facts are stored
      (kolla_ansible_setup_filter). By default we do not change the default
      values of these arguments to the setup module. The flexibility of these
      arguments is limited, but they do provide enough for a large performance
      improvement in a typical moderate to large OpenStack cloud.
      
      In particular, the large complex dict fact for each interface has a
      large effect, and on an OpenStack controller or hypervisor there may be
      many virtual interfaces. We can use the kolla_ansible_setup_filter
      variable to help:
      
          kolla_ansible_setup_filter: 'ansible_[!qt]*'
      
      This causes Ansible to collect but not store facts matching that
      pattern, which includes the virtual interface facts. Currently we are
      not referencing other facts matching the pattern within Kolla Ansible.
      Note that including the 'ansible_' prefix causes meta facts module_setup
      and gather_subset to be filtered, but this seems to be the only way to
      get a good match on the interface facts. To work around this, we use
      ansible_facts rather than module_setup to detect whether facts exist in
      the cache.
      
      The exact improvement will vary, but has been reported to be as large as
      18x on systems with many virtual interfaces.
      
      For reference, here are some other tunings tried:
      
      * Increased the number of forks (great speedup depending of the size of
        the deployment)
      * Use `strategy = mitogen_linear` (cut processing time in half)
      * Ansible caching (little speed up)
      * SSH tunning (little speed up)
      
      Co-Authored-By: default avatarMark Goddard <mark@stackhpc.com>
      Closes-Bug: #1921538
      Change-Id: Iae8ca4aae945892f1dc65e1b10381d2e26e88805
      15f2fdcd
  8. Jul 01, 2021
  9. Jun 23, 2021
    • Michal Arbet's avatar
      Allow user to set sysctl_net_ipv4_tcp_retries2 · 09d0409e
      Michal Arbet authored
      This patch is adding configuration option to
      manipulate with kernel option sysctl_net_ipv4_tcp_retries2.
      
      More informations about kernel option in [1][2]
      and RedHat suggestion [3] to set for DBs and HA.
      
      [1]: https://pracucci.com/linux-tcp-rto-min-max-and-tcp-retries2.html
      [2]: https://blog.cloudflare.com/when-tcp-sockets-refuse-to-die/
      [3]: https://access.redhat.com/solutions/726753
      
      Closes-Bug: #1917068
      Change-Id: Ia0decbbfa4e33b1889b635f8bb1c9094567a2ce6
      09d0409e
    • Mark Goddard's avatar
      Use ansible_facts to reference facts · ade5bfa3
      Mark Goddard authored
      By default, Ansible injects a variable for every fact, prefixed with
      ansible_. This can result in a large number of variables for each host,
      which at scale can incur a performance penalty. Ansible provides a
      configuration option [0] that can be set to False to prevent this
      injection of facts. In this case, facts should be referenced via
      ansible_facts.<fact>.
      
      This change updates all references to Ansible facts within Kolla Ansible
      from using individual fact variables to using the items in the
      ansible_facts dictionary. This allows users to disable fact variable
      injection in their Ansible configuration, which may provide some
      performance improvement.
      
      This change disables fact variable injection in the ansible
      configuration used in CI, to catch any attempts to use the injected
      variables.
      
      [0] https://docs.ansible.com/ansible/latest/reference_appendices/config.html#inject-facts-as-vars
      
      Change-Id: I7e9d5c9b8b9164d4aee3abb4e37c8f28d98ff5d1
      Partially-Implements: blueprint performance-improvements
      ade5bfa3
    • Mark Goddard's avatar
      magnum: Add CA certificate configuration for internal TLS · 48f0957a
      Mark Goddard authored
      Magnum has various sections in its configuration file for OpenStack
      clients. When internal TLS is enabled, these may need a CA certificate
      to be specified.
      
      This change adds a CA certificate configuration, based on
      openstack_cacert, for all clients using internal endpoints.
      
      Note: we are explicitly not adding the configuration for the
      [magnum_client] ca_file and [drivers] openstack_ca_file options, since
      these use the public endpoint by default. These options may be
      provided via custom configuration if necessary.
      
      Change-Id: Ie59b3777c0a2c142b580addd67e279bc4b2f2c90
      Co-Authored-By: Kyle Dean
      Closes-Bug: #1919389
      48f0957a
  10. Jun 22, 2021
  11. Jun 21, 2021
  12. Jun 20, 2021
    • Radosław Piliszek's avatar
      Do not set pid file for iscsid · 18a0af69
      Radosław Piliszek authored
      Kolla Ansible runs iscsid in the foreground (-f) and
      a recent change to iscsid in CentOS 8 (both Linux and Stream)
      caused it to reject setting pid file in such a case.
      PID file is irrelevant in this scenario so this commit
      removes its parameter.
      
      Closes-Bug: #1933033
      Change-Id: Ic0c4beae0c812f3ca68a6ee5cc4daa2fee0f277d
      18a0af69
    • Radosław Piliszek's avatar
      Revert "Reduce container metrics cardinality" · 640dbb03
      Radosław Piliszek authored
      This reverts commit c6259158.
      
      Reason for revert: cAdvisor fails with:
      
      invalid value "percpu,referenced_memory,cpu_topology,resctrl,udp,advtcp,sched,hugetlb,memory_numa,tcp,process" for flag -disable_metrics: unsupported metric "referenced_memory" specified in disable_metrics
      
      Change-Id: I1a0eea5c20f95f38c707401b56b7d2454484377d
      640dbb03
  13. Jun 18, 2021
  14. Jun 16, 2021
    • Michał Nasiadka's avatar
      Update previous_release to Wallaby · 38ca1431
      Michał Nasiadka authored
      Part of agreed Xena release process cadence:
      R-17 Switch source images to current release
      
      Change-Id: I221998092715355dd8b972bf2575d65c3259a4da
      38ca1431
    • Piotr Parczewski's avatar
      Reduce container metrics cardinality · c6259158
      Piotr Parczewski authored
      Adds support for passing extra runtime options to cAdvisor.
      By default new options disable exporting rarely useful metrics
      and labels by cAdvisor. This helps reducing the load on Prometheus
      and cAdvisor itself.
      
      Change-Id: Id0144e8fa518e3236cb94ba2e3961fb455d36443
      c6259158
    • wu.chunyang's avatar
      Remove rally deployment · 30091096
      wu.chunyang authored
      Remove rally role as planned
      
      Change-Id: Ic898efe42b21b01c45d4621af2cf90ecd7afc398
      30091096
  15. Jun 15, 2021
  16. Jun 11, 2021
    • Matthias Runge's avatar
      Remove support for panko · ccf8cc5d
      Matthias Runge authored
      the project is deprecated and in the process of being removed
      from OpenStack upstream.
      
      Change-Id: I9d5ebed293a5fb25f4cd7daa473df152440e8b50
      ccf8cc5d
  17. Jun 10, 2021
    • Radosław Piliszek's avatar
      Disable docker's ip-forward when iptables disabled · 0fa4ee56
      Radosław Piliszek authored
      With the new default since Wallaby, starting Docker makes it
      enable forwarding and not filter it at all.
      This may pose a security risk and should be mitigated.
      
      Closes-Bug: #1931615
      Change-Id: I5129136c066489fdfaa4d93741c22e5010b7e89d
      0fa4ee56
  18. Jun 08, 2021
    • Mark Goddard's avatar
      Fix RabbitMQ restart ordering · 0cd5b027
      Mark Goddard authored
      The host list order seen during Ansible handlers may differ to the usual
      play host list order, due to race conditions in notifying handlers. This
      means that restart_services.yml for RabbitMQ may be included in a
      different order than the rabbitmq group, resulting in a node other than
      the 'first' being restarted first. This can cause some nodes to fail to
      join the cluster. The include_tasks loop was introduced in [1].
      
      This change fixes the issue by splitting the handler into two tasks, and
      restarting the first node before all others.
      
      [1] https://review.opendev.org/c/openstack/kolla-ansible/+/763137
      
      Change-Id: I1823301d5889589bfd48326ed7de03c6061ea5ba
      Closes-Bug: #1930293
      0cd5b027
  19. Jun 07, 2021
    • Maksim Malchuk's avatar
      Add forgotten 'Restart container' handler for swift · 5c19f9a5
      Maksim Malchuk authored
      
      Since I0474324b60a5f792ef5210ab336639edf7a8cd9e swift role uses the new
      service-cert-copy role introduced in the
      I6351147ddaff8b2ae629179a9bc3bae2ebac9519 but the swift role itself
      doesn't contain the handler used in the service-cert-copy. Right now,
      restarting the swift container isn't necessary, but the handler should
      exist. Also we should fix the name of the service used.
      
      Closes-Bug: #1931097
      Change-Id: I2d0615ce6914e1f875a2647c8a95b86dd17eeb22
      Signed-off-by: default avatarMaksim Malchuk <maksim.malchuk@gmail.com>
      5c19f9a5
    • John Garbutt's avatar
      Reduce RabbitMQ busy waiting, lowering CPU load · 70f6f8e4
      John Garbutt authored
      On machines with many cores, we were seeing excessive CPU load on systems
      that were not very busy. With the following Erlang VM argument we saw
      RabbitMQ CPU usage drop from about 150% to around 20%, on a system with
      40 hyperthreads.
      
          +S 2:2
      
      By default RabbitMQ starts N schedulers where N is the number of CPU
      cores, including hyper-threaded cores. This is fine when you assume all
      your CPUs are dedicated to RabbitMQ. Its not a good idea in a typical
      Kolla Ansible setup. Here we go for two scheduler threads.
      More details can be found here:
      https://www.rabbitmq.com/runtime.html#scheduling
      and here:
      https://erlang.org/doc/man/erl.html#emulator-flags
      
          +sbwt none
      
      This stops busy waiting of the scheduler, for more details see:
      https://www.rabbitmq.com/runtime.html#busy-waiting
      Newer versions of rabbit may need additional flags:
      "+sbwt none +sbwtdcpu none +sbwtdio none"
      But this patch should be back portable to older versions of RabbitMQ
      used in Train and Stein.
      
      Note that information on this tuning was found by looking at data from:
      rabbitmq-diagnostics runtime_thread_stats
      More details on that can be found here:
      https://www.rabbitmq.com/runtime.html#thread-stats
      
      Related-Bug: #1846467
      
      Change-Id: Iced014acee7e590c10848e73feca166f48b622dc
      70f6f8e4
    • John Garbutt's avatar
      Robustify fluentd output tag matching · e7ff199d
      John Garbutt authored
      We really want elasticsearch or monasca to catch all logs,
      to providd the required centrailsed logging.
      
      While these appears to make little material difference,
      it should make it harder for logs to not get caught by
      any of the outputs we have configured.
      
      TrivialFix
      
      Change-Id: I3bb74dcdc3cbe78cd1e1657f44e2a0af9d6508ef
      e7ff199d
  20. Jun 04, 2021
    • Mark Goddard's avatar
      baremetal: fix /etc/hosts generation when api_interface has dashes · 46bd0525
      Mark Goddard authored
      Interface names with dashes can cause problems in Ansible since dashes
      are replaced with underscores when referencing facts. In the baremetal
      role we reference the fact for api_interface without replacing dashes
      with underscores. This may result in host entries being omitted from
      /etc/hosts.
      
      This change fixes the issue.
      
      Change-Id: I667adc7d8a7dbd20dbfa293f389e02355f8275bb
      Related-Bug: #1927357
      46bd0525
  21. Jun 03, 2021
    • John Garbutt's avatar
      Fix parsing of infra.mariadb.xinetd logs · 7f1248fe
      John Garbutt authored
      Currently the logs tagged with infra.mariadb.xinetd flow into
      elasticsearch with no hostname or programname attach, thus making
      navigating the logs very hard.
      
      The quick fix is renaming the tag to infra.mariadb-xinetd, which is just
      enought to ensure the logs are processed correctly with the existing
      filters.
      
      TrivialFix
      
      Change-Id: Icd72206de7c1f701bdf35c8fb3b128ef2dbe29a8
      7f1248fe
    • John Garbutt's avatar
      Stop fluentd deprecation warnings of type vs @type · 0c7ba86e
      John Garbutt authored
      Currently when elasticsearch log output is enabled there are lots
      of warnings going into elasticsearch about type being deprecated
      and needing to move to @type. This change stops those warnings.
      
      TrivialFix
      
      Change-Id: Ideac1925cb764ad0d7d8416f56d5e4a993c6d8b6
      0c7ba86e
  22. Jun 02, 2021
    • Mark Goddard's avatar
      chrony: allow to remove the container · 84ac7b30
      Mark Goddard authored
      The chrony container is deprecated in Wallaby, and disabled by default.
      This change allows to remove the container if chrony is disabled.
      
      Change-Id: I1c4436072c2d47a95625e64b731edb473384b395
      84ac7b30
  23. May 30, 2021
  24. May 28, 2021
  25. May 26, 2021
  26. May 21, 2021
  27. May 19, 2021
Loading