インストールガイド

Install Guide of SpaceONE

Install Kubernetes

SpaceONE provides various EKS installation guides.

TypeDescription
Option 1Create new VPC and EKS Cluster
Option 2Create EKS Cluster in existing VPC

This example shows the Option 1.
https://github.com/cloudforet-io/launchpad.git

Configure environments

Prepare your AWS credentials. Add them in your machine's ~/.aws/credentials file.

git clone https://github.com/cloudforet-io/launchpad.git
cd launchpad/spaceone/eks/terraform

Edit eks.auto.tfvars
This file keeps values of environment variables below.

  • region is aws region name for installation.
  • userarn is your IAM arn for installation.
region = "us-east-1"

map_users = [
		{
      userarn  = "arn:aws:iam::111111111111:user/username"
      username = "your_name"
      groups   = ["system:masters"]
    }
]

Execute terraform

If you don't have terraform binary, see Reference.

terraform init
terraform plan
terraform apply

Configure kubernetes

After installation, kubeconfig_spaceone-prd-eks file will be created. This is used as a configuration file of Kubernetes.
If you don't have kubectl installed, see Reference. You may also have to install aws-iam-authenticator, see Reference.

cp kubecconfig_spaceone-prd-eks ~/.kube/config

After installation of EKS, we highly recommend to install AWS Load Balancer Controller and External-DNS.

Install SpaceONE with Helm Chart

kubectl create ns spaceone
kubectl create ns root-supervisor

alias kcd='kubectl config set-context $(kubectl config current-context) --namespace'
kcd spaceone

Helm repo

helm repo add spaceone https://cloudforet-io.github.io/charts
helm repo update
helm search repo

Pre-condition

read pre-condition/README.md
update values in pre-conditon apply pre-condition

kubectl create -f shared.yaml

Install

  • update values.yaml
  • update database.yaml
  • update frontend.yaml

If you use mongodb cluster, host is "localhost" in database.yaml Use TYPE 2. global varable in values.yaml

kcd spaceone

helm install spaceone -f values.yaml -f database.yaml -f frontend.yaml spaceone/spaceone

SpaceONE Configuration

Reference