Setting up Vespa Cloud Enclave requires:
Register at Vespa Cloud or use an existing tenant. Note that the tenant must be on a paid plan.
Contact support@vespa.ai stating which tenant should be on-boarded to use Vespa Cloud Enclave. Also include the AWS account ID to associate with the tenant.
One account can host all your Vespa applications, there is no need for multiple tenants or accounts.
The same AWS account used in step two must be prepared for deploying Vespa applications. Use Terraform to set up the necessary resources using the modules published by the Vespa team.
Modify the multi-region Terraform files for your deployment.
If you are unfamiliar with Terraform: It is a tool to manage resources and their configuration in various cloud providers, like AWS and GCP. Terraform has published an AWS tutorial, and we strongly encourage Enclave users to read and follow the Terraform recommendations for CI/CD.
The Terraform module we provide is regularly updated to add new required resources or extra permissions for Vespa Cloud to automate the operations of your applications. In order for your enclave applications to use the new features you must re-apply your terraform templates with the latest release. The notification system will let you know when a new release is available.
By default, all applications are deployed on resources in Vespa Cloud accounts. To deploy in your Enclave account, update deployment.xml to reference the account used in step two:
<deployment version="1.0" cloud-account="aws:123456789012">
<dev />
</deployment>
Useful resources are getting started and migrating to Vespa Cloud - put deployment.xml next to services.xml.
After a successful deployment to the dev environment, iterate on the configuration to implement your application on Vespa. The dev environment is ideal for this, with rapid deployment cycles.
For production serving, deploy to the prod environment - follow the steps in production deployment.
To tear down a Vespa Cloud Enclave system, do the steps above in reverse order:
It is important to undeploy the Vespa application(s) first. After running the Terraform, Vespa Cloud cannot manage the resources allocated, so you must clean up these yourself.