Realm9 Logo
Search documentation...

Environment Management

Environments in Realm9 represent any infrastructure setup — development servers, staging clusters, production systems, or specialised test environments. They are the central resource that teams book, track costs against, and automate with Terraform.

Overview

Each environment can be:

  • Booked by teams with configurable approval workflows
  • Tracked for hourly costs and utilisation
  • Automated through linked Terraform workspaces
  • Extended with custom fields, software tracking, and access credentials
  • Compared side by side with other environments
  • Shared across multiple teams concurrently (with concurrency limits)

Environments List

Navigate to Environments in the sidebar to see all environments your organisation has access to.

  • Status filter — filter by operational status: Available, Occupied, Under Maintenance, Preparing, Offline
  • Provisioning status filter — filter by provisioning state: Unprovisioned, Provisioning, Provisioned, Failed, etc.
  • Environment Type — filter by your organisation's defined types
  • Needs Approval — toggle to show only environments that require booking approval

View Modes

Switch between three views using the toolbar:

  • Grid — card-based overview of each environment
  • Table — sortable, dense list view with all key fields
  • Calendar — visualise environment bookings on a monthly calendar

Summary Cards

The top of the list shows five status summary cards giving a quick count breakdown:

  • Available
  • Occupied
  • Under Maintenance
  • Preparing
  • Offline

Export

Export the current list view as CSV or JSON using the export button in the toolbar. Exports respect active filters.

Pagination

Control how many environments appear per page: 6, 12, 24, or 48.


Creating Environments

  1. Navigate to Environments in the sidebar
  2. Click New Environment
  3. Fill in the core details:

Basic Information

  • Name — unique identifier for the environment
  • Display Name — optional friendly name shown in the UI
  • Description — free-text description
  • Environment Type — select from your organisation's configured types
  • Lifecycle Stage — Development, Testing, Staging, Production, or Deprecated
  • Status — initial operational status (Available, Under Maintenance, etc.)
  • Hourly Cost — used for cost tracking and FinOps reporting
  • Is Shared — if enabled, multiple teams can book the environment concurrently (set max concurrent teams: 2–20)

Booking Settings

  • Enable or disable bookings
  • Require approval for all bookings
  • Set maximum booking duration (hours)
  • Configure auto-release after booking ends

Maintenance Windows

Define scheduled maintenance periods. During a maintenance window, the environment is automatically set to Under Maintenance and restored afterwards. Fields include:

  • Start and end time
  • Recurrence (one-off or repeating)
  • Notification lead time

Terraform Workspaces

Link one or more Terraform workspaces to the environment:

  • Environment Workspaces — workspaces for provisioning the environment infrastructure itself
  • Booking Provisioning — a workspace triggered automatically when a booking starts, with optional buffer time before start

CMDB Import

If ServiceNow integration is configured, you can import an existing CMDB Configuration Item when creating the environment, pre-populating fields from ServiceNow.

Custom Fields

Any custom field groups enabled by your admin appear at the bottom of the creation form.

  1. Click Create

Environment Types

Environment types are configured by your organisation (not a fixed list). Common examples include Development, Staging, Production, Testing, and Sandbox — but admins can define any types that match your team's needs.


Status Systems

Environments have two independent status dimensions:

Operational Status

Reflects the current availability of the environment:

StatusDescription
AvailableReady to be booked
OccupiedCurrently booked and in use
Under MaintenanceUndergoing maintenance, not bookable
PreparingBeing set up or configured
OfflineInactive or decommissioned

Provisioning Status

Reflects the Terraform provisioning state of the environment:

StatusDescription
UnprovisionedNo Terraform provisioning applied
ProvisioningTerraform apply in progress
ProvisionedSuccessfully provisioned
Provision FailedTerraform apply failed
DestroyingTerraform destroy in progress
DestroyedInfrastructure has been destroyed
Destroy FailedTerraform destroy failed

Environment Detail Tabs

Each environment has a set of tabs. Admins can enable and reorder tabs via Settings → Custom Fields.

Overview

Core identity, ownership, status, lifecycle stage, cost information, and recent activity feed.

Booking Control

Booking settings for the environment:

  • Enable or disable bookings
  • Require approval for all bookings
  • Set maximum booking duration (hours)
  • Configure auto-release after booking ends
  • Link Terraform workspaces for auto-provisioning on booking start (with buffer time)

Access Credentials

Store encrypted access details for the environment — endpoints, credentials, keys, and freeform instructions. Fields can be marked as sensitive; sensitive values are hidden by default and revealed on demand. Visible to PROVISIONER and above only.

Software & Services

Track software and applications running on the environment:

  • Name, version, type (Database, Web Server, Cache, etc.)
  • Notes per entry
  • Add, edit, and remove entries

Documentation

Free-form markdown documentation and notes associated with the environment.

Terraform Workspace

View and manage linked Terraform workspaces directly from the environment — trigger plans and applies, view run history. Visible to PROVISIONER and above.

CMDB (ServiceNow)

If ServiceNow integration is configured, this tab shows synced CMDB data for the environment's configuration item. Fields can be mapped from ServiceNow CI attributes.

Custom Field Groups

Any custom field groups enabled by your admin appear as additional tabs with organisation-specific fields.


Environment Requests

Path: /environment-requests

Environment Requests are formal provisioning requests for environments that do not yet exist. Users submit a request describing what they need; admins review, approve, and provision the environment, then mark it as implemented.

Submitting a Request

  1. Navigate to Environment Requests in the sidebar
  2. Click New Request
  3. Fill in the request form:
FieldNotes
TitleShort name for the request
DescriptionFull description of the environment needed
JustificationBusiness reason for the request
Environment TypeType of environment being requested
Software RequirementsList of software with versions needed on the environment
Max Concurrent TeamsMaximum number of teams that should be able to use the environment simultaneously
Supporting DocumentsFile attachments to support the request
  1. Submit — if a matching approval workflow is configured, it starts automatically

If the ServiceNow integration is configured and enabled for your organisation, a ServiceNow card appears on the form with a toggle (on by default). You can turn it off before submitting if you do not want a ticket created. When left on, the ticket is created as part of the submission and the resulting ticket number and link are stored on the request record.

Request Statuses

StatusMeaning
PendingSubmitted, not yet reviewed
Under ReviewAn admin has opened the request and is reviewing it
ApprovedApproved through the workflow — environment can now be provisioned
RejectedRequest was rejected
ImplementedEnvironment has been provisioned and linked to this request
CancelledRequester or admin cancelled the request
ExpiredRequest was not actioned within its validity period

Request Views

The Environment Requests page supports two views:

  • List view — filterable table with status, type, requester, and date
  • Calendar view — requests plotted on a calendar by submission date

Managing Requests

  • Edit — requesters can edit a request while it is in Pending status
  • Cancel — requesters can cancel their own pending requests
  • Comments — both requesters and reviewers can leave comments on a request
  • Download documents — attached files can be downloaded from the request detail page
  • Once a request reaches Implemented, it links to the resulting Environment record

See Approvals for how request approval workflows are configured.


Comparing Environments

Use the environment compare tool to view two environments side by side across seven comparison sections:

  1. Basic Info — name, type, status, lifecycle stage, description
  2. Technical Specs — configuration, capacity, and infrastructure details
  3. Cost Analysis — hourly cost, estimated monthly cost, and utilisation
  4. Performance — metrics and SLA-related attributes
  5. Security — compliance tags, access credential summary
  6. Software & Access — installed software and credential count
  7. Ownership — team, owner, created/updated dates

Export the comparison as CSV using the export button.

To compare environments:

  1. Navigate to Environments
  2. Select environments to compare using the compare action (checkbox or compare icon on each card/row)
  3. View differences highlighted side by side

Booking an Environment

  1. Open an environment and click Book
  2. Set the start and end time
  3. Provide a title and business justification
  4. Submit — if approval is required, approvers are notified automatically

See Bookings for full booking documentation.


Environment Tags

Organise and filter environments using tags:

  • Cost Centre — for budget tracking
  • Project — link to specific projects
  • Compliance — PCI, HIPAA, SOC 2, etc.
  • Technology — AWS, Azure, Kubernetes, etc.

Best Practices

Naming Conventions

Use clear, consistent naming:

<project>-<environment>-<region>

Examples:
- web-app-dev-us-east
- api-staging-eu-west
- db-prod-us-west

Lifecycle Stages

Set the lifecycle stage to reflect where the environment sits in your delivery pipeline:

  • Development — active development work
  • Testing — QA and test workloads
  • Staging — pre-production validation
  • Production — live workloads
  • Deprecated — scheduled for decommission

Cost Tracking

Set an hourly cost on each environment to enable:

  • Budget monitoring in FinOps
  • Utilisation reports
  • Cost allocation by team or project

Shared Environments

For environments that multiple teams need to use simultaneously (e.g. a shared database or test network), enable Is Shared and set the maximum concurrent teams. Bookings will be allowed up to that concurrency limit without conflict.

Access Control

Realm9 uses role-based access:

  • VIEWER — read-only access to environments
  • USER — can view and book environments
  • PROVISIONER — can manage Terraform, access credentials, and booking provisioning
  • ADMIN — full control including creating, editing, and deleting environments

Next Steps