Lab 000 - jazzwang/hive_labs GitHub Wiki
首先,我們需要架設一組 Hadoop 叢集。
這裡我挑選的工具是 Etu Virtual Appliance (EVA),因為它能簡單而快速地架設好一組 Hadoop 叢集(最多 1 Master + 5 Worker)。以下我們示範如何將 EVA 安裝在 Windows 環境中。
- 請先檢查 官方網站所列之系統需求
- 確認您要執行的硬體環境 CPU 是否支援虛擬化技術(Intel VT-x 或 AMD-V),並且至少 10GB 的系統記憶體 (一個 Master 節點和一個 Worker 節點的配置).
- 確認您的 Windows 環境是 64 位元作業系統 ( 32 位元作業系統即使安裝了 VirtualBox,仍將無法模擬 64 位元 )
- 安裝 VirtualBox 跟 VirtualBox Extension Pack
- 下載 Etu Virtual Appliance 的壓縮檔:整體大小約為 2.8 GB。
- 請將 Etu Virtual Appliance 2.0 版 另存新檔。
- 若您在 Windows 平台下無法解壓縮 .tar.gz (.tgz) 格式,請一併下載 7-zip
- 請將 7-zip 9.20 版 另存新檔。
- 使用 7-zip 將 Etu_Virtual_Appliance_2.0.tgz 解壓縮
- 後續的步驟,請參考 官方網站的步驟
- 請確定在 Windows 環境下,VirtualBox 的虛擬網卡是否正確完成設定,並完成 VM 檔案的匯入
- 請依 官方網站的步驟,依序啟動 Master Node、同意授權、上傳授權檔案、設定 Etu Virtual Appliance、檢視設定、登入 Etu Virtual Appliance、啟動 Worker Node、建立使用者帳號。以下,我們將假定您設定的使用者帳號為 user。
其次,我們需要一個 SSH Client,用來連上 Etu Virtual Appliance (EVA)
這裡我挑選的工具是 PieTTY
- 下載 PieTTY 免安裝版本
- 您可以至以下網址下載最新版本: http://ntu.csie.org/~piaip/pietty/
- 或者按下滑鼠右鍵,將 [0.3.27 版] (http://ntu.csie.org/~piaip/pietty/archive/pietty0327.exe) 另存新檔,儲存於桌面。
- 嘗試連線至 Etu Virtual Appliance (EVA) 的 Master 虛擬機器(若您有根據設定步驟正確設定,則 IP 位址應為 192.168.70.10)
- 由於後續我們將使用到網際網路進行 SQL Server 的資料匯入與匯出,也將從 github.com 下載範例資料集,因此請檢驗是否可以正常連線網際網路。
- 請輸入指令:
ping -c 1 github.com
接著,我們需要下載一個可以連結微軟 SQL Server,以及 MySQL Server 的資料庫用戶端程式。
這裡我挑選的工具是 HeidiSQL
- 下載 HeidiSQL Portable 版本
- 您可以至以下網址下載最新版本: http://www.heidisql.com/download.php
- 或者按下滑鼠右鍵,將 HeidiSQL 8.2 可攜版 另存新檔,儲存於桌面。
- 將下載的 zip 壓縮檔,解壓縮到桌面。
- 執行 heidisql.exe 執行檔,並進行以下兩組資料庫的設定。
- 讓我們先來測試 Microsoft SQL Server 的連線是否正常。
- 上圖中,請依講師分配之學員帳號密碼,修改 userXX (XX 為數字)
- 接著,讓我們建立一個 Microsoft SQL Server 的示範資料表 MSSQL_DATA。
- 請先輸入以下 SQL 語法,並按下「查詢」按鈕,產生 MSSQL_DATA 資料表
CREATE TABLE MSSQL_DATA (id int primary key, name varchar(50)); INSERT INTO MSSQL_DATA VALUES (1, 'Hello'); INSERT INTO MSSQL_DATA VALUES (2, 'World');
- 讓我們先來測試 MySQL Server 的連線是否正常。
- 上圖中,請依講師分配之學員帳號密碼,修改 userXX (XX 為數字)
- 接著,讓我們建立一個 MySQL Server 的示範資料表 mysql_data。
- 請先輸入以下 SQL 語法,並按下「查詢」按鈕,產生 mysql_data 資料表
CREATE TABLE mysql_data (id int primary key, name varchar(50)); INSERT INTO mysql_data VALUES (1, 'Hello'); INSERT INTO mysql_data VALUES (2, 'World');