教學目標

初步了解如何在 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 的設定,這部份就有空再整理分享啦!

相關資源