微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ansible 将远程 nfs 共享挂载到运行 ansible playbook 的 localhost 服务器

如何解决ansible 将远程 nfs 共享挂载到运行 ansible playbook 的 localhost 服务器

运行 ansible.posix.mount 时,会创建到 src 的 ssh 连接,然后在所述服务器上创建路径目录。 我希望能够在运行 ansible playbook 的机器上本地从远程服务器挂载 nfs 共享。

我知道下面我的剧本中的第二个任务是在“nfs-server”下我的清单中的任何主机上执行所述任务,但是我需要包含该主机,因为它是我需要指向挂载的目标 ip 变量分享于。我不想将 IP 地址目标添加到我的 settings.yml,如果可能,我宁愿通过清单文件进行迭代。

我错过了什么?

这是我的剧本:

- name: Create directory
  hosts: localhost
  gather_facts: False

  tasks:
    - name: Include vars
      include_vars:
          file: settings.yaml
          name: settings

    - name: Create local directory "nfs-ansible"
      file:
        path: ./nfs-ansible
        state: directory
      delegate_to: localhost

- name: Mount nfs share to localhost
  hosts: nfs-server
  gather_facts: False
  become: yes

  tasks:
    - name: Include idrac vars
      include_vars:
          file: settings.yaml
          name: settings

    - name: Mount share from nfs-server
      ansible.posix.mount:
        src: "{{ hostvars[inventory_hostname].ipaddress }}:/nfs-share"
        path: ./nfs-ansible
        state: mounted
        fstype: nfs

解决方法

从你的问题中我可以看出,你实际上并不想运行nfs-server 组,你只想使用它的 ipaddress 主机变量来挂载当地。如果这种理解是正确的:

- name: Create directory
  hosts: localhost
  gather_facts: False
  tasks:
    - name: Include vars
      include_vars:
          file: settings.yaml
          name: settings

    - name: Create local directory "nfs-ansible"
      file:
        path: ./nfs-ansible
        state: directory
      # delegate to is redundant in a playbook targeting "localhost" to begin with
      # delegate_to: localhost

    - name: Mount share from nfs-server
      become: yes
      ansible.posix.mount:
        src: "{{ hostvars[nfs_server0].ipaddress }}:/nfs-share"
        path: ./nfs-ansible
        state: mounted
        fstype: nfs
      vars:
        nfs_server0: '{{ groups["nfs-server"] | first }}'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。