Installing CloudScend Foresight to Amazon EKS
This section of the Installation Guide will provide instructions for installing CloudScend Foresight v1.0.0 in an Amazon EKS environment.
Assumptions for Amazon EKS Installation
- Familiarity with Amazon EKS Environments
- Access to functional Amazon EKS Environment
- Knowledge of Helm files usage
Technical Requirements for Amazon EKS Installation
- Kubernetes Cluster 1.15+
- EFS as the data storage
- Nginx Ingress as the Ingress Controller
- Recommend 2 m5.xlarge EC2 Workers
- kubectl
- Access via command-line
- Master permissions
- Need assistance: https://aws.amazon.com/premiumsupport/knowledge-center/eks-cluster-connection/
- Helm v3.4.1
- Helmfile v0.137.0
- Foresight License Key
- This will be provided by SAIC via email
- Foresight ML application key
- This will be provided by SAIC via email If processing Windows .NET Code, you must install Windows Report Service and should ensure the following requirements are met:
- If you are using AWS: download CloudScend Foresight Windows Report Service AMI from the AWS Marketplace
- If you are not using AWS: Reach out to SAIC service desk for CloudScend Foresight Windows Report Service app
- Windows Server Minimum requirements:
- Windows Server 2019 - DataCenter, Enterprise, Standard, or Core
- 1 CPU
- 2GB RAM
- 50 GB drive space on C:\
Installation Procedure
Download Package
- Download the Installation Package
- Examine the folder structure and ensure you have the structure and files included in the table below.
Directory Name | Description |
---|---|
Apps | Folder containing Helmfile configuration for CloudScend Foresight application |
env | Folder containing the environment file to configure the deployment |
init | Folder containing scripts used in the deployment |
initial | Folder containing Helmfile configuration for the supporting applications: - Keycloak - GitLab - SonarQube - Metabase |
Istio-support | Folder containing the installation details repeated |
README | README with the installation details repeated |
foresight.sh | Main script file to be run to install the application |
Configure Environment
- Open the license.txt file you received from SAIC via email.
- Open the foresight.env file in an editor (Notepad++, Sublime Text, Visual Studio Code, etc.)
- Find the environment variable LICENSE_KEY
- Copy the text in the license.txt file and paste it into the LICENSE_KEY value.
- Change the remaining environment variable values based on your environment.
- You can view the list of CloudScend Foresight Environment Variables so you are familiar with the variables.
- Reach out to SAIC service desk if you have questions or concerns.
Optionally Install Windows Report Service
If you will be processing any .NET code, you must install Windows Report Service. Follow the steps below to perform the installation.
- Install Windows Report Service (optional)
- Install the app and dependencies (only required if not using the Report Service AMI from AWS Marketplace)
- Copy the Windows Report Service App zip file to a Windows Server 2019 machine.
- Extract the contents of the zip file to a temp folder.
- Download the install-prereqs.ps1 and configure-startup.ps1 powershell scripts to the same temp folder.
- Start an Administrator elevated Command Prompt.
- Change (cd) to the location of the zip file's extracted temp folder.
- Run
powershell -File .\install-prereqs.ps1
- Content will be installed for .Net Framework 4.8, SonarScanner for MSBuild .NET, Visual Studio 2019 Build Tools, and Java 11 JDK.
- The files will be downloaded and saved to C:\AMaaS\temp.
- After the .Net Framework 4.8 install, the computer may reboot.
If it does, run
powershell -File .\install-prereqs.ps1
again to make sure the installation has completed.
- Run
powershell -File .\configure-startup.ps1
and provide the requested information. This step creates a start-report-service.bat file in C:\AMaaS with the provided values. - To start the Windows Report Service, run
C:\AMaaS\start-report-service.bat
. Note: make sure port 8080 is exposed and addressable for the "normal" Java Report Service to access.
- Install the app and dependencies (only required if not using the Report Service AMI from AWS Marketplace)
Run the Installer Script
- Open a terminal window and navigate to the top level of the installation folder
- Type ./foresight.sh to run the script
- Note, in Linux you may be required to change the permission of the script to Run As Admin.
- if you receive an error during installation, refer to the Debugging and Installation Support below.
- Wait for installation to complete. This usually takes less than 30 minutes depending on your system.
- Validate by examining the cluster pods.
Troubleshooting and Installation Support
Installation Issues
- WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /Users/{username}/.kube/config
- This is only a warning, but for security best practices this should be addressed.
- The fix is to run the following command against your kubeconfig to change its permission to readable only by the current user
- chmod u=rw ~/.kube/config
- Missing Required Environment Variables
- An error will be printed out with the specific missing variable
- The fix is to set the missing variable, use the chart above or the foresight.env file for reference.
Viewing logs
- You can view logs using kubectl
- Use these links for information on how to use kubectl to view your logs:
- Add "-n [namespace]" to the end of the command to find your pod -For example, "kubectl -n mynamespace logs podname-1 -c optional-container-name"
- You can also use Lens to view your logs. See information in the CloudScend Foresight Operations Guide for more details.
If you are still experience issues with your installation or need support, please contact the CloudScend Foresight service desk by phone at 1-866-411-4227 – option 3 or email foresight-support@saic.com.