SAS Viya (56)

教學目標

初步了解如何以 Python 執行 SAS Viya 平台的管理命令列介面 (Command-line Interfaces, CLIs) 解決資訊單位日常維運管理的痛點。

重點概念

首先 SAS Viya 平台提供管理命令列介面 (Command-line Interfaces, CLIs),以利我們直接透過指令的方式管理 SAS Viya 平台,而非透過介面的方式,此外我們更能夠透過 Python 呼叫 CLI 進行 SAS Viya 平台的管理操作。

接著使用 SAS Viya 的管理命令列介面,必須先設定 SAS_CLI_PROFILE 環境變數,此時我們能夠透過以下指令在 Linux 作業系統中自動設定 SAS_CLI_PROFILE 環境變數。

初始設定

1
2
# cd /opt/sas/viya/home/bin/
# ./sas-admin profile init

再來我們可以透過以下 Python 程式碼以系統管理帳號與密碼登入 SAS Viya 的管理命令列介面。

授權登入

1
2
import os
os.system('/opt/sas/viya/home/bin/sas-admin auth login -u [系統管理帳號] -p [系統管理密碼] ');

最後我們就能夠透過以下 Python 程式碼以 SAS Viya 的管理命令列介面將 Anita 這個使用者加入至業務部門的客製群組中,並且列出業務部門客製群組中的前 100 位使用者。

管理操作

1
2
3
os.system('/opt/sas/viya/home/bin/sas-admin identities create-group --id salesgroup --name Salesgroup --description "業務部門"');
os.system('/opt/sas/viya/home/bin/sas-admin identities add-member --user-member-id anita --group-id salesgroup')
os.system('/opt/sas/viya/home/bin/sas-admin identities list-members --group-id salesgroup --limit 100')

執行結果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
NOTE: Grid node action status report: 1 nodes, 8 total actions executed.
Enter credentials for http://ip-xx-xx-xx-xx.ec2.internal:

Login succeeded. Token saved.
{
"description": "Custom sales group",
"id": "salesgroup",
"name": "Salesgroup",
"state": "active"
}
The group was created successfully.
anita has been added to group salesgroup
{
"items": [
{
"id": "anita",
"name": "SAS User",
"type": "user"
}
]
}

總結 SAS Viya 平台提供管理命令列介面 (Command-line Interfaces, CLIs) 理應能夠根據 IT 資訊單位維運管理的需求進行高度彈性的客製開發自動化維運管理,以利解決資訊單位日常維運管理的痛點。

相關資源