BROADSoftware.hdfs_modules
hdfs_modules
このAnsibleロールは、HDFS(Hadoop分散ファイルシステム)上のファイルやディレクトリを操作するためのモジュールのセットを提供します。
hdfs_file: Ansibleのfiles/fileモジュールと同等ですが、HDFSに関するものです。ドキュメントはこちらです。
hdfs_info: Ansibleのfiles/infoモジュールと同等ですが、HDFSに関するものです。ドキュメントはこちらです。
hdfs_cmd: Ansibleのcommands/commandモジュールと同等ですが、HDFSに関するものです。ドキュメントはこちらです。
要件
これらのモジュールは、リモートノードにpython-requestsパッケージがインストールされている必要があります。
Kerberosで保護されたクラスターにアクセスするには、python-requests-kerberosも必要です。
例のプレイブック
- hosts: edge_node1
roles:
- hdfs_modules
tasks:
# ディレクトリが存在しない場合は作成します。
# すでに存在する場合は、所有者、グループ、モードを調整します。
- hdfs_file: hdfs_path=/user/joe/some_directory owner=joe group=users mode=0755 state=directory
# 対象ホストのファイルシステムからHDFSにファイルをコピーする方法
- hdfs_cmd: cmd="sudo -u joe hdfs dfs -put /etc/services /user/joe/services" hdfs_creates=/user/joe/passwd1 uses_shell=True
# ファイルの所有者、グループ、モードを調整します
- hdfs_file: hdfs_path=/user/joe/passwd1 owner=joe group=users mode=0644
# ただし、このコピーにはhdfs_putを使用するのが良いでしょう
- hdfs_put: src=/etc/services hdfs_dest=/usr/joe/services owner=joe group=users mode=0644
# フォルダーも再帰的にコピーできます
- hdfs_put: src=/etc/hadoop/conf/ hdfs_dest=/usr/joe/some_directory hdfs_user=joe
ライセンス
GNU GPL
詳細なテキストはこちらをクリックしてください。