This guide explains what you need to do before you can deploy Domino FinOps, and it also discusses the various configuration options available.
Domino FinOps data is downloaded in JSON format. You can connect the JSON file to your Tableau dashboard or Power BI dashboard in order to visualize and selectively share it with different team members internally.
You’ll need to enable budgets, alerts, and billing tags in order to set up certain Domino FinOps features.
Domino offers the ability to integrate with cloud provider billing APIs, allowing for precise tracking and reporting of Domino’s cloud expenses. This integration can be set up either before or after the app is deployed.
Domino FinOps lets you retain your cost data in blob storage for long-term analysis. You’ll need a FinOps Enterprise license to use this feature. Contact your Domino representative to set up FinOps Cloud Billing integration.
Step 1: Feature flags for Domino FinOps
You’ll need to enable budgets, alerts, and billing tags in order to set up certain Domino FinOps features. To enable budgets, alerts, and billing tags:
-
Log into Domino using your administrator credentials.
-
Go to Admin > Platform settings > Feature flags.
-
Enable the feature flag
ShortLived.EnableCostBudgetsAndAlerts
to allow the use of budgets and alerts. -
Enable the feature flag
ShortLived.EnableBillingTags
to allow aggregation of cost centers by billing tags.
Step 2: Cloud integration for Domino FinOps
There are three options available for configuring FinOps cloud integration:
-
Fully automated cloud integration (AWS-only): Domino automatically provisions a cost usage report and configures the cloud billing integration.
-
Pre-provisioned cost usage report (AWS-only): You provide a pre-provisioned cost usage report with Athena. Domino configures the cloud billing integration.
-
Manually provision cloud integration: You must manually provision all the necessary resources and configure the cloud billing integration yourself.
Option 1: Set up fully automated cloud integration for AWS
Domino automates cloud billing integration for AWS users who deploy Domino using the terraform-aws-eks module. This process involves creating a cost usage report with Amazon Athena, which is then used by FinOps to provide detailed cost usage information.
To fully automate cloud integration: during installation, set the deploy manifest variable cost_analyzer.cloud_billing.enabled
to true
.
Please consult your Domino representative for advice regarding this approach.
Option 2: Configure a pre-provisioned cost usage report for AWS
If you want to use your cost usage report outside of Domino or if you already have a pre-existing Athena cost usage report, you can bring your cost usage report to Domino.
-
In your
domino.yml
configuration file, update thecost_reporting
fields with your cost usage report details:
cost_reporting:
cloud_billing:
aws:
aws_account_id: _CHANGE_ME_
athena_bucket_name: _CHANGE_ME_
athena_region: _CHANGE_ME_
athena_database: _CHANGE_ME_
athena_table: _CHANGE_ME_
athena_workgroup: _CHANGE_ME_
Option 3: Manually provision cloud integration
Non-AWS users can manually provision their cost usage report and set up FinOps cloud integration using the documentation below. To retrieve billing information from your cloud provider, contact your Domino representative to set up FinOps Cloud Billing Integration.
Step 3: Configure long-term storage for Domino FinOps
Domino FinOps lets you retain your cost data in blob storage for long-term analysis. You’ll need a FinOps Enterprise license to use this feature. Contact your Domino representative to set up FinOps Cloud Billing integration. There are three options to configure the long-term storage:
-
Fully automated federated storage: Domino provisions your S3 bucket and sets up federated storage.
-
Pre-provisioned S3 blob store: You provide a pre-provisioned S3 blob storage. Domino sets up federated storage.
-
Manually provision federated storage: You must manually provision a blob store and set up federated storage.
Option 1: Set up fully automated federated storage
AWS users can have Domino fully automate long-term storage. Domino can provision S3 buckets and set up federated storage at installation.
-
Set up fully automated long-term storage: during installation, set the deploy manifest variable
s3_costs_enabled
totrue
.
The Domino provisioned S3 blob storage <deployer-id>-cost
does not have a lifecycle by default. To store your data for a short period, update the blob storage lifecycle to the desired expiration configuration.
Option 2: Configure pre-provisioned blob storage
Domino can set up federated storage for AWS users with an existing S3 blob store.
-
To set up federated storage with an existing blob store: In your
domino.yaml
configuration file, update thecost_reporting
fields with your S3 details:
cost_reporting:
storage:
s3:
region: _CHANGE_ME_
bucket: _CHANGE_ME_
sse_kms_key_id: _CHANGE_ME_
Option 3: Manually provision federated storage
AWS and non-AWS users can manually provision their blob store and set up FinOps federated storage. To provision your blob store and set up FinOps federated storage:
-
In your Domino cluster, create a new file called
federated-store.yaml
. -
Format the contents of the file according to each cloud provider’s specifications:
-
Add a secret using
federated-store.yaml: kubectl create secret generic <secret_name> -n <namespace> --from-file=federated-store.yaml
. -
Set
.Values.kubecostModel.federatedStorageConfigSecret
to use your Kubernetes secret name.
-
Use Domino FinOps to establish budgets and send alerts to team members nearing their spending limits on compute and storage resources.
-
Learn how to deploy Domino FinOps for users.