Leo Yeh's Blog

SAS Viya (78)

教學目標

初步了解 SAS Viya 中硬碟空間和效能配置的基本概念。

重點概念

首先當我們在部署 SAS Viya 平台時除了規劃適當的 CPU 和記憶體之外,規劃適當的硬碟空間和效能配置也是非常重要,但是往往我們會忽略這部份的規劃,特別是當我們需要透過容器部署 SAS Viya 平台時,為了方便後續維運管理我們就需要了解在 SAS Viya 平台中目錄用途和相關路徑。一開始我們必須了解部署 SAS Viya 至少需要 48 GB 的硬碟空間可用於安裝,安裝檔案會自動下載到「/var/cache/yum」目錄中,接著每台目標伺服器的「/opt」部署目錄,至少需要 50 GB 的硬碟空間,而若要增加可用的硬碟空間,則建議增加「/opt/sas 」目錄的硬碟空間,而不是「/opt/sas」子目錄的磁碟空間。此外若是硬碟空間有限,則建議從日誌記錄檔目錄建立連接至足夠可用硬碟空間的分區,像是我們能夠建立從日誌記錄檔的目錄「/var/log/sas/viya」至具有額外可用硬碟空間的目錄連接,其目錄預設連接為「/var/log/sas/viya」->「../../../opt/sas/viya/config/var/log/sas/」,並且會從 SAS Viya 平台中的所有服務擷取所有日誌記錄的活動,以利用於管理 CAS 伺服器的硬體資源,所以 SAS Viya 平台營運一段時間之後,若我們沒有針對日誌記錄檔目錄進行 House Keeping 將會造成空間不足,發生 SAS Viya 平台中服務異常的問題。

接著當 CAS 伺服器在處理大小超過可用記憶體時會自動在硬碟上的 CAS_DISK_CACHE 暫存目錄中,預設為「/tmp」,以及若有使用 Model Studio 則請考慮在「/opt /sas/viya/config/data/cas/default/projects」專案目錄中分配額外儲存專案的硬碟空間,當執行專案中第一個資料節點時,Model Studio 將會複製資料來源,因此專案所需的空間量取決於已儲存專案的數量和資料來源的大小,所以為了讓專案執行最佳效能,請在高效能的儲存設備上建立暫存目錄和專案目錄。至於 CASLIB 則是一個記憶體空間,其主要讓 CAS 伺服器能夠存取資料表,存取控制資料表和資料來源資訊,所有資料皆能夠透過 CASLIB 用於 CAS 伺服器,並且使用資料進行存取操作,此外 CASLIBS 需要額外的持久儲存,當我們增加或編輯 CASLIB 定義時,可以提供具有其它儲存空間的其它位置的儲存路徑,以利進行持久儲存能夠讓我們進行備份和恢復,尤其當報表讀取不到記憶體中的資料時將會自動將持久儲存的資料檔提升至記憶體中的資料表,以利正常呈現報表內容,請注意每個 CAS 使用者皆有一個名為 CASUSER 的個人 CASLIB ,而預設則是寫入使用者的個人目錄,此時需要多大的空間,則取決於個別使用者的需求。。

再來我們主要能夠從四大方面來規劃 SAS Viya 平台硬碟空間和效能配置,分別為:

  1. 大小:哪些檔案會快速成長,像是記錄檔、資料庫內容、暫存空間、快取空間、… 等。
  2. 效能:哪些檔案需要更好的效能,像是實際資料檔、暫存空間、快取空間、… 等。
  3. 保留:哪些檔案需要被保留,像是設定內容、資料內容、… 等。
  4. 共享:哪些檔案需要被共享,像是實際資料檔、備份內容、… 等。
目錄用途 預設路徑 大小 效能 保留 共享
SASWORK /tmp Y Y N N
SASUTIL /tmp Y Y N N
CAS_DISK_CACHE /tmp Y Y N N
Compute Server’s SASWORK /opt/sas/viya/config/var/tmp/compsrv/default Y Y N N
Service’s Logs /opt/sas/viya/config/var/log/<SERVICE_NAME>/default Y N Y N
HTTP Logs /var/log/httpd Y N Y N
Environment Manager Data Mart Logs /opt/sas/viya/config/var/lib/evmsvrops/evdm/log Y N Y N
CAS Data /opt/sas/viya/config/data/cas/default Y Y Y N
User’s Home Directory /home/<USERNAME> Y N Y Y
CAS Permstore /opt/sas/viya/config/etc/cas/default/permstore Y N Y N
Consul KV /opt/sas/viya/config/data/consul/raft Y N Y N
RabbitMQ /opt/sas/viya/config/var/lib/rabbitmq-server/mnesia Y N Y N
Postgres Database /opt/sas/viya/config/data/sasdatasvrc/postgres Y N Y N
Shared Vault for Backup /<SHARED_VAULT> Y N Y Y
DNFS Load /<DNFS_DATA> Y Y Y Y
Serial Load /<SERIAL_DATA> Y Y Y N

(註:Shared Vault 備份路徑必須設定為共享目錄,否則會發生備份檔合併的問題,造成無法正常還原 SAS Viya 平台中的備份內容。)

再來我們能夠透過 SAS Viya 平台中的 SAS Report Viewer 檢視報表開啟「SAS 內容」->「Products」->「SAS Environment Manager」->「Dashboard Items」->「Disk Space」硬碟空間報表提供有關硬碟空間使用情況的詳細資訊,除了視覺化的圖表呈現過去 24 小時內硬碟空間使用情況之外,更有提供 48 小時內硬碟空間使用情況的預測分析應用。此外當我們發現 SAS Viya 平台中服務開始發生異常時,則建議先透過「df -h」指令確認 SAS Viya 平台相關伺服器中的硬碟空間是否足夠,若是發現「/opt/sas」目錄所在的硬碟空間不足夠時,則我們僅需要先停止 SAS Viya 平台的所有服務,清理 SAS Viya 平台相關日誌記錄檔的硬碟空間之後,並且重新啟動 SAS Viya 平台的所有服務,通常就能夠解決 SAS Viya 平台中服務異常的問題。

相關資源

⬅️ Go back