Perform initial data bootstrap¶
Before you start¶
Goal
- Initialize the Altair SLC Hub database, Keycloak, and internal HTTPS configuration using hubctl bootstrap.
Prerequisites¶
Before running bootstrap, make sure you have completed the following:
- The initial Altair SLC Hub install (Linux) or initial Altair SLC Hub install (Windows)
- Configure licence
- Generate external certificates
- Configure ingress for external HTTPS – including:
- Creating
ingress_custom.yaml - Enabling TLS in the ingress configuration
- Pointing to external certificate file paths
If these steps are not completed, external HTTPS will not be configured and the system will not be accessible via browser.
Internal HTTPS setup
You do not need to configure internal certificates manually. Bootstrap will generate and set up internal HTTPS automatically.
Overview¶
Bootstrap is a critical initialization step that prepares Altair SLC Hub for use. Before Altair SLC Hub can be used, relevant database tables need to be created, and initial data needs to be populated into the database. This is done using the hubctl command to bootstrap the database.
The hubctl bootstrap command performs the following:
- Initializes the database – Creates all required database tables and populates initial data
- Initializes Keycloak – Sets up the Keycloak authentication server with default settings for Altair SLC Hub
- Generates internal certificates – Creates a self-signed CA and internal TLS certificates for service-to-service communication; all Altair SLC Hub services will communicate over HTTPS after bootstrap
- Generates Keycloak service account – Creates a service account for Keycloak administration.
- Applies ingress configuration – Reads your
ingress_custom.yamlfile and configures external HTTPS settings
Services will be stopped
Bootstrapping will stop all Altair SLC Hub services if they are currently running. Services must be restarted after bootstrap completes using hubctl service start.
Important distinction¶
- Bootstrap configures internal HTTPS (communication between Altair SLC Hub services). This happens automatically and requires no additional configuration.
- Bootstrap does not configure external HTTPS (browser to Altair SLC Hub access). External HTTPS is configured separately through the ingress configuration file and external certificates that you must set up before running bootstrap.
Bootstrap must be run after you have generated external certificates and configured the ingress file, and before you start services or create admin users.
Run bootstrap¶
Run the following command:
hubctl bootstrap
HTTP-only bootstrap
If you need to bootstrap Altair SLC Hub with HTTP for local troubleshooting, run:
hubctl bootstrap --nohttps
If hubctl bootstrap --nohttps fails during Keycloak initialization with HTTPS required on Windows, see Troubleshooting: hubctl bootstrap --nohttps fails with HTTPS required during Keycloak initialization on Windows.
Verification¶
On successful completion, the command outputs:
All <n> steps completed successfully
Success - bootstrap complete
Warning
Do not proceed to the next steps until you see this success message.
Using an alternate internal Certificate Authority¶
By default, bootstrapping secures internal communications using a self-signed Certificate Authority. If internal communications should be secured by an external Certificate Authority follow the additional instructions in Alternate Internal Certificate Authority.
After bootstrap completes, you may need to add the internal Certificate Authority to your Operating System's trust store.
Troubleshooting¶
Bootstrap fails or does not complete¶
Check the following:
- Verify the ingress configuration exists:
Linux:
cat /opt/altair/slchub/etc/config.d/ingress_custom.yaml
type "C:\ProgramData\Altair\SLC Hub\etc\config.d\ingress_custom.yaml"
Linux:
ls /opt/altair/slchub/var/ca/public/external/
dir "C:\ProgramData\Altair\SLC Hub\ca\public\external\"
hubctl verify licence
hubctl bootstrap