Skip to content

Latest commit

 

History

History
71 lines (43 loc) · 4.86 KB

PREREQUISITES.md

File metadata and controls

71 lines (43 loc) · 4.86 KB

Prerequisites

Requirements

In order to deploy Atlassian’s Data Center products, the following is required:

  1. An understanding of Kubernetes and Helm concepts
  2. A Kubernetes cluster, running Kubernetes 1.19 or later
  3. kubectl 1.19 or later, must be compatible with your cluster
  4. Helm v 3.3 or later

Environment setup

Before installing the Data Center Helm charts you need to set up your environment:

  1. Install tools

    1. Install Helm
    2. Install kubectl
  2. Create and connect to the Kubernetes cluster

    • See examples of provisioning Kubernetes clusters on cloud-based providers.

    • In order to install the charts to your Kubernetes cluster, your kubernetes client config must be configured appropriately, and you must have the necessary permissions.

    • It is up to you to set up security policies.

  3. Provision an Ingress Controller

    • See an example of provisioning an NGINX Ingress Controller.

    • This step is necessary in order to make your Atlassian product available from outside of the Kubernetes cluster after deployment.

    • The Kubernetes project supports and maintains ingress controllers for the major cloud providers including; AWS, GCE and nginx. There are also a number of open-source third-party projects available.

    • Because different Kubernetes clusters use different ingress configurations/controllers, the Helm charts provide Ingress Object templates only.

    • The Ingress resource provided as part of the Helm charts is geared toward the NGINX Ingress Controller and can be configured via the ingress stanza in the appropriate values.yaml (an alternative controller can be used).

    • For more information about the Ingress controller go to the Ingress section of the configuration guide.

  4. Provision a database

  5. Configure a shared-home volume

    • See examples of creating shared storage.

    • All of the Data Center products require a shared network filesystem if they are to be operated in multi-node clusters. If no shared filesystem is available, the products can only be operated in single-node configuration.

    • The shared-home volume must be correctly configured as a read-write shared filesystem (e.g. NFS, AWS EFS, Azure Files)

    • The recommended setup is to use Kubernetes PersistentVolumes and PersistentVolumeClaims. The local-home volume requires a PersistentVolume with ReadWriteOnce (RWO) capability, and shared-home requires a PersistentVolume with ReadWriteMany (RWX) capability. Typically, this will be a NFS volume provided as part of your infrastructure, but some public-cloud Kubernetes engines provide their own RWX volumes (e.g. AzureFile, ElasticFileStore).

    • For more information about volumes go to the Volumes section of the configuration guide.