- PDF
Step 7 - Install CDR components
- PDF
Finally, you can install the Glasswall Halo services. For these charts, ensure that you set the image tag to the corresponding tag found in the Release Notes.
The examples below are pre-populated with the values for v2.7.2.
7.1 - Engine
To integrate Halo with Reversing Labs, set the `enable_reversing_labs` variable to `true` below. Make sure to create Reversing Labs secrets in the Vault as mentioned in Step 3.
7.2 - Sync API
7.3 - API Access service
The API Access service acts as a gateway service to access CDR Platform Sync API and Policy API.
It exposes the CDR functionality via HTTP - in your environment you may require this to be done with TLS/SSL via HTTPS, if this is the case follow the instructions to install with TLS/SSL. Otherwise follow the instructions to install without.
7.3A - For deployments without TLS/SSL
7.3B - To use SSL certificates on CDR API, create a private key and certificate for the domain to be used.
Create a Kubernetes secret using the key and crt files using the command below. With this command we create a secret with the name "tls-secret" from the files server.key (private key) and server.crt (certificate). The key should not be passphrase protected in this example.
This secret can then be used to enable TLS on the ingress ensuring that the domain name is set on the command below:
7.3C - To enable API authentication
The Authentication in the Glasswall Halo API is disabled by default. If authentication needs to be enabled:
- Add two new entries to the Vault Secret vault_secret_name; one for the Organisation ID and another for Organisation Tokens. When passing multiple tokens separate them with a comma (","). As a result, the token itself cannot have a comma.
- The secrets in Vault should follow the naming convention below:
- The secret for Organisation ID should start with
organisation
and end with-id
with a number in between. For exampleorganisation1-id
,organisation2-id
,organisation3-id
etc. - The secret for the Organisation Tokens should start with
organisation
and end with-tokens
with a number in between. For exampleorganisation1-tokens
,organisation2-tokens
,organisation3-tokens
etc.
- The secret for Organisation ID should start with
- Set
configuration.AuthenticationScheme=Basic
while deploying the helm chart. For example,
To enable API key based authentication in Menlo, set configuration.MenloAuthenticationScheme=ApiKey
. Make sure menlo-api-key
secret has been added to the Vault in Step 3.
7.4 - Portal
7.4A - For deployments without TLS/SSL
To deploy the Portal service, run the below commands.
Note: the <IP-address>
mentioned in this command refers to the Load Balancer's public IP address. This can be retrieved through the "Portal & API Access" steps below.
7.4B - For deployments with TLS/SSL.
To enable TLS, add the --set ingress.tls.enable_tls=true
and --set ingress.tls.domain=<domain name>
parameters - in the below example, it will use the same Kubernetes secret that was created for the API Access to retrieve the certificates.
7.5 - MongoDB
MongoDB is a prerequisite for Policy Management API and Asynchronous API.
After MongoDB is deployed, get the connection string of the MongoDB and add it to the key value secret.
- Retrieve the connection string from the Kubernetes secret:
- Update the Oracle vault secret by adding the key-value pair:
- After updating the Oracle Vault, to sync the secrets to the Kubernetes secrets, run below command.
- Describe the `cdrplatform-secrets` kubernetes secret and make sure `mongodb-connectionstring` is synced and present in the secret. Then proceed to deploying next helm charts.
7.6 - Policy API
The Policy API manages policies for Glasswall Halo content management flags. This is an optional service, install this if you would like to create and use custom polices.
7.7 - Portal Access
Portal Access acts a backend for Portal. It enables Portal to access Policy API and Sync API
7.7A - For deployments with TLS/SSL
If TLS needs to be enabled, add the --set ingress.tls.enable_tls=true
and --set ingress.tls.domain=<domain name>
parameters - in the below example, it will use the same Kubernetes secret that was created for the API Access to retrieve the certificates.
7.7B - For deployments without TLS/SSL
7.8 - License Management
The License Management service is used to manage licenses in Glasswall Halo.
7.9 - Clean up Service
Clean up service deletes the original and rebuilt files from the persistent storage after the files are processed.
7.10 - Async API
The Asynchronous API can be deployed using the command below. A MongoDB database is a pre-requisite for the Async API.
7.11 - Metrics Collation (Removed from version 2.6.2)
The Metrics Collation service captures events from Glasswall Halo and stores them in MongoDB. Deploy only when using Halo version 2.6.1 and below.
7.12 - Metrics Projection
The Metrics Projection service is used to pull reporting data from MongoDB to display in the Portal UI.
7.13 - Report Extractor
The Report Extractor service extracts analysis reports and publishes them for reporting.
7.11 - Tally Accumulator
The Tally accumulator service tracks and maintains a tally of usage statistics.
7.12 - Portal & API Access
Use the command below to determine the External-IP associated with your cluster:
Note: External-IP will be the same as the Public IP address attached to the Oracle Cloud load balancer.
You can now use the IP returned above to navigate to the Portal and API Documentation (use https if TLS enabled):
Congratulations, you have successfully deployed Glasswall Glasswall Halo! We would love to get your thoughts on the setup process and how we can improve it, using the feedback option below.