Skip to content
Snippets Groups Projects
  1. Sep 30, 2021
  2. Sep 07, 2021
    • Michał Nasiadka's avatar
      toolbox: Allow different users logging to ansible.log · 24e6a6ce
      Michał Nasiadka authored
      Currently only operations done with default kolla_toolbox user are logged
      to /var/log/kolla/ansible.log.
      
      In order to fix logging, permissions to ansible.log must allow writing
      for other users in kolla group - and then a separate patch will follow
      to make custom ansible.cfg file usable by other toolbox users.
      
      Partial-Bug: #1942846
      Change-Id: I1be60ac7647b1a838e97f05f15ba5f0e39e8ae3c
      24e6a6ce
  3. Aug 19, 2021
  4. Aug 13, 2021
  5. Aug 10, 2021
    • Radosław Piliszek's avatar
      Refactor and optimise image pulling · 9ff2ecb0
      Radosław Piliszek authored
      We get a nice optimisation by using a filtered loop instead
      of task skipping per service with 'when'.
      
      Partially-Implements: blueprint performance-improvements
      Change-Id: I8f68100870ab90cb2d6b68a66a4c97df9ea4ff52
      9ff2ecb0
  6. Aug 09, 2021
  7. Jul 07, 2021
    • wu.chunyang's avatar
      Remove tempest role · 52619984
      wu.chunyang authored
      Remove tempest role as planned
      
      Change-Id: If3cf073e88c83f670c867a49afe48845f9e81008
      52619984
  8. Jun 23, 2021
    • 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
  9. Jun 16, 2021
  10. 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
  11. Jun 07, 2021
    • 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
  12. Jun 04, 2021
  13. 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
  14. May 30, 2021
  15. May 27, 2021
    • Scott Shambarger's avatar
      fluentd: Fix check for external elasticsearch · 283b0dec
      Scott Shambarger authored
      When enable_elasticsearch is False, and kolla_internal_fqdn is set
      and elasticsearch_address is the default, fluentd is still enabling
      output to elasticsearch.
      
      elasticsearch_address defaults to kolla_internal_fqdn, but the
      check to enable logging to an "external" elasticsearch host
      compares with kolla_internal_vip_address (fqdn != vip address).
      
      This patch fixes the comparison to use the kolla_internal_fqdn.
      
      Closes-Bug: #1927880
      Change-Id: If23a6b1273c2639d1296becc9d222546d52f63ac
      283b0dec
  16. May 10, 2021
    • John Garbutt's avatar
      Use @type instead of type · fe664774
      John Garbutt authored
      This is a follow up on the change with the following ID:
      
      I337f42e174393f68b43e876ef075a74c887a5314
      
      TrivialFix
      
      Change-Id: Ibb67811d7b086ef9ef4c695ae589171af0c4d657
      fe664774
  17. Apr 08, 2021
  18. Mar 25, 2021
  19. Mar 18, 2021
  20. Mar 07, 2021
  21. Mar 04, 2021
    • Doug Szumski's avatar
      Support bypassing Monasca Log API for control plane logs · ca1a80ab
      Doug Szumski authored
      This change allows a user to forward control plane logs
      directly to Elasticsearch from Fluentd, rather than via
      the Monasca Log API when Monasca is enabled. The Monasca
      Log API can continue to handle tenant logs.
      
      For many use cases this is simpler, reduces resource
      consumption and helps to decouple control plane logging
      services from tenant logging services.
      
      It may not always be desired, so is optional and off by
      default.
      
      Change-Id: I195e8e4b73ca8f573737355908eb30a3ef13b0d6
      ca1a80ab
  22. Jan 27, 2021
    • Doug Szumski's avatar
      Fix Barbican API log config · 1ff4e58d
      Doug Szumski authored
      There are a few issues fixed here:
      
      - The Barbican API service doesn't set a log file, so all the Barbican API
        service logs go to loadwsgi.py.log by default.
      - The logs in loadwsgi.py.log are not ingested properly by Fluentd.
      - uWSGI logs go to barbican-api.log. This would normally be used as the log
        file for the Barbican API service logs.
      
      This patch makes the following changes to address the above issues:
      
      - All uWSGI logs (from the Emperor and Vassals) go to barbican_api_uwsgi_access.log
        Although these logs aren't strictly all access logs, this follows the existing
        pattern for WSGI logs.
      - The Barbican API service logs are written to barbican-api.log instead of
        loadwsgi.py.log. This follows the pattern used by other OpenStack services.
      - Fluentd is configured to parse the Barbican API service logs as it would with
        other OpenStack Python services.
      
      Change-Id: I6d03fa8c81c52b6f061514a836bbd15bb6639aaf
      Closes-Bug: #1891343
      1ff4e58d
  23. Dec 22, 2020
  24. Dec 16, 2020
  25. Dec 14, 2020
    • Mark Goddard's avatar
      Revert "Performance: Use import_tasks in the main plays" · db4fc85c
      Mark Goddard authored
      This reverts commit 9cae59be.
      
      Reason for revert: This patch was found to introduce issues with fluentd customisation. The underlying issue is not currently fully understood, but could be a sign of other obscure issues.
      
      Change-Id: Ia4859c23d85699621a3b734d6cedb70225576dfc
      Closes-Bug: #1906288
      db4fc85c
  26. Oct 27, 2020
    • Radosław Piliszek's avatar
      Performance: Use import_tasks in the main plays · 9cae59be
      Radosław Piliszek authored
      Main plays are action-redirect-stubs, ideal for import_tasks.
      
      This avoids 'include' penalty and makes logs/ara look nicer.
      
      Fixes haproxy and rabbitmq not to check the host group as well.
      
      Change-Id: I46136fc40b815e341befff80b54a91ef431eabc0
      Partially-Implements: blueprint performance-improvements
      9cae59be
  27. Oct 12, 2020
    • Radosław Piliszek's avatar
      Performance: optimize genconfig · 3411b9e4
      Radosław Piliszek authored
      Config plays do not need to check containers. This avoids skipping
      tasks during the genconfig action.
      
      Ironic and Glance rolling upgrades are handled specially.
      
      Swift and Bifrost do not use the handlers at all.
      
      Partially-Implements: blueprint performance-improvements
      Change-Id: I140bf71d62e8f0932c96270d1f08940a5ba4542a
      3411b9e4
    • James Kirsch's avatar
      Add support for encrypting backend Neutron API Server · 93ad57f4
      James Kirsch authored
      Add TLS support for backend Neutron API Server communication using
      HAProxy to perform TLS termination. When used in conjunction with
      enabling TLS for service API endpoints, network communication will be
      encrypted end to end, from client through HAProxy to the Neutron
      service.
      
      Change-Id: Ib333a1f1bd12491df72a9e52d961161210e2d330
      Partially-Implements: blueprint add-ssl-internal-network
      93ad57f4
  28. Sep 22, 2020
    • Mark Goddard's avatar
      Fix common role when using external mariadb · 68820133
      Mark Goddard authored
      If the common role is executed against a set of hosts that are not all
      in the fluentd group, the run_once tasks that find customisations may be
      skipped. This causes a later failure when accessing the registered
      variables for those tasks.
      
      This issue was raised on the mailing list:
      http://lists.openstack.org/pipermail/openstack-discuss/2020-September/016932.html
      
      This issue only affects the master branch, due to addition of groups
      for the common role in I6a4676bf6efeebc61383ec7a406db07c7a868b2a.
      
      This change fixes the issue by always running the find tasks, if fluentd
      is enabled.
      
      Change-Id: I559c4b94d18c7f36d43e1d88629ed44668abf859
      68820133
  29. Sep 18, 2020
  30. Aug 28, 2020
  31. 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
  32. Aug 10, 2020
    • Mark Goddard's avatar
      Mount /etc/timezone based on host OS · 146b00ef
      Mark Goddard authored
      Previously we mounted /etc/timezone if the kolla_base_distro is debian
      or ubuntu. This would fail prechecks if debian or ubuntu images were
      deployed on CentOS. While this is not a supported combination, for
      correctness we should fix the condition to reference the host OS rather
      than the container OS, since that is where the /etc/timezone file is
      located.
      
      Change-Id: Ifc252ae793e6974356fcdca810b373f362d24ba5
      Closes-Bug: #1882553
      146b00ef
  33. Aug 06, 2020
  34. Jul 28, 2020
    • Mark Goddard's avatar
      Performance: use a single config file for fluentd · 56a07702
      Mark Goddard authored
      Currently we generate multiple fluentd configuration files for inputs,
      filters, formatters and outputs.
      These are then included from the main td-agent.conf configuration file.
      With a large number of hosts, this can take a long time to template.
      
      Benchmarking of templating is available at [1].
      
      This change switches to a single fluentd configuration file, with the
      include done locally. For the default template files included with Kolla
      Ansible we use Jinja includes, but this does not work with templates in
      a different directory. We therefore use the Ansible template lookup
      plugin, which has a slightly higher overhead than a jinja include, but
      far lower than generating multiple templates. This should drastically
      improve the performance of this task.
      
      [1] https://github.com/stackhpc/ansible-scaling/blob/master/doc/template.md
      
      Partially-Implements: blueprint performance-improvements
      
      Change-Id: Ia8623be0aa861fea3e54d2c9e1c971dfd8e3afa9
      56a07702
    • Mark Goddard's avatar
      Performance: use a single config file for logrotate · f329af7d
      Mark Goddard authored
      Currently we generate a logrotate configuration file for each enabled
      service. These are then included from a logrotate.d directory. With a
      large number of hosts, this can take a long time to template.
      
      Benchmarking of templating is available at [1].
      
      This change switches to a single logrotate configuration file for all
      services, with the include done locally using jinja. This should
      drastically improve the performance of this task.
      
      [1] https://github.com/stackhpc/ansible-scaling/blob/master/doc/template.md
      
      Partially-Implements: blueprint performance-improvements
      
      Change-Id: I39cfa70bef6560f615cad516c43aaef6a523b964
      f329af7d
Loading