aboutsummaryrefslogtreecommitdiffstats
path: root/terragrunt/openlab/RegionOne/stage
diff options
context:
space:
mode:
Diffstat (limited to 'terragrunt/openlab/RegionOne/stage')
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/control/control-plane.sh33
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/control/terragrunt.hcl35
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/nfsserver/nfs-server.sh20
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/nfsserver/terragrunt.hcl35
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/worker/terragrunt.hcl35
-rw-r--r--terragrunt/openlab/RegionOne/stage/compute/worker/worker-node.sh36
-rw-r--r--terragrunt/openlab/RegionOne/stage/env.hcl22
-rw-r--r--terragrunt/openlab/RegionOne/stage/keypair/terragrunt.hcl22
-rw-r--r--terragrunt/openlab/RegionOne/stage/kubernetes/terragrunt.hcl47
-rw-r--r--terragrunt/openlab/RegionOne/stage/network/terragrunt.hcl22
-rw-r--r--terragrunt/openlab/RegionOne/stage/rancher/terragrunt.hcl42
-rw-r--r--terragrunt/openlab/RegionOne/stage/securitygroup/terragrunt.hcl20
12 files changed, 369 insertions, 0 deletions
diff --git a/terragrunt/openlab/RegionOne/stage/compute/control/control-plane.sh b/terragrunt/openlab/RegionOne/stage/compute/control/control-plane.sh
new file mode 100644
index 0000000..881f651
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/control/control-plane.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+DOCKER_VERSION=18.09.5
+
+export DEBIAN_FRONTEND=noninteractive
+
+apt-get update
+
+curl https://releases.rancher.com/install-docker/$DOCKER_VERSION.sh | sh
+mkdir -p /etc/systemd/system/docker.service.d/
+cat > /etc/systemd/system/docker.service.d/docker.conf << EOF
+[Service]
+ExecStart=
+ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry=nexus3.onap.org:10001
+EOF
+
+sudo usermod -aG docker ubuntu
+
+systemctl daemon-reload
+systemctl restart docker
+apt-mark hold docker-ce
+
+IP_ADDR=`ip address |grep ens|grep inet|awk '{print $2}'| awk -F / '{print $1}'`
+HOSTNAME=`hostname`
+
+echo "$IP_ADDR $HOSTNAME" >> /etc/hosts
+
+docker login -u docker -p docker nexus3.onap.org:10001
+
+sudo apt-get install make -y
+
+
+exit 0 \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/compute/control/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/compute/control/terragrunt.hcl
new file mode 100644
index 0000000..46a2c24
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/control/terragrunt.hcl
@@ -0,0 +1,35 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ network = local.env_vars.locals.network
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/openstack/compute"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+dependencies {
+ paths = ["../../keypair", "../../network", "../../securitygroup"]
+}
+
+inputs = {
+
+ environment = local.environment
+ cluster_name = "${local.region}-${local.environment}"
+
+ node_name = "worker-node"
+ image = "ubuntu-18.04"
+ flavor = "m1.xlarge"
+ floating_ip_pool = "external"
+ # Read as File stream
+ user_data = file("control-plane.sh")
+ node_count = 3
+}
diff --git a/terragrunt/openlab/RegionOne/stage/compute/nfsserver/nfs-server.sh b/terragrunt/openlab/RegionOne/stage/compute/nfsserver/nfs-server.sh
new file mode 100644
index 0000000..127a554
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/nfsserver/nfs-server.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+export DEBIAN_FRONTEND=noninteractive
+
+apt-get update
+
+IP_ADDR=`ip address |grep ens|grep inet|awk '{print $2}'| awk -F / '{print $1}'`
+HOSTNAME=`hostname`
+
+echo "$IP_ADDR $HOSTNAME" >> /etc/hosts
+
+sudo apt-get install make -y
+
+# nfs server
+sudo apt-get install nfs-kernel-server -y
+
+sudo mkdir -p /nfs_share
+sudo chown nobody:nogroup /nfs_share/
+
+exit 0 \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/compute/nfsserver/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/compute/nfsserver/terragrunt.hcl
new file mode 100644
index 0000000..4e7f83f
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/nfsserver/terragrunt.hcl
@@ -0,0 +1,35 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ network = local.env_vars.locals.network
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/openstack/compute"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+dependencies {
+ paths = ["../../keypair", "../../network", "../../securitygroup"]
+}
+
+inputs = {
+
+ environment = local.environment
+ cluster_name = "${local.region}-${local.environment}"
+
+ node_name = "nfsserver"
+ image = "ubuntu-18.04"
+ flavor = "m1.xlarge"
+ floating_ip_pool = "external"
+ # Read as File stream
+ user_data = file("nfs-server.sh")
+ node_count = 1
+}
diff --git a/terragrunt/openlab/RegionOne/stage/compute/worker/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/compute/worker/terragrunt.hcl
new file mode 100644
index 0000000..8d33ae4
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/worker/terragrunt.hcl
@@ -0,0 +1,35 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ network = local.env_vars.locals.network
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/openstack/compute"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+dependencies {
+ paths = ["../../keypair", "../../network", "../../securitygroup"]
+}
+
+inputs = {
+
+ environment = local.environment
+ cluster_name = "${local.region}-${local.environment}"
+
+ node_name = "worker-node"
+ image = "ubuntu-18.04"
+ flavor = "m1.xlarge"
+ floating_ip_pool = "external"
+ # Read as File stream
+ user_data = file("worker-node.sh")
+ node_count = 3
+}
diff --git a/terragrunt/openlab/RegionOne/stage/compute/worker/worker-node.sh b/terragrunt/openlab/RegionOne/stage/compute/worker/worker-node.sh
new file mode 100644
index 0000000..4c0d52a
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/compute/worker/worker-node.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+DOCKER_VERSION=18.09.5
+
+export DEBIAN_FRONTEND=noninteractive
+
+apt-get update
+
+curl https://releases.rancher.com/install-docker/$DOCKER_VERSION.sh | sh
+mkdir -p /etc/systemd/system/docker.service.d/
+cat > /etc/systemd/system/docker.service.d/docker.conf << EOF
+[Service]
+ExecStart=
+ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry=nexus3.onap.org:10001
+EOF
+
+sudo usermod -aG docker ubuntu
+
+systemctl daemon-reload
+systemctl restart docker
+apt-mark hold docker-ce
+
+IP_ADDR=`ip address |grep ens|grep inet|awk '{print $2}'| awk -F / '{print $1}'`
+HOSTNAME=`hostname`
+
+echo "$IP_ADDR $HOSTNAME" >> /etc/hosts
+
+docker login -u docker -p docker nexus3.onap.org:10001
+
+sudo apt-get install make -y
+
+# install nfs
+sudo apt-get install nfs-common -y
+
+
+exit 0 \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/env.hcl b/terragrunt/openlab/RegionOne/stage/env.hcl
new file mode 100644
index 0000000..b3208c8
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/env.hcl
@@ -0,0 +1,22 @@
+# Set common variables for the environment. This is automatically pulled in in the root terragrunt.hcl configuration to
+# feed forward to the child modules.
+locals {
+ environment = "" # name of the environment you use. e.g stage, prod or qa
+ network = "" # name of the network to connect with the Internet
+
+ # Rancher and Kubernetes
+ # To access a VM, 'ssh -i ssh_private_key_path kubernetes_user@one-of-the-external-ips'
+ # a key pair for accessing VMs
+ ssh_public_key = "" # OpenSSH formated string is required
+ ssh_private_key_path = "" # e.g ~/.ssh/id_rsa
+
+ kubernetes_version = "v1.15.11-rancher1-2"
+ kubernetes_user = "ubuntu"
+ kubernetes_cluster_name = "rke_cluster"
+
+ kubernetes_home = "${get_parent_terragrunt_dir()}"
+
+ # Helm
+ service_account = "tiller"
+ namespace = "kube-system"
+} \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/keypair/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/keypair/terragrunt.hcl
new file mode 100644
index 0000000..35e02ee
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/keypair/terragrunt.hcl
@@ -0,0 +1,22 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ ssh_public_key = local.env_vars.locals.ssh_public_key
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/openstack/keypair"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+inputs = {
+ cluster_name = "${local.region}-${local.environment}"
+ ssh_public_key = local.ssh_public_key
+}
diff --git a/terragrunt/openlab/RegionOne/stage/kubernetes/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/kubernetes/terragrunt.hcl
new file mode 100644
index 0000000..e6c0abb
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/kubernetes/terragrunt.hcl
@@ -0,0 +1,47 @@
+locals {
+ # Automatically load account-level variables
+ account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ backend = local.account_vars.locals.backend
+ backend_state = local.account_vars.locals.backend_state
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ ssh_private_key_path = local.env_vars.locals.ssh_private_key_path
+
+ kubernetes_user = local.env_vars.locals.kubernetes_user
+ kubernetes_cluster_name = local.env_vars.locals.kubernetes_cluster_name
+ kubernetes_home = local.env_vars.locals.kubernetes_home
+
+ # Helm
+ service_account = local.env_vars.locals.service_account
+ namespace = local.env_vars.locals.namespace
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/kubernetes/kubernetes"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+dependencies {
+ paths = ["../rancher"]
+}
+
+inputs = {
+ backend = local.backend
+ backend_state = local.backend_state
+ region = local.region
+ environment = local.environment
+ ssh_private_key_path = local.ssh_private_key_path
+
+ kubernetes_user = local.kubernetes_user
+ kubernetes_cluster_name = local.kubernetes_cluster_name
+ kubernetes_home = local.kubernetes_home
+
+ service_account = local.service_account
+ namespace = local.namespace
+} \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/network/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/network/terragrunt.hcl
new file mode 100644
index 0000000..31ff4f7
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/network/terragrunt.hcl
@@ -0,0 +1,22 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ network = local.env_vars.locals.network
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/openstack/network"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+inputs = {
+ cluster_name = "${local.region}-${local.environment}"
+ network = local.network
+}
diff --git a/terragrunt/openlab/RegionOne/stage/rancher/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/rancher/terragrunt.hcl
new file mode 100644
index 0000000..1d01e11
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/rancher/terragrunt.hcl
@@ -0,0 +1,42 @@
+locals {
+ # Automatically load account-level variables
+ account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ backend = local.account_vars.locals.backend
+ backend_state = local.account_vars.locals.backend_state
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+ ssh_private_key_path = local.env_vars.locals.ssh_private_key_path
+
+ kubernetes_version = local.env_vars.locals.kubernetes_version
+ kubernetes_user = local.env_vars.locals.kubernetes_user
+ kubernetes_cluster_name = local.env_vars.locals.kubernetes_cluster_name
+ kubernetes_home = local.env_vars.locals.kubernetes_home
+
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform/openlab/modules/kubernetes/rancher"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+dependencies {
+ paths = ["../compute/control"]
+}
+
+inputs = {
+ backend = local.backend
+ backend_state = local.backend_state
+ region = local.region
+ environment = local.environment
+ ssh_private_key_path = local.ssh_private_key_path
+ kubernetes_version = local.kubernetes_version
+ kubernetes_user = local.kubernetes_user
+ kubernetes_cluster_name = local.kubernetes_cluster_name
+ kubernetes_home = local.kubernetes_home
+} \ No newline at end of file
diff --git a/terragrunt/openlab/RegionOne/stage/securitygroup/terragrunt.hcl b/terragrunt/openlab/RegionOne/stage/securitygroup/terragrunt.hcl
new file mode 100644
index 0000000..3ebbb09
--- /dev/null
+++ b/terragrunt/openlab/RegionOne/stage/securitygroup/terragrunt.hcl
@@ -0,0 +1,20 @@
+locals {
+ # Automatically load account-level variables
+ region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+ env_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+
+ region = local.region_vars.locals.region
+ environment = local.env_vars.locals.environment
+}
+
+terraform {
+ source = "git::https://gerrit.onap.org/r/integration/terraform//openlab/modules/openstack/securitygroup"
+}
+
+include {
+ path = find_in_parent_folders()
+}
+
+inputs = {
+ cluster_name = "${local.region}-${local.environment}"
+}