paint-brush
Powerful Data Analytics Software: SAS Three-Tier Architecture Install on AWS Environment by@kiranp
648 reads
648 reads

Powerful Data Analytics Software: SAS Three-Tier Architecture Install on AWS Environment

by kiranApril 6th, 2023
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

SAS offers a three-tier architecture that separates the different components of the system onto separate servers. This architecture allows for the metadata, data processing, and user interface layers to be installed on different servers for improved performance and scalability. In this article, we will discuss the steps to install a SAS three- tier architecture on an [AWS environment]
featured image - Powerful Data Analytics Software:  SAS Three-Tier Architecture Install on AWS Environment
kiran HackerNoon profile picture


SAS is an s a powerful analytics platform that allows users to perform complex data analysis and modeling tasks. To ensure high levels of performance and scalability, SAS offers a three-tier architecture that separates the different components of the system onto separate servers. This architecture allows for the metadata, data processing, and user interface layers to be installed on different servers for improved performance and scalability. In this article, we will discuss the steps to install a SAS three-tier architecture on an AWS environment.


Provisioning EC2 Instances

The first step in setting up a SAS three-tier architecture on AWS is to provision three EC2 instances. One instance will be used for the SAS Metadata Server, the second for the SAS Workspace Server, and the third for the SAS Stored Process Server. The size of the instances will depend on the size of your data and the expected load on your system.


Here is an example Terraform code to provision three EC2 instances:

provider "aws" { region = "us-east-1" }

resource "aws_instance" "metadata_server" { ami = "ami-0c94855ba95c71c99" instance_type = "t2.micro" tags = { Name = "metadata-server" } }

resource "aws_instance" "workspace_server" { ami = "ami-0c94855ba95c71c99" instance_type = "t2.micro" tags = { Name = "workspace-server" } }

resource "aws_instance" "stored_process_server" { ami = "ami-0c94855ba95c71c99" instance_type = "t2.micro" tags = { Name = "stored-process-server" } }


Above Terraform code, we are using the AWS provider to set the region to us-east-1. We then define three aws_instance resources: metadata_server, workspace_server, and stored_process_server. Each instance has a specified Amazon Machine Image (AMI) and instance type and is tagged with a name for easy identification.


Note that this is a basic example and you may need to modify the code to suit your specific requirements, such as adding additional configuration options, security settings, or networking components.

Installing and Configuring the Required Software

After provisioning the EC2 instances, the necessary software components need to be installed and configured on each of the instances. This includes installing the operating system, Java Runtime Environment (JRE), database software, and SAS software. The specific versions of the software will depend on the version of SAS you are using and the requirements of your organization.


Here is an example Ansible playbook for installing Java Runtime Environment (JRE), database software, and SAS software (SAS Preferred to installing GUI):


name: Install JRE, Database Software, and SAS Software hosts: all become: true

vars: java_version: "1.8.0" database_type: "oracle" database_version: "12c" sas_version: "9.4"

tasks:

name: Install JRE yum: name: "java-{{ java_version }}-openjdk" state: present

name: Install {{ database_type }} Database Software yum: name: "{{ database_type }}{{ database_version }}" state: present

name: Download SAS Software get_url: url: "https://example.com/sas/{{ sas_version }}/sas_{{ sas_version }}.tar.gz" dest: "/tmp/sas_{{ sas_version }}.tar.gz"

name: Extract SAS Software unarchive: src: "/tmp/sas_{{ sas_version }}.tar.gz" dest: "/opt/sas" remote_src: true owner: sas group: sas

name: Install SAS Software shell: "/opt/sas/setup.sh -deploy" args: chdir: "/opt/sas/install_data"


Setting up the Metadata Server

The SAS Metadata Server manages all metadata and user credentials for the SAS environment. Install and configure the SAS Metadata Server on the first EC2 instance. During the installation, you will need to specify the database and the location of the metadata repository. After the installation is complete, configure the metadata server using the SAS Management Console.


Setting up the Workspace Server

The SAS Workspace Server provides a connection point for SAS clients to execute SAS code and interact with data. Install and configure the SAS Workspace Server on the second EC2 instance. During the installation, you will need to specify the metadata server and the location of the workspace server data. After the installation is complete, configure the workspace server using the SAS Management Console.


Setting up the Stored Process Server

The SAS Stored Process Server provides a connection point for external applications to execute SAS programs and retrieve results. Install and configure the SAS Stored Process Server on the third EC2 instance. During the installation, you will need to specify the metadata server and the location of the stored process server data. After the installation is complete, configure the stored process server using the SAS Management Console.


Configuring Network Settings

After installing and configuring all the necessary components, network settings need to be configured to ensure that the three EC2 instances can communicate with each other. Firewall settings, security groups, and network interfaces need to be configured to allow communication between the three servers. It is important to follow best practices for securing your SAS environment on AWS.


Testing the Installation

Once all the components have been installed and configured, the SAS installation needs to be tested. Connect to the SAS Workspace Server using a SAS client application and run SAS programs on the Stored Process Server to verify that the results are returned correctly.


By following the steps outlined in this article, you can install and configure a SAS three-tier architecture on AWS and achieve high levels of performance and scalability for your SAS environment. It is important to follow best practices for securing your SAS environment on AWS and to seek the assistance of a SAS expert if needed.


Monitoring a SAS Three-Tier Architecture using CloudWatch, and Splunk:


CloudWatch Monitoring

Amazon CloudWatch is a monitoring service for AWS resources and the applications running on them. You can use CloudWatch to collect and track metrics, collect and monitor log files, and set alarms. To monitor a SAS Three-Tier Architecture using CloudWatch, you can use the following steps:

  1. Enable CloudWatch logging for each EC2 instance running the SAS Metadata Server, SAS Workspace Server, and SAS Stored Process Server. This will allow CloudWatch to collect log data from each instance.
  2. Create CloudWatch alarms to monitor specific metrics for each instance. For example, you can create alarms to monitor CPU usage, memory usage, and disk space usage.
  3. Configure CloudWatch dashboards to provide a visual representation of the performance of each instance. This will allow you to easily monitor the performance of the system in real time.


Splunk Monitoring

Splunk is a platform for monitoring, searching, analyzing, and visualizing machine-generated data. You can use Splunk to monitor logs, metrics, and other data generated by the SAS Three-Tier Architecture. To monitor a SAS Three-Tier Architecture using Splunk, you can use the following steps:

  1. Install and configure the Splunk Universal Forwarder on each EC2 instance running the SAS Metadata Server, SAS Workspace Server, and SAS Stored Process Server. This will allow Splunk to collect log data from each instance.
  2. Configure Splunk to index the collected log data.
  3. Use Splunk to create dashboards and reports that provide insights into the performance of the system. These dashboards and reports can be customized to meet the needs of different stakeholders.


Monitoring a SAS Three-Tier Architecture using CloudWatch, and Splunk is essential to ensure that the system is running optimally. By following the steps outlined in this article, you can monitor the performance of the different components of the system and gain insights that can be used to make informed decisions.


Lead image reference.

References:

https://www.sas.com/en_us/home.html

https://aws.amazon.com/

https://developer.hashicorp.com/terraform/intro

https://www.splunk.com/