Important: To install Symphonyin a Kubernetes environment, you’ll need an intermediate level of familiarity and experience with Kubernetes. See https://kubernetes.io/docs/home/.
Important: Download the latest installation package and the complete readme at https://repo-logisymphony.insightsoftware.com/helm-charts/.
Prerequisites
- A Kubernetes cluster of appropriate compute availability
- The Helm CLI installed
- Your command line tool, kubectl, is installed and configured to use with your cluster
-
Know your selection of modules you wish to install:
- Full Symphony 24
- Symphony 24 with Logi AI (beta)
- Symphony with Visual Data Discovery only.
- Symphony with Managed Dashboards and Reports only.
Kubernetes Cluster Requirements
There are no specific limits in the Helm chart by default, but we suggest the following compute availability on your cluster:Recommended Compute Availability
- 10 Cores
- 24 Gi Memory
Required for Scheduling by Kubernetes
- 4 Cores
- 16 Gi Memory
Important: These specifications are intended as an initial installation guide. Your environment’s specific workloads may demand a higher number of cores and more memory available for computing.
Other Requirements
The memory requirements above do not take into account other components that are a part of Logi Symphony. These components are external to Helm chart requirements. Size your environment following the recommendations for each component. These components include:- PostgreSQL
- RabbitMQ
Installation Steps - All Modules
- Step 1 - Install a Proxy or Ingress Controller
- Step 2 - Determine Your URL
- Step 3 - Add the Symphony Helm Repository
- Step 4 - Create a Symphony values.yaml File
- Step 5 - Install Logi Symphony
- Step 6 - Get the Pods for Your Namespace
Step 1 - Install a Proxy or Ingress Controller
Install the proxy or ingress controller you want to use to provide flexible control over incoming traffic to your Symphony environment. One option is to install a NGINX Ingress Controller as in the example provided here.Note: For other install methods for the ingress controller, see https://bitnami.com/stack/nginx-ingress-controller/helm.
- Install NGINX using the following commands:
- Verify your ingress controller by running the following command to return all services in the namespace:
- If the EXTERNAL-IP is set to a value and not stuck in a pending space, the ingress controller is exposed correctly. You can additionally verify this by visiting the external IP address: you should be served an NGINX 404 page.
Step 2 - Determine Your URL
You have two options to choose from for your environment’s URL:- Use the EXTERNAL-IP returned in the previous step
- Use the URL from your cluster
Step 3 - Add the Symphony Helm Repository
Install the Helm chart with the release name of logisymphony1 on your Kubernetes cluster using default configuration settings. Adjust parameters as needed.Uninstall the Helm Chart
If you need to uninstall the Helm chart, run this command to remove all Kubernetes components associated with the chart and delete Symphony.Step 4 - Create a Symphony values.yaml
File
Use Helm to generate a values.yaml
file:
Set the Admin Password and Enable Features
Set a strong password: a combination of at least nine characters that includes upper and lower case letters, numbers, and special characters. Enable and disable features as needed:Enable the Data Gateways
To enable data gateways, add to the respective modules as needed. Visual Data DiscoveryManaged Service Values
Set the Managed service values using themanaged
section of values.yaml
.
Data Discovery Service Values
Set the Data Discovery service values using thediscovery
section of values.yaml
.
Symphony Databases
Ifglobal.postgresql.enabled
is true
, set the Postgres authentication details in the global.postgresql.auth
section.
If global.postgresql.enabled
is false
, set the database information in the managed
and discovery
sections of the values.yaml
. See the Managed Dashboards and Managed Reports helm readme and the Visual Data Discovery helm readme embedded in their respective helm charts.
The other postgres details are set in the postgresql
section of the values.yaml
as seen in the following example. Add databases for installed modules as needed.
Note: To add more databases for the Visual Data Discoveryservice , create them in this section along with the postgres database.
initdbScript.sql
with appropriate OWNER
information for the Visual Data Discovery module.
initdbScript.sql
with appropriate OWNER
information for the Managed Dashboards and Reports modules.
initdbScript.sql
with appropriate OWNER
information for the Logi AI module.
Important: This feature is considered to be released in beta for your testing purposes. Workflows and features may change before a production-ready version is released.
Data Discovery CORS Whitelisting
If you’re embedding your Visual Data Discovery content, you must add the appropriate domain names to whitelisting for CORS.RabbitMQ Deployment
By default this helm chart will deploy a RabbitMQ helm chart. The RabbitMQ configuration is passed down to sub charts Visual Data Discovery, and Managed Dashboards and Managed Reports via Environment variables set directly in thevalues.yaml
:
Important: RabbitMQ is required. If you prefer to use it outside of the Symphonyhelm chart, set
global.logi.symphony.rabbitmq.enabled
to false
and define the environment variables above to point to your accessible RabbitMQ instance.Important: Currently only the values set by default in
values.yaml
are supported.