Search documentation
karat

+

K

Create and connect a new Apollo Environment

An Environment in Apollo is a Kubernetes cluster. This guide will walk through how to create an Environment in Apollo, and then connect your Kubernetes cluster to that Environment, so it can be managed by Apollo.

Prerequisites

Before creating a new Environment in Apollo, you should confirm that your Kubernetes cluster meets the Spoke Environment prerequisites. If you are testing or getting started with Apollo, you can set up a local Kubernetes cluster.

Create a new Environment

To create an Environment, navigate to the Environment home page by selecting Environments in the left menu panel. Select New environment... in the top right corner, then select Create environment. You must have the Environment creator role to create new Environments.

The create new environment button is highlighted on the top right corner of the Environment home page.

You will be redirected to a new page with a walkthrough to create and connect the Environment.

Create new Environment

Next, you will complete the Environment management settings form.

  1. Start by entering a name for your Environment.
  2. Select your accreditation scheme. If this is your first time creating an Environment, we recommend that you select the Dev accreditation, which means any change request made for your Environment will be auto-approved.
  3. Select a Spoke Control Plane Module for your new Environment. Each Module defines the initial services that will run in the Environment. The options are:
    • Apollo Control Plane: A Module that consists of just the Apollo Agents that run in the Spoke Control Plane. This option is useful for testing the deployment of your services in Apollo, including installation and upgrading, without all of the Spoke Control Plane requirements, such as Vault.
    • Extended Apollo Control Plane: A Module that includes the full set of Spoke Control Plane services. This option is recommended because it ensures all Apollo features are available on the Spoke and all future updates are automatically applied to the Environment.
    • Blank environment: No initial Module will be installed. This option can be useful if you are creating the Environment in Apollo before its backing infrastructure is fully available. For the Environment to be managed by Apollo, you will need to install an Apollo Agent.

Under Advanced settings, you can configure the following:

  1. Select the Team you want to be the contact team of the Environment. The contact team is the primary point of contact for the Environment. By default, no team will be assigned as a contact team for the Environment. If you do not add a contact team when creating an Environment, you can add one later.
  2. You can set the remote status of the Environment:
    1. Local means that the Environment will be managed by the current Apollo Hub. This is the default setting. The rest of this guide assumes that you are creating a "Local" Environment.
    2. Remote means that the Environment will be managed by another Apollo Hub. This is used when deploying software into air-gapped Environments.

Select Next when you are finished configuring the settings.

Next you will set the roles for the Environment. These roles define the permissions other Teams will have in the Environment. You can change these roles and permissions later. When you are finished, select Set initial roles.

Set Roles

At this stage, Apollo has created a representation for your Environment. Select Go to your environment to view the Environment.

Environment Created

You can now connect your Kubernetes cluster to your Environment.

Connect Environment to Apollo

Deploy Apollo Agent to cluster

Before connecting your Kubernetes cluster to the created Environment, you must install some basic Apollo services in your Environment. If you chose to install the "Apollo Control Plane" or "Extended Apollo Control Plane" Module, Apollo will automatically install the necessary services in your Environment. If you chose the "Blank environment" Module, you should install an Apollo Agent yourself. We recommend installing either the "Apollo Control Plane" or "Extended Apollo Control Plane" Module to have everything set up for you.

If you chose the Dev accreditation, the required services will be installed automatically, and you can continue to the next step. Otherwise, Apollo will create a change request to install the services in your Environment.

You will not be able to approve your own change request, so you will need someone else from your team to approve it.

To approve the change request, navigate to the Changes tab in the Environment.

Changes Tab

Select the change request to approve it:

Approve Change Request

Once the change request is approved, you can connect your Environment.

Approve Change Request

Connect Environment to Kubernetes cluster

Navigate to the Overview tab of your Environment. Below the tabs, Apollo will display a banner stating that the Environment never connected. On the far right, select View environment setup guide.

Environment Setup banner

Follow the steps in the Environment setup instructions to connect your new Apollo Environment to your Kubernetes cluster.

Environment Setup Instructions

Download the initial Kubernetes manifest and apply it to your Environment to install helm-chart-operator. You can run the following command to ensure that Spoke Control Plane services are now running in your cluster:

Copied!
1 $ kubectl get pods --all-namespaces -o wide

A green check mark will appear next to each Apollo Agent once it is running, which means your Environment is now fully Apollo managed.

Once setup is completed, you can then install your first Product.

More information about Environment management settings can be found in Editing Environment management settings.