Important
| This guide assumes you have already provisioned your target infrastructure and satisfied the prerequisites outlined in the Requirements page. |
Installing Domino can be broken down into two principal tasks:
-
Filling out the configuration file.
-
Creating the Domino custom resource.
If you are comfortable tackling all of these tasks in one workflow, you can go through the bootstrap
command covered in Bootstrap a Domino Cluster.
Otherwise, you can address each of these tasks in turn.
Tip
| This guide is intended for use when you install Domino for the first time. If you are upgrading an existing Domino deployment or migrating an existing Domino cluster to use the Platform Operator, please see the Upgrade Domino guide. |
-
Get the
$FLEETCOMMAND_AGENT_TAG
for your target release from the releases page. -
Use environment variables to set some values used by
ddlctl
CLI. This simplifies the commands you’ll run while installing Domino components:unset HISTFILE export QUAY_USERNAME=<`quay.io` username provided by Domino> export QUAY_PASSWORD=<`quay.io` password provided by Domino> export FLEETCOMMAND_AGENT_TAG=<Tag that corresponds to the version of Domino deployed>
-
Generate a configuration file:
ddlctl create config --agent-version $FLEETCOMMAND_AGENT_TAG
TipIf you are creating a configuration file for a target cloud provider, refer to the specific guide for that provider to get the correct value for the --preset
flag when running this subcommand. -
Running this command will write a configuration file to the current working directory with the name:
config-$FLEETCOMMAND_AGENT_TAG.{timestamp}.yaml
In order to install a functional Domino cluster, you will need to update the generated configuration file with the appropriate values for your target environment.
You can refer to the configuration reference pages for more details on the values you can set.
Important
| Changing the defaults in the generated configuration can affect the deployment. If you must adjust its parameters, contact a Domino representative. |
Recommended install configurations
We recommend enabling the New Relic integration while updating the install configuration:
monitoring:
prometheus_metrics: true
newrelic:
apm: true
infrastructure: true
license_key: '[Token provided by Domino]'
The New Relic integration enables Domino application monitoring via New Relic. This helps Domino monitor and proactively assist with platform infrastructure issues. Enabling the New Relic integration can reduce the time it takes to resolve support tickets.
Once you are satisfied with the configuration file, you can create the Domino custom resource. This will get picked up by the Platform Operator which will then handle the installation of all Domino components.
ddlctl create domino --config config-$FLEETCOMMAND_AGENT_TAG.{timestamp}.yaml --agent-version $FLEETCOMMAND_AGENT_TAG
If you would prefer to just generate the Domino
custom resource YAML, you can supply the --export
flag and pipe the result to a file.
When the installation completes successfully, you should see a message that says:
2019-11-26 21:20:20,214 - INFO - fleetcommand_agent.Application - Deployment complete.
Domino is accessible at $YOUR_FQDN
Dry runs
-
If you would prefer to dry run the installation, you should modify the
Domino
custom resource to put it in dry run mode:ddlctl create domino --config config-$FLEETCOMMAND_AGENT_TAG.{timestamp}.yaml --agent-version $FLEETCOMMAND_AGENT_TAG --export > domino-cluster.yaml
-
In the
domino-cluster.yaml
file, modify thespec.agent.spec
to put the operator in a dry run mode:spec: agent: spec: dryRunMode: "true"
-
Now apply the resource to the cluster:
kubectl apply -f domino-cluster.yaml -n domino-operator
Dry running an upgrade of Domino will report on the changes that will be made to the Domino cluster compared to what is (or is not) already represented in the Helm manifests in Helm storage.
Once you change dryRunMode
back to "false"
(or remove the field entirely), a reconciliation will be triggered and the Domino cluster will be installed.