...
# | Step | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Setup |
| ||||||||||||
2 | Create IAM User & Role |
The script creates:
| ||||||||||||
3 | Create Ops Kubernetes Cluster |
The script creates:
| ||||||||||||
4 | Import the Kubernetes Cluster connection config | Make sure you have an AWS profile set in your ~/
Find the name of the Kubernetes cluster and update the local config with it
| ||||||||||||
5 | Install Nginx |
| ||||||||||||
6 | Install Jenkins | Use the helm chart for installing Jenkins onto the Kubernetes cluster created above.
Wait for Jenkins to start up. To view the Jenkins admin password:
Set up a cloud-provisioned Jenkins node as defined in the Kubernetes plugin config in Jenkins. | ||||||||||||
7 | Install Ansible Tower (AWX) | Create the AWX DB by connecting to the RDS PostgreSQL instance created via Terraform.
Install AWX with the Kustomize command.
Watch for the script failing and if it does run it again (timing issue due to the creation of the AWX RBAC) | ||||||||||||
8 | Update DNS record (optional) |
Now Jenkins and AWX should be available via http://ops.d1.test.senofiopenidl-org-test.net/ and http://ops.d1.test.senofi.net/jenkins. | 9 | Terraform Cloud workspaces | To create the workspaces use the tool located in senofi/openidl-devops: Go to
If everything looks ok, execute Create a new KMS key (symetric, encrypt/decrypt) in the AWS console. The name is not important but use a meaningful name that will associate it with this environment. Use it to populate the property in the next step Go to Create SSH keys
Populate the variable set by executing the following command in
Copy the contents of the public keys and populate them in Terraform Cloud UI under Variable Sets → <the newly created varset> | |||||||||
10 | Configure Jenkins |
| ||||||||||||
11 | Run Terraform Job | Run the Jenkins Terraform Job Open the console log for the job. Once the job asks for an input accept and choose the apply option The job runs a second plan into the Kubernetes workspace in Terraform Cloud. When asked - accept and apply the changes |