Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downloading external resources degrades performance #8948

Open
pemsith opened this issue Jan 5, 2025 · 0 comments
Open

Downloading external resources degrades performance #8948

pemsith opened this issue Jan 5, 2025 · 0 comments

Comments

@pemsith
Copy link

pemsith commented Jan 5, 2025

Description
Tasks that directly download resources from external sources during runtime (e.g., get_url) causes high memory usage. This issue is particularly noticeable in environments with large-scale deployments or limited system resources. There are multiple instances in different files that we are reporting as part of this bug that we would like to get resolved.

ansible/configs/hacluster-breakfix1-pntae/node-install.yml
- name: copying binary
get_url:
url: "{{courseurl}}/{{coursecode}}/breakfix1/mk"
dest: /usr/local/bin/
mode: '0755'

    - name: Pull mysql config file
      get_url:
       url: "{{courseurl}}/{{coursecode}}/breakfix1/my.cnf"
       dest: /etc/my.cnf

    - name: Pull http config file
      get_url:
       url: "{{courseurl}}/{{coursecode}}/breakfix1/httpd.conf"
       dest: /etc/httpd/conf/httpd.conf

    - name: copying binary
      get_url:
        url: "{{courseurl}}/{{coursecode}}/breakfix1/break-node.sh"
        dest: /usr/local/bin/
        mode: '0755'

    - name: c-opying binary
      get_url:
        url: "{{courseurl}}/{{coursecode}}/breakfix1/break-log.sh"
        dest: /usr/local/bin/
        mode: '0755' 

ansible/configs/hacluster-breakfix1-pntae/iscsiserver.yml
- name: iscsi target server configuration. Get the script
get_url:
url: "{{courseurl}}/{{coursecode}}/breakfix1/target-iscsi-server.sh"
dest: /usr/local/bin/
mode: '0755'

ansible/configs/ansible-automation-platform/software.yml
- name: Download Manifest for Controller
get_url:
url: "{{ controller_manifest.url }}"
dest: /tmp

ansible/configs/ansible-multi-node/setup-hands-on-aap2.yml
- name: Install user resources
get_url:
url: "{{ __resource.url }}"

ansible/configs/osp-stf/post_software.yml
- name: Get cirros images
get_url:
url: "http://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img"

Expected behavior
The playbook should avoid fetching resources directly from external URLs to prevent high memory usage. Instead:

  • Pre-fetch the required resources to a control machine or staging area ahead of deployment.
  • Use local copies or mirrors for fetching files.
  • This approach would reduce memory usage and improve the performance and reliability of deployments.

Versions (please complete the following information):

  • OS - centos 9
  • Ansible core 2.15.8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant