Skip to content

Latest commit

 

History

History
462 lines (419 loc) · 14.6 KB

README.md

File metadata and controls

462 lines (419 loc) · 14.6 KB

Deploy Bold BI using Helm

This chart installs Bold BI on Kubernetes. You can create Kubernetes cluster in cloud cluster providers(GKE,AKS and EKS). Please follow the below documentation for Bold BI deployment in a specific cloud environments.

Deployment prerequisites

Note: Note the Ingress IP address and map it with a DNS to crafting values.yaml when installing Bold BI with helm chart.

Get Repo Info

  1. Add the Bold BI helm repository
helm repo add boldbi https://boldbi.github.io/boldbi-kubernetes
helm repo update
  1. View charts in repo
helm search repo boldbi

NAME            CHART VERSION   APP VERSION     DESCRIPTION
boldbi/boldbi   9.1.73           9.1.73         Embed powerful analytics inside your apps and t...

See helm repo for command documentation.

Install Chart

For Helm chart, you'll need to craft a values.yaml.

  • For GKE please download the values.yaml file here.
  • For EKS please download the values.yaml file here.
  • For AKS please download the values.yaml file here.
  • For OKE please download the values.yaml file here.

Name Description
namespace The namespace in which the Bold BI resources will be deployed in the kubernetes cluster.
The default namespace is bold-services
appBaseUrl * Domain with http/https protocol. Follow the SSL Configuration to configure SSL certificate for https protocol after deploying Bold BI in your cluster.
optionalLibs These are the client libraries used in Bold BI by default.
'mongodb,mysql,influxdb,snowflake,oracle,google,clickhouse'
Please refer to Optional Client Libraries section to know more.
clusterProvider The type of kubernetes cluster provider you are using.
The recommended values are 'gke,eks and aks'
persistentVolume * Please refer to this section to know more on how to set Persistant Volumes for Bold BI.
loadBalancer Currently we have provided support for Nginx and Istio as Load Balancers in Bold BI. Please refer to this section for configuring Load balancer for Bold BI.
autoscaling By default autoscaling is enabled in Bold BI. Please refer to this section to configure autoscaling in Bold BI.
bingMapWidget Please refer to this section to configure Bing Map Widget in Bold BI.
customLocalePath Custom locale file path for Localization.
customSizePdfExport To utilize a customized page size for A4 PDF export, set this feature to true. By default, this feature is set to false.
browserTimeZone If you need to use Browser time zone feature , enable this to true. By default this feature will be set to false.
useSiteIdendifier The variable is optional, and the default value is TRUE. By default, all sites in Bold BI require a site identifier, which differentiates sites on the same domain. That is https://example.com/bi/site/ You can ignore the site identifier by setting the value as FALSE. If the site identifier is disabled, each site requires a unique domain.
AppSettings__EnableQueryMetricsInDebugFiles If the query metrics needs to be logged in debug files, enable this to true. By default, this option is set to false.
AppSettings__EnableQueryMetricsWithQueryInDebugFiles If the query and query metrics needs to be logged in debug files, enable this to true. By default, this option is set to false.
azureApplicationInsights:
connectionString: ""
Integrating Azure Application Insights with Bold BI Enterprise Edition enables you to track and visualize your application’s performance, detect issues, and enhance your application’s overall reliability.
tolerationEnable: false
tolerations:
Tolerations allow the pods to be scheduled into nodes with matching taints. Set this to true if you use tolerations in your cluster. If you need more than one toleration, you can add multiple tolerations below.
nodeAffinityEnable: false
nodeAffinity:
Node affinity ensures that the pods are scheduled into nodes with matching labels. Set this to true if you use node affinity in your cluster.
podAffinityEnable: false Pod affinity ensures that the pods are scheduled into nodes with matching pods. Set this to true if you use pod affinity in your cluster
podAntiAffinityEnable: false Pod anti-affinity ensures that the pods are not scheduled into nodes with matching pods. Set this to true if you use pod anti-affinity in your cluster.

Environment variables for configuring Application Startup in backend

The following environment variables are optional. If not provided, a manual Application Startup configuration is needed.

Name Description
licenseKey License key of Bold BI
email * It should be a valid email.
password * It should meet our password requirements.

Note:
Password must meet the following requirements. It must contain,At least 6 characters, 1 uppercase character, 1 lowercase character, 1 numeric character, 1 special character
dbType * Type of database server can be used for configuring the Bold BI.

The following DB types are accepted:
1. mssql – Microsoft SQL Server/Azure SQL Database
2. postgresql – PostgreSQL Server
3. mysql – MySQL/MariaDB Server
dbHost * Name of the Database Server
dbPort The system will use the following default port numbers based on the database server type.
PostgrSQL – 5432
MySQL -3306

Please specify the port number for your database server if it is configured on a different port.

For MS SQL Server, this parameter is not necessary.
dbUser * Username for the database server

Please refer to [this documentation](https://help.boldbi.com/embedded-bi/faq/what-are-the-database-permissions-required-to-set-up-bold-bi-embedded/) for information on the user's permissions.
dbPassword * The database user's password
dbName If the database name is not specified, the system will create a new database called bold-services.

If you specify a database name, it should already exist on the server.
maintenanceDB For PostgreSQL DB Servers, this is an optional parameter.
The system will use the database name `postgres` by default.
If your database server uses a different default database, please provide it here.
dbAdditionalParameters If your database server requires additional connection string parameters, include them here.

Connection string parameters can be found in the official document.
My SQL: https://dev.mysql.com/doc/connector-net/en/connector-net-8-0-connection-options.html
PostgreSQL: https://www.npgsql.org/doc/connection-string-parameters.html
MS SQL: https://docs.microsoft.com/en-us/dotnet/api/system.data.sqlclient.sqlconnection.connectionstring

Note: A semicolon(;) should be used to separate multiple parameters.
dbSchema A database schema defines the structure, organization, and constraints of data within a database, including tables, fields, relationships, and indexes

In MSSQL, the default schema is dbo.
In PostgreSQL, the default schema is public.

Both schemas contain tables and other database objects by default.

Environment variables for configuring Branding in backend

The following environment variables are optional. If they are not provided, Bold BI will use the default configured values.

Name Description
mainLogo This is header logo for the applicationand the preferred image size is 40 x 40 pixels.
loginLogo This is login logo for the application and the preferred image size is 200 x 40 pixels.
emailLogo This is email logo, and the preferred image size is 200 x 40 pixels.
favicon This is favicon and the preferred image size is 40 x 40 pixels.
footerLogo This is powered by logo and the preferred size is 100 x 25 pixels.

Note:
• All the branding variables are accepted as URL.
Ex: https://example.com/loginlogo.jpg
Image type: png, svg, jpg, jpeg.
• If you want to use the custom branding, provide the value for all branding variables If all variable values are given, application will use the branding images, otherwise it will take the default logos.
siteName This is organization name.
If the value is not given, the site will be deployed using the default name.
siteIdentifier This is site identifier, and it will be the part of the application URL.
If the value is not given, the site will be deployed using the default value.

Note: Items marked with * are mandatory fields in values.yaml

Run the following command to delpoy Bold BI in your cluster.

helm install [RELEASE_NAME] boldbi/boldbi -f [Crafted values.yaml file]

Ex: helm install boldbi boldbi/boldbi -f my-values.yaml

Refer here for advanced configuration including SSL termination, optional client libraries, etc.

See helm install for command documentation.

Upgrade

  • Run the following command to get the latest version of Bold BI helm chart.

    helm repo update
  • Create a new YAML file or update the existing one with changes such as a new image tag, environment variables, and other configuration details. You can access the latest updated YAML file from the location below:

    boldbi/values.yaml

  • Run the below command to apply changes in your Bold BI release or upgrading Bold BI to latest version.

    helm upgrade [RELEASE_NAME] boldbi/boldbi -f [Crafted values.yaml file]

    Ex: helm upgrade boldbi boldbi/boldbi -f my-values.yaml

Uninstall Chart

helm uninstall [RELEASE_NAME]

Ex: helm uninstall boldbi

This removes all the Kubernetes components associated with the chart and deletes the release.

See helm uninstall for command documentation.

Application Startup

Configure the Bold BI On-Premise application startup to use the application. Please refer the following link for more details on configuring the application startup.

https://help.boldbi.com/embedded-bi/application-startup