copy模塊與fetch模塊

copy:將本地機器上的文件拷貝到遠程機器node

fetch:將遠程機器上的文件拷貝到本地機器docker

 

[root@localhost zabbix]# ansible-doc -s copy
- name: Copies files to remote locations
  copy:
      attributes:            # 文件或目錄應該具備的屬性。要得到受支持的標誌,請查看目標系統上的「chattr」手冊頁。這個字符串應該包含與「lsattr」顯示的屬性順序相同的屬性。
      backup:                # 建立一個包含時間戳信息的備份文件,這樣,若是您以某種方式錯誤地處理了原始文件,就能夠從新得到原始文件。
      content:               # 當使用替換的「src」時,將文件的內容直接設置爲指定的值。對於任何高級的或格式化的內容,也能夠查看模板模塊
      decrypt:               # 此選項使用vault控制源文件的自動解密
      dest:                  # (必選)文件複製到的遠程絕對路徑。若是「src」是一個目錄,那麼這個目錄也必須是一個目錄。若是' dest'是一個不存在的路徑,而且若是' dest'以"/"結尾,或者' src'是一個目錄,則建立' dest'。
                   若是「src」和「dest」是文件,則不會建立「dest」的父目錄:若是任務不存在,則會失敗。 directory_mode: # 當執行遞歸複製時,爲目錄設置模式。若是沒有設置,咱們將使用系統默認值。該模式僅在新建立的目錄上設置,不會影響已經存在的目錄。 follow: # 此標誌指示,若是目標文件系統連接存在,則應遵循它們。 force: # 默認值是「yes」,當內容與源文件不一樣時,它將替換遠程文件。若是「不」,則只有在目標不存在時纔會傳輸文件。 group: # 應該擁有文件/目錄的組的名稱,將被提供給「chown」。 local_follow: # 此標誌指示應遵循源樹中的文件系統連接(若是存在的話)。 mode: # 模式文件或目錄應該是。對於那些習慣於「/usr/bin/chmod」的用戶,請記住模式其實是八進制數(好比0644)。去掉前導零可能會產生意想不到的結果。從1.8版開始,模式能夠指定爲符號模式(例如,' u+rwx'或' u=rw,g=r,o=r')。 owner: # 應該擁有該文件/目錄的用戶名,該用戶名將被提供給「chown」。 remote_src: # 若是「否」,它將在原始/主機器上搜索「src」。若是「是」,它將轉到「src」的遠程/目標機器。默認設置是「不」。目前' remote_src'不支持遞歸複製。 selevel: # 級別SELinux文件上下文的一部分。這是MLS/MCS屬性,有時稱爲「range」。' _default'功能與' seuser'功能相同。 serole: # 做爲SELinux文件上下文的角色部分,' _default'功能與' seuser'功能相同。 setype: # 輸入SELinux文件上下文的一部分,' _default'功能與' seuser'功能相同。 seuser: # SELinux文件上下文的用戶部分。將默認爲系統策略(若是適用)。若是設置爲「_default」,它將使用策略的「user」部分(若是可用)。 src: # 要複製到遠程服務器的文件的本地路徑;能夠是絕對的,也能夠是相對的。若是path是一個目錄,則遞歸複製它。
                   在本例中,若是path以「/」結尾,則只將該目錄中的內容複製到目的地。不然,若是沒有以「/」結尾,則複製包含全部內容的目錄自己。這種行爲相似於Rsync。 unsafe_writes: # 一般,此模塊使用原子操做來防止數據損壞或從目標文件中讀取不一致的數據,有時系統配置或破壞的方式就是爲了防止這種狀況發生。docker掛載文件就是一個例子,它們不能自動更新,只能以不安全的方式進行更新。
                   這個布爾值選項容許ansible返回到不安全的方法來更新那些你沒有其餘選擇的狀況下的文件。請注意,這取決於競爭條件,並可能致使數據損壞。 validate: # 在複製到適當位置以前要運行的驗證命令。要驗證的文件的路徑經過'%s'傳遞,該路徑必須以下面的示例所示。該命令被安全地傳遞,所以shell特性(如擴展和管道)將沒法工做。

  

[root@localhost zabbix]# ansible-doc -s fetch
- name: Fetches a file from remote nodes
  fetch:
      dest:                  # (必需的)文件保存到的目錄。例如,若是「dest」目錄是「/backup」,那麼主機「host.example.com」上名爲「/etc/profile」的「src」文件將被保存到「/backup/host.example.com/etc/ profile」中。
      fail_on_missing:       # 當設置爲「yes」時,若是因爲任何緣由沒法讀取遠程文件,任務將失敗。在ansibl -2.4以前,只有在源文件丟失時纔會設置此選項。在ansibl -2.4中,默認值更改成「yes」。
      flat:                  # 容許您覆蓋將主機名/路徑/附加到目標文件的默認行爲。若是dest以'/'結尾,它將使用源文件的基本名稱,相似於複製模塊。顯然,只有當文件名是唯一的時,這纔有用。
      src:                   # (必需的)遠程系統上要獲取的文件。這「必須」是一個文件,而不是一個目錄。在之後的版本中可能會支持遞歸抓取。
      validate_checksum:     # 在獲取文件以後,驗證源和目標校驗和是否匹配。
相關文章
相關標籤/搜索