Alluxio 安裝與配置


一、概述

Alluxio, formerly Tachyon, enables any application to interact with any data from any storage system at memory speed.
From http://www.alluxio.org/

Alluxio,原名為 Tachyon,使任何應用以內存級速度進行文件系統上的數據交換。

二、安裝與配置

2.1 解壓

tar -xzf alluxio-1.4.0-bin.tar.gz
cd alluxio-1.4.0

2.2 配置

從模板文件中創建 conf/alluxio-env.sh ,也可通過命令配置:

./bin/alluxio bootstrapConf localhost

三、運行

3.1 單機啟動 Alluxio

3.1.1 格式化

格式化 Alluxio 為啟動 Alluxio 做准備。如下命令會格式化Alluxio的日志和worker存儲目錄,以便接下來啟動master和worker。

./bin/alluxio format

3.1.2 本地啟動

Alluxio 默認配置成在 localhost 啟動 master 和 worker 。使用如下命令在 localhost 啟動 Alluxio:

./bin/alluxio-start.sh local

3.1.3 驗證啟動

http://localhost:19999 --》 查看 Alluxio master 的運行狀態
http://localhost:30000 --》 查看 Alluxio worker 的運行狀態

或者,在運行命令 jps,查看當前 java 進程中 AlluxioMaster、AlluxioWorker 信息。

3.2 集群運行 Alluxio

3.2.1 集群內節點的配置

為使集群的 master 與 worker 方便溝通,需要對 ssh 進行配置。

首先,在將要運行 master 的節點上通過如下命令生成相應公私鑰。

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

其次,將此處生成的 authorized_keys 分發到集群的 workers 中,放在 worker的 ~/.ssh/authorized_keys

然后,修改好所有節點的 /etc/hosts 文件,為各個節點取別名,方便溝通。

再者,修改 master 的配置文件 ./conf/alluxio-env.sh ,有三個關鍵點:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 # java 的安裝目錄
export ALLUXIO_HOME=/root/alluxio # alluxio 的安裝目錄
export ALLUXIO_MASTER_HOSTNAME=master # 我的 host 文件中有一條記錄,“[master節點的ip] master”記錄

隨后,修改 master 的配置文件 ./conf/workers :(workers 的別名,需要在 host 文件上配置,才能被解析)

最后,將 master 節點上的配置分發到各個 worker 節點上。使用如下命令

./bin/alluxio copyDir

./bin/alluxio copyDir ./conf/workers 即可將該文件分發到各個節點的相同目錄下。需要保持一致的文件有:./conf/workers全部配置,./conf/alluxio-env.sh中的部分配置

更一般的,你甚至可以無需在 worker 節點上安裝 alluxio ,而是通過 ./bin/alluxio copyDir . ,將本節點上的 alluxio 目錄分發到各個節點上。

3.2.2 在集群內運行

上述配置完成后,即可在 master 上通過命令 ./bin/alluxio format./bin/alluxio-start.sh all Mount 在集群內運行 Alluxio。

同樣的,你可以通過 jps 去檢查運行狀態。

  • master 上:出現 proxy、master
  • worker 上:出現 proxy、worker

使用./bin/alluxio-start.sh all 停止運行 Alluxio。

3.2.3 錯誤

在集群內運行的時候,可能會出現 worker 啟動不了的問題。表現為 master 上的 AlluxioMaster、AlluxioProxy 正在運行,且通過 stop 命令無法關閉。

解決:我是通過查找到這兩個命令運行的父進程 id ,然后將父進程殺掉,再按 3.2.2 的命令。

3.3 文件系統操作

相關命令見:http://www.alluxio.org/docs/1.4/cn/Command-Line-Interface.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM