介紹
根據您的用例中,您可能想要使用這兩個碼頭工人(DCS)和容器服務磚回購(AWS|Azure|GCP)在同一時間。DCS不使用默認磚回購的,但是您可以使用一個定製的init腳本使用。
如果您還沒有安裝一個init腳本配置DCS與磚回購您可能會看到一條錯誤消息當你試圖啟動集群。這種情況當底層文件係統訪問。
您可能會看到下麵的錯誤而使用回購沒有init腳本:
py4j。Python Py4JException:異常長大的代理。返回消息:回溯(最近的電話最後):文件“/磚/火花/ python / lib / py4j-0.10.9-src.zip / py4j / java_gateway。py”, 2442行,在_call_proxy return_value = getattr(自我。池(obj_id)方法)(* params)文件“/ /磚/ python_shell /腳本PythonShellImpl.py“935行,initStartingDirectory os.chdir(目錄)FileNotFoundError: [Errno 2]沒有這樣的文件或目錄:' / Workspace /回購/ <用戶名> / hello_world '
指令
您可以使用本文中的示例init腳本DCS與磚回購。
這保證了init腳本goofy-dbr過程是正確地運行,確保文件係統仍然可訪問。的goofy-dbr過程是一個磚內部的叉高飛。磚的goofy-dbr增加了對Azure的支持數據存儲(ADLS)和Azure Blob存儲湖高飛,以及確保高飛可以運行在磚集群。
創建初始化腳本
- 使用工作區文件瀏覽器創建一個新文件(AWS|Azure|GCP在您的主目錄。叫它repos.sh。
- 打開repos.sh文件。
- 複製和粘貼這個init腳本repos.sh。
# !/bin/bash設置- o xtrace源/磚/ / conf /火花spark-env.sh出口WSFS_ENABLE_DEBUG_LOG mkdir - p /工作區mkdir - p /磚/數據/日誌/ nohup /磚/火花/腳本/ fuse / wsf / Workspace > / logs / wsf /磚/數據。日誌2 > & 1 & WAIT_TIMEOUT = 5 CHECK_INTERVAL = 0.1 WAIT_UNTIL = $(((日期+ % s) + WAIT_TIMEOUT美元)),直到掛載點q /工作區| |[[(日期+ % s)通用電氣WAIT_UNTIL美元]];睡眠CHECK_INTERVAL美元做了mkdir - p / dbfs nohup /磚/火花/腳本/ fuse / goofys-dbr - f - o allow_other \——文件模式= 0777 dir-mode = 0777 - o bg - 120年代http超時\ /:/ dbfs > /磚/數據/日誌/ dbfs_fuse_stderr 2 > & 1 & WAIT_UNTIL = $(((日期+ % s) + WAIT_TIMEOUT美元)),直到掛載點q / dbfs | |[[(日期+ % s)通用電氣WAIT_UNTIL美元]];睡眠CHECK_INTERVAL美元做什麼
- 關閉該文件。
配置初始化腳本
按照文檔配置一個集群級init腳本(AWS|Azure|GCP)作為一個工作區文件。
指定init腳本的路徑。自您創建repos.sh在您的主目錄,路徑應該是什麼樣的/用戶/ <用戶名> / repos.sh。
在配置init腳本之後,重新啟動集群。