Skip to content

Commit

Permalink
Merge pull request #192 from sassoftware/develop
Browse files Browse the repository at this point in the history
Prep for release
  • Loading branch information
kevinlinglesas authored Feb 17, 2023
2 parents 7da555d + 15964c5 commit 47c60cf
Show file tree
Hide file tree
Showing 9 changed files with 49 additions and 55 deletions.
19 changes: 11 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,26 @@
# SAS Viya 4 Administration Resource Kit

The SAS Viya Administration Resource Kit (SAS Viya ARK) provides tools and utilities to help SAS customers prepare for and gather information about a SAS Viya deployment.
The SAS Viya Administration Resource Kit (SAS Viya ARK) provides tools and utilities to help SAS customers prepare for and gather information about a SAS Viya platform deployment.

## Introduction
SAS Viya ARK is a collection of resources that automate and streamline tasks that prepare an environment for a SAS Viya deployment. It also gathers information and generates reports about a deployment.
SAS Viya ARK is a collection of resources that automate and streamline tasks that prepare an environment for a SAS Viya platform deployment. It also gathers information and generates reports about a deployment.

The main branch supports the latest release of SAS Viya. Visit the releases page for specific information about SAS Viya ARK and related SAS Viya product releases.
The main branch supports the latest release of the SAS Viya platform.
Visit the releases page for specific information about SAS Viya ARK and related SAS Viya platform product releases.

SAS Viya ARK provides the following types of assistance:

* Pre-deployment assessment and optional configuration
* Post-deployment automation and utilities

## Prerequisites for SAS Viya ARK

Obtain the latest version of SAS Viya ARK whenever you pull down new deployment assets or a new manifest.

Each tool that is included in the resource kit provides a readme that describes its specific prerequisites and functionality.

### Required Python Packages

SAS Viya ARK tools require third-party packages be installed before use. All required packages can be installed using the provided `requirements.txt`:

```commandline
Expand All @@ -26,12 +29,12 @@ python3 -m pip install -r requirements.txt
The Python packages are only required on the host where SAS Viya ARK tools are executed.

## Index of Tools
Tool support for the latest release of SAS Viya:
Tool support for the latest release of the SAS Viya platform:

* [SAS Viya Deployment Report](deployment_report)
* [SAS Viya Log Download Tool](download_pod_logs)
* [Pre-installation of SAS Viya System Requirements](pre_install_report)
* [SAS Viya LDAP Validator](ldap_validator)
* [SAS Viya Platform Deployment Report](deployment_report)
* [SAS Viya Platform Log Download Tool](download_pod_logs)
* [Pre-installation of SAS Viya Platform System Requirements](pre_install_report)
* [SAS Viya LDAP Platform Validator](ldap_validator)

## Contributing

Expand Down
19 changes: 7 additions & 12 deletions deployment_report/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SAS Viya Deployment Report
# SAS Viya Platform Deployment Report

The SAS Viya Deployment Report generates a web-viewable summary (and JSON-formatted data file) of SAS software deployed
The SAS Viya Platform Deployment Report generates a web-viewable summary (and JSON-formatted data file) of SAS software deployed
in a Kubernetes cluster. The report includes a list of SAS-deployed components with application resources grouped
together. Overview information is gathered about the Kubernetes cluster into which the SAS components are deployed. If
the report is run with a `KUBECONFIG` capable of gathering node resources and/or pod and node metrics, they are
Expand Down Expand Up @@ -31,8 +31,7 @@ Download the latest version of this tool and update required packages with every
The following example produces both the web-viewable report and JSON-formatted data. The namespace containing your SAS
deployment can be specified by including the `-n` or `--namespace` option.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py deployment-report --namespace sas
Expand All @@ -43,8 +42,7 @@ python3 viya-ark.py deployment-report --namespace sas
Including the `-l` or `--include-pod-log-snips` option yields a report with a 10-line log snippet for each pod.
Using this option increases the runtime of the command as well as the size of the resulting files.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py deployment-report -n sas --include-pod-log-snips
Expand All @@ -55,8 +53,7 @@ python3 viya-ark.py deployment-report -n sas --include-pod-log-snips
Including the `-r` or `--include-resource-definitions` option yields a report with the JSON-formatted resource
definitions for all resources found in the deployment. Using this option increases the size of the resulting files.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py deployment-report -n sas --include-resource-definitions
Expand All @@ -67,8 +64,7 @@ python3 viya-ark.py deployment-report -n sas --include-resource-definitions
Including the `-d` or `--data-file-only` option yields only the JSON-formatted data file. The web-viewable HTML report
is omitted.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py deployment-report -n sas --data-file-only
Expand All @@ -80,8 +76,7 @@ By default, the output files are written to the current working directory. Inclu
redirects the output files to the given location. The provided value should be an existing path and should not include
any file names.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py deployment-report -n sas --output-dir="/path/to/report/"
Expand Down
24 changes: 10 additions & 14 deletions download_pod_logs/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SAS Viya Log Download Tool
# SAS Viya Platform Log Download Tool

The SAS Viya log download tool collects recent log activity for some or all SAS component pods deployed
The SAS Viya platform log download tool collects recent log activity for some or all SAS component pods deployed
in a Kubernetes cluster. The collected logs are written to disk for easy access. Log files are prepended with the status
information available for the pod container when the tool is executed.

Expand All @@ -26,11 +26,10 @@ connection information and credentials to use during execution.

### Basic Example

The following example downloads logs for all SAS Viya component pods in the targeted cluster. The namespace containing your SAS
The following example downloads logs for all SAS Viya platform component pods in the targeted cluster. The namespace containing your SAS
Viya deployment should be specified by including the `-n` or `--namespace` option.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py download-pod-logs --namespace sas
Expand All @@ -41,23 +40,21 @@ python3 viya-ark.py download-pod-logs --namespace sas
The `-t` or `--tail` option limits the recent log lines returned to the provided number. By default, 25,000 log lines are returned.
The following example limits the returned log lines to 1000.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py download-pod-logs --namespace sas --tail 1000
```

### Selecting SAS Component Pods

By default, logs are downloaded for all SAS Viya pods. Downloaded logs can be limited to one or a list of SAS Viya pods
by including a space-separated list of SAS Viya pod names after all desired options have been included. The
[SAS Viya Deployment Report](../deployment_report) tool can be used to generate a list of SAS pod names.
By default, logs are downloaded for all SAS Viya platform pods. Downloaded logs can be limited to one or a list of SAS Viya platform pods
by including a space-separated list of SAS Viya platform pod names after all desired options have been included. The
[SAS Viya Platform Deployment Report](../deployment_report) tool can be used to generate a list of SAS pod names.

The following example returns logs from the sas-visual-analytics-app and sas-consul-server pods only.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS platform deployment.

```commandline
python3 viya-ark.py download-pod-logs --namespace sas --tail 100 sas-visual-analytics-app sas-consul-server
Expand All @@ -69,8 +66,7 @@ By default, the output files are written to a directory named `sas-k8s-logs` in
the `-o` or `--output-dir` option redirects the output files to the given location. The downloaded logs are placed in a
timestamped directory inside of the `output-dir` location to allow for multiple executions.

**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS
deployment.
**Note**: The `sas` namespace used in the example should be replaced with the namespace containing your SAS Viya platform deployment.

```commandline
python3 viya-ark.py download-pod-logs -n sas --output-dir="/path/to/report/"
Expand Down
4 changes: 2 additions & 2 deletions ldap_validator/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# SAS Viya LDAP Validator
# SAS Viya Platform LDAP Validator

This tool validates the accuracy of the LDAP properties represented in a
sitedefault.yaml file by connecting to the LDAP server and fetching some of the
Expand All @@ -15,7 +15,7 @@ However, that is still not a full guarantee of success since the tool is not abl
to check every parameter in the sitedefault.yaml file for accuracy.

**Note:** SAS recommends that you do not use the sitedefault.yaml file for the
initial deployment of your SAS Viya software. For more information, see [Add a sitedefault File to Your Deployment](http://documentation.sas.com/?cdcId=itopscdc&cdcVersion=default&docsetId=dplyml0phy0dkr&docsetTarget=n08u2yg8tdkb4jn18u8zsi6yfv3d.htm#n19f4zubzxljtdn12lo0nkv4n4cf).
initial deployment of your SAS Viya platform software. For more information, see [Add a sitedefault File to Your Deployment](http://documentation.sas.com/?cdcId=itopscdc&cdcVersion=default&docsetId=dplyml0phy0dkr&docsetTarget=n08u2yg8tdkb4jn18u8zsi6yfv3d.htm#n19f4zubzxljtdn12lo0nkv4n4cf).

## Prerequisites

Expand Down
20 changes: 10 additions & 10 deletions pre_install_report/README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
# Pre-Installation Check of SAS Viya System Requirements
# Pre-Installation Check of SAS Viya Platform System Requirements
## Overview
This tool compares your Kubernetes environment to the SAS Viya system requirements. It evaluates a
This tool compares your Kubernetes environment to the SAS Viya platform system requirements. It evaluates a
number of items, such as memory, CPU cores, software versions, and permissions. The output is a web-viewable,
HTML report with the results.

SAS recommends running the tool and resolving any reported issues _before_ beginning a SAS Viya
SAS recommends running the tool and resolving any reported issues _before_ beginning a SAS Viya platform
deployment in a Kubernetes cluster. The tool cannot account for the dynamic resource allocations that
Kubernetes may orchestrate once Viya is deployed. The report and the information therein must
Kubernetes may orchestrate once the SAS Viya platform is deployed. The report and the information therein must
be considered a snapshot in time.

The Kubernetes cluster for a SAS Viya deployment must meet the requirements documented in [SAS® Viya® Operations](https://go.documentation.sas.com/doc/en/itopscdc/default/itopssr/titlepage.htm)
The Kubernetes cluster for a SAS Viya platform deployment must meet the requirements documented in [SAS® Viya® Platform Operations](https://go.documentation.sas.com/doc/en/itopscdc/default/itopssr/titlepage.htm)
Ensure that the Kubernetes version is within the documented range for the selected cloud provider.
If the Kubernetes server version is below the default minimum, a warning will be included in the report.

Expand All @@ -19,7 +19,7 @@ The tool calculates the aggregate Memory and aggregate vCPUs of your cluster. Th
of the Memory capacity on all the active and running nodes. The aggregate CPU is calculated similarly.

There will be some percentage of Memory on each node in the cluster that is considered "overhead" (consumed by the OS, Kubelet, etc)
and therefore not be available for SAS Viya. This tool assumes that 85% of the calculated aggregate Memory is available for SAS Viya,
and therefore not be available for the SAS Viya platform. This tool assumes that 85% of the calculated aggregate Memory is available for the SAS Viya platform,
and the memory sizes in the report reflect this.

The calculated aggregate number of vCPUs must equal or exceed the required aggregate number of vCPUs for your deployment offering.
Expand Down Expand Up @@ -76,12 +76,12 @@ Download the latest version of this tool and update required packages with every
## Usage

**Note:** You must set your `KUBECONFIG` environment variable. `KUBECONFIG` must have administrator rights to the
cluster where you intend to deploy your SAS Viya software.
cluster where you intend to deploy your SAS Viya platform software.
To obtain a complete report use a `KUBECONFIG` with administrator rights in the cluster. Otherwise, the report will
not be able to evaluate items such as memory, CPU cores, software versions and other node details. It is not useful
for determining if you are ready to deploy your SAS Viya software.
for determining if you are ready to deploy your SAS Viya platform software.

Create the namespace where you plan to deploy SAS Viya. A namespace is required to run this tool. Specify the namespace where you plan to deploy SAS Viya using the namespace option. If a namespace is not provided, the tool will check the current context for a namespace. Ensure that you are running with the correct namespace.
Create the namespace where you plan to deploy SAS Viya platform. A namespace is required to run this tool. Specify the namespace where you plan to deploy SAS Viya platform using the namespace option. If a namespace is not provided, the tool will check the current context for a namespace. Ensure that you are running with the correct namespace.

After obtaining the latest version of this tool, cd to `<tool-download-dir>/viya4-ark`.

Expand Down Expand Up @@ -150,7 +150,7 @@ minimum and aggregate settings for CPU and memory on nodes. For more information

If you modify the VIYA_K8S_VERSION_MIN to a version less than the minimum Kubernetes version supported by this
release of the report tool, you are operating outside the supported capabilities of the report tool. SAS recommends
using a release of Viya 4 ARK tools that matches the required minimum you are working with.
using a release of SAS Viya 4 ARK tools that matches the required minimum you are working with.

## Known Issues

Expand Down
4 changes: 2 additions & 2 deletions pre_install_report/library/pre_install_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# ### Author: SAS Institute Inc. ###
####################################################################
# ###
# Copyright (c) 2021-2022, SAS Institute Inc., Cary, NC, USA. ###
# Copyright (c) 2021-2023, SAS Institute Inc., Cary, NC, USA. ###
# All Rights Reserved. ###
# SPDX-License-Identifier: Apache-2.0 ###
# ###
Expand Down Expand Up @@ -569,7 +569,7 @@ def _check_workers(self, global_data, nodes_data):
str(viya_constants.EXPECTED) +
': Minimum ' +
str(viya_constants.NUMBER_OF_WORKER_NODES) +
" \nCheck SAS Viya Documentation")})
" \nCheck SAS Viya Platform Documentation")})

else:
global_nodes.update({'status': 0})
Expand Down
8 changes: 4 additions & 4 deletions pre_install_report/library/utils/viya_messages.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# ### Author: SAS Institute Inc. ###
####################################################################
# ###
# Copyright (c) 2020-2022, SAS Institute Inc., Cary, NC, USA. ###
# Copyright (c) 2020-2023, SAS Institute Inc., Cary, NC, USA. ###
# All Rights Reserved. ###
# SPDX-License-Identifier: Apache-2.0 ###
# ###
Expand Down Expand Up @@ -32,9 +32,9 @@
KUBERNETES_VERSION_ERROR = "Kubernetes version is missing or invalid: {}"
CLUSTER_CREATION_INFO = "** SAS recommends using the IaC tools to create the cluster. See SAS Viya 4 " \
"Infrastructure as Code (IaC) project for Microsoft Azure, AWS, GCP and " \
"Open Source Kubernetes. Refer to SAS Viya Documentation for OpenShift."
SIZINGS_INFO = "** Also refer to SAS Viya Documentation for Sizing Recommendations for Microsoft Azure, AWS, " \
"GCP, Open Source Kubernetes and OpenShift."
"Open Source Kubernetes. Refer to SAS Viya Platform Documentation for OpenShift."
SIZINGS_INFO = "** Also refer to SAS Viya Platform Documentation for Sizing Recommendations for Microsoft " \
"Azure, AWS, GCP, Open Source Kubernetes and OpenShift."

# command line return codes #
SUCCESS_RC_ = 0
Expand Down
4 changes: 2 additions & 2 deletions pre_install_report/viya_deployment_settings.ini
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# ### Author: SAS Institute Inc. ###
# ###################################################################
# ###
# Copyright (c) 2021-2022, SAS Institute Inc., Cary, NC, USA. ###
# Copyright (c) 2021-2023, SAS Institute Inc., Cary, NC, USA. ###
# All Rights Reserved. ###
# SPDX-License-Identifier: Apache-2.0 ###
# ###
Expand All @@ -13,7 +13,7 @@
# These variable values can be changed to match your Viya deployment depending
# on the baseline resource requirements per selected Offerings in a cloud provider.
# The current settings reflect the baseline requirements for an Azure deployment of the SAS Visual Analytics and
# SAS Data Preparation offering. See SAS Viya Operations document for the Sizing Recommendations for Microsoft Azure.
# SAS Data Preparation offering. See SAS Viya Platform Operations document for the Sizing Recommendations for Microsoft Azure.
# Change the settings for your Offering per cloud provider.
#
# ###################################################################
Expand Down
2 changes: 1 addition & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[metadata]
name = viya4-ark
author = SAS Institute Inc.
summary = The SAS Viya Administration Resource Kit (SAS Viya ARK) provides tools and utilities to help SAS customers prepare for and gather information about a SAS Viya deployment.
summary = The SAS Viya Administration Resource Kit (SAS Viya ARK) provides tools and utilities to help SAS customers prepare for and gather information about a SAS Viya platform deployment.
description-file = README.md
description-content-type = text/markdown
home-page = https://github.com/sassoftware/viya4-ark
Expand Down

0 comments on commit 47c60cf

Please sign in to comment.