Summary and Setup
This lesson traces the infrastructure that runs the UCLA Library Dataverse instance. It covers the AWS resources that provide compute, storage, and networking; the Ansible configuration that installs Dataverse and its dependencies; and the tooling that makes rebuilding and migrating the system repeatable.
It is written for people working in or being onboarded to UCLA Library data services: DSC staff, DataSquad students, and anyone who will be operating or handing off this infrastructure. The assumption is comfort with the command line and some exposure to cloud services or configuration management, but not infrastructure expertise.
By the end of this lesson you will be able to:
- Describe the components that make up a running Dataverse instance and what each does
- Navigate the three repositories that manage the UCLA Dataverse infrastructure
- Explain the division of responsibility between Terraform (infrastructure) and Ansible (configuration)
- Run the key Makefile targets for daily operations:
rebuild,baseline,reindex - Read test output and baseline comparisons to verify the system is in a known-good state
- Understand the 7-phase migration plan and what each phase accomplishes
Who this is for
- Data Science Center staff coming up to speed on what the infrastructure team built and why
- DataSquad students supporting data services and infrastructure work
- Incoming operators taking over responsibility for the Dataverse instance
- Tim and Jamie using this as a structured way to document decisions made during the 5.14 to 6.8 migration
Prerequisites
- Comfortable with the command line (navigating directories, running commands)
- Basic familiarity with Git (clone, commit, push)
- An AWS account with credentials for the
ucla-library-dscprofile, or access to the team’s shared environment
See the Setup page for installation instructions.
Introduction
You do not need to understand everything on this page at this time. The goal is only to get the tools working. By the end of this setup, you will be able to authenticate to AWS, run Terraform, and prepare a working directory.
1. AWS Account
You will need an AWS account you can log into.
During the lesson, AWS will be used to create a virtual machine and
store a small amount of configuration data.
2. Install the AWS CLI
We use the AWS CLI throughout the lesson to authenticate and confirm credentials.
If you are using a personal AWS account without Identity Center, ask the instructor for an alternative setup.
Before running aws configure sso, confirm the
following:
- IAM Identity Center is enabled in your AWS account
- You have been given:
- an SSO start URL (looks like
https://your-org.awsapps.com/start) - the AWS region for Identity Center (commonly
us-west-2orus-east-1) - permission to assume at least one AWS account role
- an SSO start URL (looks like
If you do not have this information, contact your AWS administrator.
3. Configure AWS Credentials (IAM Identity Center / SSO)
AWS authentication is changing (and that’s normal)
AWS has significantly changed how users authenticate over the last few years.
Older tutorials often reference: - long-lived access keys
(AWS_ACCESS_KEY_ID) - aws configure with
static credentials - manually managing credentials files
This lesson uses AWS IAM Identity Center (SSO), which is now the recommended approach for most organizations.
As a result: - some older guides will not match what you see here - prompts in the AWS CLI may look unfamiliar - defaults (like SSO registration scopes) are usually correct
If something feels different from past AWS experience, that’s expected.
This lesson uses IAM Identity Center, the modern AWS authentication system.
Run:
Follow the browser prompts to authenticate.
Then confirm your identity. This command doesn’t change anything. It only confirms that authentication worked.
You should see:
- Your AWS account ID
- Your IAM role ARN
- Your user ID
4. Install Terraform
Verify installation:
5. Create a Working Directory
Create a folder where your Terraform configuration files will live:
6. (Optional) Clone the Lesson Repository
If you want the example files from this lesson:
- Install AWS CLI, Terraform, and Git before beginning the lesson
- Use
aws configure ssoto authenticate with AWS Identity Center - Use
terraform versionandaws --versionto verify installation - Create a dedicated working directory for Terraform files