|
460 | 460 | mode: "0644" |
461 | 461 | notify: Restart waagent |
462 | 462 |
|
| 463 | + - name: Install DOCA host RPM and minimal DOCA packages (RHEL 9 x86_64) |
| 464 | + when: |
| 465 | + - not ((__hpc_server_is_ostree | d(false)) | bool) |
| 466 | + - __hpc_is_rh_distro |
| 467 | + block: |
| 468 | + - name: Install DOCA host repo RPM (adds doca repositories) |
| 469 | + when: ansible_facts.packages['doca-host'] is not defined |
| 470 | + block: |
| 471 | + - name: Create a temporary directory for DOCA host RPM download |
| 472 | + tempfile: |
| 473 | + state: directory |
| 474 | + prefix: doca_host_rpm_ |
| 475 | + register: __hpc_doca_rpm_tempdir |
| 476 | + |
| 477 | + - name: Download DOCA host RPM |
| 478 | + get_url: |
| 479 | + url: "{{ __hpc_doca_host_rpm_url }}" |
| 480 | + dest: "{{ __hpc_doca_rpm_tempdir.path }}/{{ __hpc_doca_host_rpm_url | basename }}" |
| 481 | + mode: "0644" |
| 482 | + |
| 483 | + - name: Import DOCA host RPM GPG key |
| 484 | + rpm_key: |
| 485 | + key: "{{ __hpc_doca_host_rpm_gpg_key_url }}" |
| 486 | + state: present |
| 487 | + |
| 488 | + - name: Install DOCA host RPM |
| 489 | + package: |
| 490 | + name: "{{ __hpc_doca_rpm_tempdir.path }}/{{ __hpc_doca_host_rpm_url | basename }}" |
| 491 | + state: present |
| 492 | + use: dnf |
| 493 | + register: __hpc_doca_host_rpm_install |
| 494 | + notify: Clean dnf metadata |
| 495 | + |
| 496 | + - name: Remove temporary DOCA host RPM download directory |
| 497 | + file: |
| 498 | + path: "{{ __hpc_doca_rpm_tempdir.path }}" |
| 499 | + state: absent |
| 500 | + changed_when: false |
| 501 | + |
| 502 | + - name: Install minimal DOCA packages for RDMA |
| 503 | + package: |
| 504 | + name: "{{ __hpc_doca_packages }}" |
| 505 | + state: present |
| 506 | + use: dnf |
| 507 | + register: __hpc_doca_packages_install |
| 508 | + until: __hpc_doca_packages_install is success |
| 509 | + |
| 510 | + - name: Configure Azure persistent RDMA naming (systemd + udev) |
| 511 | + when: |
| 512 | + - hpc_enable_azure_persistent_rdma_naming |
| 513 | + - ansible_facts['system_vendor'] == 'Microsoft Corporation' |
| 514 | + block: |
| 515 | + - name: Install Azure persistent RDMA naming script |
| 516 | + template: |
| 517 | + src: rdma/azure_persistent_rdma_naming.sh.j2 |
| 518 | + dest: /usr/sbin/azure_persistent_rdma_naming.sh |
| 519 | + owner: root |
| 520 | + group: root |
| 521 | + mode: "0755" |
| 522 | + |
| 523 | + - name: Install systemd service for Azure persistent RDMA naming |
| 524 | + template: |
| 525 | + src: rdma/azure_persistent_rdma_naming.service.j2 |
| 526 | + dest: /etc/systemd/system/azure_persistent_rdma_naming.service |
| 527 | + owner: root |
| 528 | + group: root |
| 529 | + mode: "0644" |
| 530 | + register: __hpc_azure_persistent_rdma_naming_unit |
| 531 | + |
| 532 | + - name: Install udev rule to trigger persistent naming on IB device changes |
| 533 | + template: |
| 534 | + src: rdma/99-azure-persistent-rdma-naming.rules.j2 |
| 535 | + dest: /etc/udev/rules.d/99-azure-persistent-rdma-naming.rules |
| 536 | + owner: root |
| 537 | + group: root |
| 538 | + mode: "0644" |
| 539 | + notify: |
| 540 | + - Reload udev |
| 541 | + - Trigger udev for infiniband |
| 542 | + |
| 543 | + - name: Enable and start Azure persistent RDMA naming service |
| 544 | + systemd: |
| 545 | + name: azure_persistent_rdma_naming.service |
| 546 | + enabled: true |
| 547 | + state: started |
| 548 | + daemon_reload: "{{ __hpc_azure_persistent_rdma_naming_unit.changed | d(false) }}" |
| 549 | + |
| 550 | + - name: Install Azure persistent RDMA naming monitor script |
| 551 | + template: |
| 552 | + src: rdma/azure_persistent_rdma_naming_monitor.sh.j2 |
| 553 | + dest: /usr/sbin/azure_persistent_rdma_naming_monitor.sh |
| 554 | + owner: root |
| 555 | + group: root |
| 556 | + mode: "0755" |
| 557 | + |
| 558 | + - name: Install systemd service for Azure persistent RDMA naming monitor |
| 559 | + template: |
| 560 | + src: rdma/azure_persistent_rdma_naming_monitor.service.j2 |
| 561 | + dest: /etc/systemd/system/azure_persistent_rdma_naming_monitor.service |
| 562 | + owner: root |
| 563 | + group: root |
| 564 | + mode: "0644" |
| 565 | + register: __hpc_azure_persistent_rdma_naming_monitor_unit |
| 566 | + |
| 567 | + - name: Enable and start Azure persistent RDMA naming monitor service |
| 568 | + systemd: |
| 569 | + name: azure_persistent_rdma_naming_monitor.service |
| 570 | + enabled: true |
| 571 | + state: started |
| 572 | + daemon_reload: "{{ __hpc_azure_persistent_rdma_naming_monitor_unit.changed | d(false) }}" |
| 573 | + |
463 | 574 | - name: Install common OpenMPI packages |
464 | 575 | when: hpc_install_system_openmpi or hpc_build_openmpi_w_nvidia_gpu_support |
465 | 576 | package: |
|
0 commit comments