Leo Yeh's Blog

SAS Viya (46)

教學目標

初步了解如何在 AWS 雲端平台中新建 Red Hat 7.5 的機器安裝與設定 SAS Viya 3.4 分析平台。

重點概念

首先當我們安裝 SAS Viya 3.4 之前,必須先確認硬體規格是否符合最低需求,像是最低硬體空間需求不能夠小於 50 GB,建議至少準備 100 GB 的硬體空間,以及根據不同的產品確認記憶體和 CPU 是否滿足最低需求。

產品 記憶體 (GB) CPU (Core)
SAS Visual Analytics 40 8
SAS Visual Analytics and SAS Visual Statistics 40 8
SAS Visual Analytics, SAS Visual Statistics, and SAS Visual Data Mining and Machine Learning 56 12
SAS Visual Analytics and SAS Visual Forecasting 56 12
SAS Visual Analytics and SAS Visual Text Analytics 56 12
SAS Visual Analytics and SAS Data Preparation 40 8
SAS Visual Analytics and SAS Data Quality 40 8
SAS Visual Analytics and SAS Decision Manager 48 12
SAS Visual Analytics and SAS Model Manager 48 8
All products listed above 68 16

接著我們需要下載 SAS Mirror Manager 工具,並且將此工具放置新建立的 viyatmp 暫存目錄中,以及將 SAS Viya 軟體訂單信件中的 SAS_Viya_deployment_data.zip 檔案下載至 Linux Red Hat 7 伺服器中,此時我們就能夠透過此工具下載最新的 SAS Viya 安裝檔至新建立的 viyamirror 暫存目錄中,以及我們需要下載 SAS Orchestration Command Line Interface (CLI) 工具,並且將此工具放置新建立的 viyatmp 暫存目錄中,以利建立 SAS Viya 安裝與設定的自動化腳本。

建立相關目錄

1
2
3
4
5
6
$ sudo mkdir ~/viyatmp
$ sudo mkdir ~/viyamirror
$ sudo mkdir ~/working
$ sudo chmod 777 -R ~/viyatmp
$ sudo chmod 777 -R ~/viyamirror
$ sudo chmod 777 -R ~/working

建立安裝檔

1
2
3
$ cd ~/viyatmp
$ tar xvf mirrormgr-linux.gz
$ ./mirrormgr mirror --deployment-data ~/viyatmp/SAS_Viya_deployment_data.zip --path ~/viyamirror --platform x64-redhat-linux-6 --latest

建立自動化腳本

1
2
3
4
$ cd ~/viyatmp
$ tar xvf sas-orchestration-linux.gz
$ sudo yum install java
$ ./sas-orchestration build --platform redhat --input ~/viyatmp/SAS_Viya_deployment_data.zip --output ~/working/SAS_Viya_playbook.tgz

再來當 SAS Viya 安裝檔下載完成之後,建議先確認套件是否已經完成安裝,特別是安裝 Ansible 工具,請注意一定要是 2.4.3 的版本,以及建議安裝 tmux 工具,此時就能夠啟動 SAS Viya 安裝檔伺服器。

安裝相關套件

1
2
3
4
5
6
7
8
9
$ sudo yum check-update
$ sudo yum update -y
$ sudo yum install tmux
$ sudo yum install unzip
$ sudo yum repolist
$ sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo yum install -y python-pip gcc python-devel
$ sudo pip install --upgrade pip setuptools
$ sudo pip install 'ansible==2.4.3.0'

設定無密碼帳號登入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ sudo useradd sas
$ sudo passwd sas
$ sudo vi /etc/sudoers

sas ALL=(ALL) NOPASSWD:ALL

:wq!
$ sudo vi /etc/ssh/sshd_config

PermitRootLogin no

PasswordAuthentication yes

:wq!
$ sudo service sshd restart
$ ssh-keygen
$ ssh-copy-id sas@ip-xxx-xxx-xxx-xxx.ec2.internal

測試自動化腳本工具

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ cd ~/working
$ vi working.inventory.ini
deployTarget ansible_host=ip-xxx-xxx-xxx-xxx.ec2.internal
:wq!
$ vi ansible.cfg
[defaults]
log_path = ./working.log
inventory = working.inventory.ini
host_key_checking = true
forks = 10
retry_files_enabled = False
gathering = smart
remote_tmp = /tmp/.$USER.ansible/
:wq!
$ ansible -m ping all

啟動安裝檔伺服器

1
2
3
$ tmux
$ cd ~/viyamirror
$ python -m SimpleHTTPServer 8123

再來從 SAS Viya Infrastructure Resource Kit (VIRK) 網站下載安裝前置作業的自動化腳本,以及上傳至 /tmp 目錄中,並且進行解壓縮。此時我們就能夠透過自動化腳本針對伺服器環境自動進行檢查,以及根據安裝與設定部署的需求修改 SAS Viya 的部署設定檔。

進行 SAS Viya 安裝前置作業

1
2
3
4
$ cd /tmp
$ unzip virk-viya-3.4.zip
$ cd virk-viya-3.4/playbooks/pre-install-playbook/
$ ansible-playbook viya_pre_install_playbook.yml -i pre-install.inventory.ini

建立快取暫存資料夾

1
2
3
4
5
6
$ sudo mkdir /sastmp
$ cd /sastmp
$ sudo mkdir saswork
$ sudo mkdir cascache
$ cd /sastmp/cascache
$ sudo chmod 777 -R /sastmp

修改 SAS Viya 的部署設定檔

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$ cd ~/working/
$ tar xvf SAS_Viya_playbook.tgz
$ cd ~/working/sas_viya_playbook
$ cp vars.yml vars.yml.orig
$ cp inventory.ini inventory.ini.orig
$ chmod u+w ansible.cfg
$ sudo vi inventory.ini
deployTarget ansible_host=ip-xxx-xxx-xxx-xxx.ec2.internal:wq!
$ sudo vi ./ansible.cfg

inventory = inventory.ini

:wq!
$ sudo vi vars.yml

REPOSITORY_WAREHOUSE: "http://ip-xxx-xxx-xxx-xxx.ec2.internal:8123/"
CAS_CONFIGURATION:
env:
CAS_DISK_CACHE: /sastmp/cascache
CAS_CONTROLLER_TEMP: /sastmp/cascache

SASV9_CONFIGURATION:
1: 'WORK=/sastmp/saswork'
:wq!

最後當我們完成以上所有設定之後,我們就能先進行安裝前系統評估,若是沒問題就能夠開始安裝與設定 SAS Viya 3.4,建議透過 tmux 終端機進行操作,避免安裝到一半時被終斷連線,導致不正常安裝與設定。此外當我們順利完成安裝與設定之後,若要開始使用就必須先重設 sasboot 平台管理員的帳號密碼,主要透過指令取得連結網址,接著再透過客戶端瀏覽器重新設定密碼,像是 http://ip-xxx-xxx-xxx-xxx.ec2.internal/SASLogon/reset_password?code=XXXXXX ,若是無法正常從客戶端瀏覽器正常連線至 ip-xxx-xxx-xxx-xxx.ec2.internal 網址,則可以先設定 hosts 檔案進行伺服器網址和伺服器 IP 的對應即可。

進行安裝前系統評估

1
$ ansible-playbook system-assessment.yml

進行系統安裝與設定

1
2
$ tmux 
$ time ansible-playbook site.yml

取得重設平台管理員帳號密碼的連結

1
2
$ grep sasboot `ls -tr  /opt/sas/viya/config/var/log/saslogon/default/sas-saslogon_* | tail -n 1`
Reset the password for the initial user "sasboot" by using this link: /SASLogon/reset_password?code=XXXXXX

總結 SAS Viya 3.4 分析平台的安裝與設定到此先告一個段落,但是若要開始讓不同使用者進行操作,則至少需要整合 LDAP 的設定,這部份就有空再整理分享啦!

相關資源

⬅️ Go back