# Self-Hosted Deployment

> Learn how to deploy and manage Self-Hosted Deployment on your own Kubernetes cluster.

# Self-Hosted Deployment

- [Overview](https://docs.unity.com/en-us/self-hosted-deployment.md): Learn how to deploy and manage Self-Hosted Deployment on your own Kubernetes cluster.

## Deploy on Kubernetes (recommended)

- [Deploy on Kubernetes (recommended)](https://docs.unity.com/en-us/self-hosted-deployment/shd.md): Deploy Unity Asset Manager on your own Kubernetes cluster, in your datacenter or on a managed service such as Amazon EKS or Azure AKS.
- [Introduction to Self-Hosted Deployment on Kubernetes](https://docs.unity.com/en-us/self-hosted-deployment/shd/overview.md): Understand where you can host Self-Hosted Deployment, what your organization operates, and what Unity provides.
- [Release notes](https://docs.unity.com/en-us/self-hosted-deployment/shd/release-notes.md): Learn about new features, improvements, and changes in each release of Self-Hosted Deployment.

### Installation

- [Installation](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation.md): Install Self-Hosted Deployment on your Kubernetes cluster with the shdctl command-line tool.
- [Infrastructure overview](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/infrastructure.md): Learn what Self-Hosted Deployment installs in your Kubernetes cluster and what you provide.
- [Hardware requirements](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/hardware-requirements.md): Plan the physical infrastructure for a baseline production deployment in your own datacenter.
- [Prerequisites](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/prerequisites.md): Ensure that you have the required configuration, tooling, and permissions.
- [Deployment](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/deployment.md): Pull, configure, and deploy the solution on your Kubernetes cluster with shdctl.
- [Set up the identity subsystem](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/set-up-identity-subsystem.md): Set up the identity subsystem, based on Keycloak.
- [Costs](https://docs.unity.com/en-us/self-hosted-deployment/shd/installation/costs.md): Estimate the hardware investment and recurring operating cost categories for a deployment in your own datacenter.

### Maintenance

- [Maintenance](https://docs.unity.com/en-us/self-hosted-deployment/shd/maintenance.md): Upgrade, migrate, and perform health checks on your Self-Hosted Deployment.
- [Upgrade](https://docs.unity.com/en-us/self-hosted-deployment/shd/maintenance/upgrade.md): Pull a more recent release, sync updated images, and redeploy with shdctl.
- [Migration guide](https://docs.unity.com/en-us/self-hosted-deployment/shd/maintenance/migration.md): The manual steps each Self-Hosted Deployment release needs beyond the standard upgrade
- [Health checks](https://docs.unity.com/en-us/self-hosted-deployment/shd/maintenance/health-checks.md): Run health checks on your Self-Hosted Deployment.

## shdctl

- [shdctl](https://docs.unity.com/en-us/self-hosted-deployment/shdctl.md): Manage Self-Hosted Deployment releases on customer-operated Kubernetes clusters with the shdctl command-line tool.
- [Architecture](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/architecture.md): Learn about shdctl trust boundaries, three usage modes, and what shdctl accesses on the network and in your cluster.
- [Workflows](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/workflows.md): Run shdctl in your CI pipeline with ArgoCD, or use it for generate-only, air-gapped, or direct Helm deployments
- [Installation](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/install.md): Install the shdctl command-line tool, configure registry credentials, and review external CLI requirements
- [Manifest reference](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/manifest.md): Review the manifest.yaml schema, with an annotated example, per-chart value overrides, object storage settings, and a custom CA bundle.

### shdctl commands

- [shdctl commands](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands.md): Validate, pull, mirror, and deploy Self-Hosted Deployment releases with shdctl commands.
- [shdctl global flags and command reference](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/global-flags.md): Find the global flags and commands you can use to deploy and manage Self-Hosted Deployment releases with shdctl.
- [Artifact](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/artifact.md): Mirror Docker images and ORAS artifacts between registries, and verify the result
- [Cluster](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/cluster.md): Validate that your Kubernetes cluster meets the deployment prerequisites before you deploy
- [Configure](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/configure.md): Set, view, and delete registry credentials.
- [Manifest](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/manifest.md): Initialize, validate, and inspect the shdctl manifest schema.
- [Release](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/release.md): Pull, generate, deploy, and uninstall releases.
- [Secret](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/commands/secret.md): Generate and deploy Kubernetes Secret manifests from a secrets.import.yaml input, and recover that input from a cluster.
- [Troubleshooting](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/troubleshooting.md): Common shdctl errors and resolutions.
- [Changelog](https://docs.unity.com/en-us/self-hosted-deployment/shdctl/changelog.md): Review the shdctl command-line tool release history, including new features, fixes, and breaking changes.

## AWS Terraform package

- [AWS Terraform package](https://docs.unity.com/en-us/self-hosted-deployment/aws.md): Deploy and manage the Terraform and ArgoCD package for Amazon EKS.
- [Introduction to AWS deployment](https://docs.unity.com/en-us/self-hosted-deployment/aws/aws-overview.md): Understand what an existing AWS deployment includes, what it creates, and what you operate.

### Installation

- [Installation](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation.md): Deploy Unity Asset Manager into an AWS account that you own.
- [Overview of the infrastructure](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/infrastructure.md): Learn which resources the deployment creates and how to securely expose them through the external load balancer.
- [Prerequisites](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/prerequisites.md): Ensure that you have the required configuration, tooling, and permissions.
- [Deployment](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/deployment.md): Deploy Self-Hosted Deployment to Amazon Web Services and monitor the deployment.

#### Postdeployment

- [Postdeployment](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/postdeployment.md): Complete the setup of Self-Hosted Deployment before running it in production.
- [Set up the identity subsystem](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/set-up-identity-subsystem.md): Set up the identity subsystem, based on Keycloak.
- [Set up backups for Percona Server for MongoDB](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/set-up-psmdb.md): Set up backups for your database infrastructure in your own Kubernetes cluster with Percona Server for MongoDB (PSMDB).
- [Set up Percona Monitoring and Management](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/set-up-pmm.md): Set up the monitoring of your database infrastructure with Percona Monitoring and Management (PMM).
- [Migrate data to Percona Server for MongoDB](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/migrate-to-psmdb.md): Migrate your data from the MongoDB virtual machine (VM) to Percona Server for MongoDB (PSMDB) in your Kubernetes cluster.
- [Security](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/security.md): Enforce security for Self-Hosted Deployment in Amazon Web Services.
- [Service requirements](https://docs.unity.com/en-us/self-hosted-deployment/aws/installation/service-requirements.md): Estimate Amazon service requirements for Self-Hosted Deployment.

### Maintenance

- [Maintenance](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance.md): Increase scalability and service quotas, rotate secrets, perform health checks, restore databases, and perform upgrades.
- [Autoscaling of pods](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/pod-autoscaling.md): Increase the scalability of the system.
- [Backup and recovery](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/backup-and-recovery.md): Restore your databases in an emergency.
- [Test and troubleshoot your solution](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/test-and-troubleshoot.md): Diagnose and resolve issues with your deployment.
- [Health checks](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/health-checks.md): Check that the services in your Kubernetes cluster are healthy.
- [Rotate secrets](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/rotate-secrets.md): Regenerate the secrets in AWS Secrets Manager.
- [Increase service limits](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/service-limits.md): Increase the quotas of services whose limits you have reached.
- [Upgrade](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/upgrade.md): Install a more recent package, apply the required changes in configuration, and upgrade the Helm charts.
- [Migrate Mini-USF from version 1 to version 2](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/migrate-mini-usf-to-v2.md): Migrate Mini-USF to version 2, which decouples Keycloak from entities such as projects.
- [Move Unity Licensing Server storage to EBS](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/move-licensing-server-ebs.md): Move the Unity Licensing Server volume to EBS for version 1.4.
- [Migrate Elasticsearch to the ECK operator](https://docs.unity.com/en-us/self-hosted-deployment/aws/maintenance/migration-elasticsearch-eck.md): Migrate from the deprecated Elasticsearch StatefulSet chart to the ECK operator for version 1.4.

### Release notes

- [Release notes](https://docs.unity.com/en-us/self-hosted-deployment/aws/release-notes.md): Learn about new features, improvements, and fixed issues.
- [Release notes 1.4](https://docs.unity.com/en-us/self-hosted-deployment/aws/release-notes-1-4.md): Learn about new features, improvements, and fixed issues in version 1.4 of Self-Hosted Deployment in Amazon Web Services.
- [Release notes 1.3](https://docs.unity.com/en-us/self-hosted-deployment/aws/release-notes-1-3.md): Learn about new features, improvements, and fixed issues in version 1.3 of Self-Hosted Deployment in Amazon Web Services.
- [Release notes 1.2](https://docs.unity.com/en-us/self-hosted-deployment/aws/release-notes-1-2.md): Learn about new features, improvements, and fixed issues in version 1.2 of Self-Hosted Deployment in Amazon Web Services.
- [Release notes 1.1](https://docs.unity.com/en-us/self-hosted-deployment/aws/release-notes-1-1.md): Learn about new features, improvements, and fixed issues in version 1.1 of Self-Hosted Deployment in Amazon Web Services.

## Azure Marketplace

- [Azure Marketplace](https://docs.unity.com/en-us/self-hosted-deployment/azure.md): Deploy and manage the Azure package, through Azure Marketplace or manually.
- [Introduction to Azure deployment](https://docs.unity.com/en-us/self-hosted-deployment/azure/azure-overview.md): Understand what an existing Microsoft Azure deployment includes, what it creates, and what you operate.

### Installation

- [Installation](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation.md): Deploy Unity Asset Manager through Azure Marketplace, or manually.
- [Deployment modes](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/deployment-modes.md): Understand the differences between deployment modes.

#### Deployment through Azure Marketplace

- [Deployment through Azure Marketplace](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/marketplace.md): Deploy Self-Hosted Deployment through the Azure Marketplace offer.
- [Overview of the infrastructure](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/infrastructure.md): Learn which resources the deployment creates and which endpoints it exposes.
- [Prerequisites](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/prerequisites.md): Collect and prepare the required data, from Unity and from the customer.
- [Deployment](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/deployment.md): Initiate and monitor deployment for the Azure Marketplace offer.

##### Postdeployment

- [Postdeployment](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/postdeployment.md): Complete the setup of Self-Hosted Deployment before running it in production.
- [Set up network integration](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/set-up-network-integration.md): Set up network integration with the customer environment.
- [Set up the identity subsystem](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/set-up-identity-subsystem.md): Set up the identity subsystem, based on Keycloak.
- [Azure Monitor integration](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/monitor-integration.md): Set up Azure Monitor alert rules for the solution.
- [Firewall rules for the outbound internet access](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/firewall-rules-for-outbound-internet-access.md): Configure the firewall rules required to restrict outbound internet access.
- [Manual deployment](https://docs.unity.com/en-us/self-hosted-deployment/azure/installation/bespoke.md): Deploy Self-Hosted Deployment to Microsoft Azure manually.

### Maintenance

- [Solution monitoring](https://docs.unity.com/en-us/self-hosted-deployment/azure/maintenance/monitor-solution.md): Access the logs and metrics to monitor the health of your deployment.

## Administration

- [Administration](https://docs.unity.com/en-us/self-hosted-deployment/admin.md): Manage your organization, identity, and projects in your Self-Hosted Deployment.
- [Introduction to Keycloak](https://docs.unity.com/en-us/self-hosted-deployment/admin/keycloak-introduction.md): Understand the identity component that authenticates users and stores service account keys in Self-Hosted Deployment.
- [Access the Keycloak admin console](https://docs.unity.com/en-us/self-hosted-deployment/admin/keycloak-admin-console.md): Sign in to the Keycloak admin console in Amazon Web Services or Microsoft Azure.
- [Change the default admin credentials](https://docs.unity.com/en-us/self-hosted-deployment/admin/change-admin-credentials.md): Replace the default Keycloak admin password the first time you sign in to the admin console.
- [Complete initial solution onboarding](https://docs.unity.com/en-us/self-hosted-deployment/admin/solution-onboarding.md): Finalize configuration of the organization and the first user.

### Single sign-on

- [Single sign-on](https://docs.unity.com/en-us/self-hosted-deployment/admin/single-sign-on.md): Set up single sign-on with OpenID Connect for your Self-Hosted Deployment.
- [Introduction to single sign-on](https://docs.unity.com/en-us/self-hosted-deployment/admin/single-sign-on/sso-overview.md): Understand how Self-Hosted Deployment uses OpenID Connect for single sign-on, and how just-in-time provisioning creates user accounts.
- [Integrate with the identity provider](https://docs.unity.com/en-us/self-hosted-deployment/admin/single-sign-on/integrate-with-idp.md): Set up integration so that Keycloak delegates authentication to an external enterprise identity provider.
- [Configure the user experience for SSO](https://docs.unity.com/en-us/self-hosted-deployment/admin/single-sign-on/configure-user-experience.md): Set SSO as the only sign-in experience for local users.
- [Rotate the client secret of the SSO application](https://docs.unity.com/en-us/self-hosted-deployment/admin/single-sign-on/rotate-client-secret.md): Rotate the client secret of the SSO application to minimize the risk of unauthorized access.

### Organizations and projects

- [Organizations and projects](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects.md): Set up and update your organization and projects.
- [Create a project](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects/create-project.md): Create a new project to organize your assets.
- [Rename a project](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects/rename-project.md): Change the name of a project.
- [Archive a project](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects/archive-project.md): Make a project inactive and prevent users from accessing it.
- [Unarchive a project](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects/unarchive-project.md): Make a previously archived project active again.
- [Delete a project](https://docs.unity.com/en-us/self-hosted-deployment/admin/organizations-projects/delete-project.md): Erase a project with no recovery option.

### Users and service accounts

- [Users and service accounts](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts.md): Manage users, service accounts, and access in your Self-Hosted Deployment.
- [Create a user](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/create-user.md): Manually create users if you work in local-only mode or without SSO-only configuration.
- [Manage access for a user](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/manage-access-for-user.md): Choose a set of permissions for each user.
- [Create a service account](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/create-service-account.md): Create service accounts for programmatic access to Unity services.
- [Manage access for a service account](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/manage-access-for-service-account.md): Choose a set of permissions for each service account.
- [Manage keys for a service account](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/manage-keys-for-service-account.md): Create or delete service account credentials.
- [Authenticate with a service account](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/authenticate-with-service-account.md): Use Basic or Bearer authentication when accessing APIs with a service account.
- [Delete a service account](https://docs.unity.com/en-us/self-hosted-deployment/admin/users-service-accounts/delete-service-account.md): Completely remove a service account.

### Groups

- [Groups](https://docs.unity.com/en-us/self-hosted-deployment/admin/groups.md): Use groups to control user access in bulk.
- [Manage groups](https://docs.unity.com/en-us/self-hosted-deployment/admin/groups/group-management.md): Create, update, delete groups, and manage their membership.
- [Grant and revoke access from groups](https://docs.unity.com/en-us/self-hosted-deployment/admin/groups/group-based-access.md): Manage access to projects using groups.

### Licensing

- [Licensing](https://docs.unity.com/en-us/self-hosted-deployment/admin/licensing.md): Configure and access Licensing Server in Self-Hosted Deployment, and manage users and licenses.
- [Introduction to licensing](https://docs.unity.com/en-us/self-hosted-deployment/admin/licensing/licensing-introduction.md): Understand how licenses, seats, and role-based access control work together in Self-Hosted Deployment.
- [Configure and access Licensing Server](https://docs.unity.com/en-us/self-hosted-deployment/admin/licensing/configure-access-licensing-server.md): Grant access to Licensing Server and access its dashboard.
- [Install licenses](https://docs.unity.com/en-us/self-hosted-deployment/admin/licensing/install-licenses.md): Request, import, and verify licenses in Licensing Server before assigning seats to users.
- [Manage users and seats](https://docs.unity.com/en-us/self-hosted-deployment/admin/licensing/manage-users-seats.md): Import users and manage seat assignments.

### upc-cli tool

- [upc-cli tool](https://docs.unity.com/en-us/self-hosted-deployment/admin/upc-cli.md): Perform global administration and bulk access management tasks.
- [Run the upc-cli tool](https://docs.unity.com/en-us/self-hosted-deployment/admin/upc-cli/run-upc-cli.md): Prepare your environment and run upc-cli.

#### Usage scenarios

- [Usage scenarios](https://docs.unity.com/en-us/self-hosted-deployment/admin/upc-cli/upc-cli-scenarios.md): Apply the upc-cli tool to common administration scenarios.
- [Manage organization feature flags](https://docs.unity.com/en-us/self-hosted-deployment/admin/upc-cli/upc-cli-scenarios/upc-cli-feature-flags.md): Add, update, or delete feature flags for an organization.
- [Perform bulk user access management](https://docs.unity.com/en-us/self-hosted-deployment/admin/upc-cli/upc-cli-scenarios/upc-cli-bulk-rbac.md): Grant or revoke access for multiple users at once.

### Custom branding

- [Custom branding](https://docs.unity.com/en-us/self-hosted-deployment/admin/custom-branding.md): Customize Unity Dashboard with your organization’s branding.
- [Enable custom branding](https://docs.unity.com/en-us/self-hosted-deployment/admin/custom-branding/enable-custom-branding.md): Configure Unity Dashboard to use your company logo and color palette.
- [Custom branding reference](https://docs.unity.com/en-us/self-hosted-deployment/admin/custom-branding/custom-branding-reference.md): Change Unity Dashboard appearance with custom branding options.
- [Security](https://docs.unity.com/en-us/self-hosted-deployment/security-overview.md): Review the shared-responsibility model, identity and access management, and infrastructure and data protection for Self-Hosted Deployment of Unity Asset Manager.
