實機練習

  1. 初使化一個 nfs 角色。
  2. 編輯 nfs 角色,任務如下:
    1. 安裝 nfs-utils 套件
    2. 設定開機啟動 nfs-server 服務,且現在啟動。
    3. 啟用 firewalld
    4. firewalld 服務開放 nfs, rpc-bind, mountd 等服務,開啟三個服務要使用 loop 迴圈。
        firewalld:
          service: "{{ item }}"
          permanent: yes
          state: enabled
          immediate: yes
        loop:
          - nfs
          - rpc-bind
          - mountd
      
    5. 建立分享目錄 /public,提示:file 模組範例。
      - name: Create a directory if it does not exist
        file:
          path: /etc/some_directory
          state: directory
          mode: '0755'
      
    6. 新增樣板 exports.j2,並複製到 /etc/exports。
      1. 樣板檔案 exports.j2 內容如下,其中分享網段 xxx.xxx.xxx.0 由變數 ansible_default_ipv4.network 取得。
        /public xxx.xxx.xxx.0/24(rw,sync)
        
      2. 目標位置:/etc/exports
      3. 複製樣板檔案後,必須重啟 nfs-server 服務才會生效,所以 nfs-server 服務的狀態要使用 "restarted",且 templates 模組也必須放在 nfs-server 重啟任務之前。
      showmount -e kvm11
      
  3. 建立 nfs.yml 腳本,對 dev 主機執行任務,要求如下:
    1. 使用 nfs 角色
    2. 完成任務後,showmount 查詢 dev 主機是否分享 /public 目錄?