How do you set up your application stack?
Matthias 🤖

Matthias 🤖 @matthias

About: 👨‍💻 Fullstack-Developer 🚀 Working on all stacks 🏷️ #nodejs #typescript #react #kubernetes #docker #devops #cloud #webdev

Location:
Göttingen, Germany
Joined:
Apr 10, 2019

How do you set up your application stack?

Publish Date: Jul 23 '19
15 8

What tools do you use to provision your Kubernetes cluster?

I started with plain YAML files, but I find it a bit hard to keep them organized and make changes.

Right now, I try Pulumi but I am keen to learn other tools.

Do you have experience with any other tools? How does your workflow for creating applications, services, etc. in your cluster look like?


If you like my content, you might want to follow me on Twitter?! @fullstack_to

Cover Image by Photo by Syed Hussaini on Unsplash

Comments 8 total

  • Troy
    TroyJul 23, 2019

    Hi,

    We deploy using the following process:

    DEV commit code to SCM > Pull Request > Webhook in Jenkins > Unit tests, Sonarqube integration > Build Docker Image \ tag it \ push to AWS ECR > Integration tests > Deploy tagged image from AWS ECR to our AWS EKS cluster > Notify of status

    Secrets are stored in Ansible playbook in SCM.

    YAML files are obviously stored in SCM, which is stored in each repo in a directory called .\kubernetes

    • David J Eddy
      David J EddyJul 24, 2019

      "...Secrets are stored in Ansible playbook in SCM..." We talking API keys / web tokens?

      • Troy
        TroyJul 24, 2019

        Yes, oAuth & DB connection strings

    • Matthias 🤖
      Matthias 🤖Jul 24, 2019

      Do you use Jenkins or Jenkins X?
      I didn't use Jenkins recently. Can you give any tips for using Jenkins in a Kubernetes environment?

      • Troy
        TroyJul 24, 2019

        Hi,

        Jenkins (not X) is used. Something similar to this with environmental variables defined for k8sClusterCredentialName and k8sMasterUrl

        withKubeConfig([credentialsId: "${getConfigValue('k8sClusterCredentialName')}", serverUrl: "${getConfigValue('k8sMasterUrl')}"]) {
                            sh 'kubectl apply -f ./kubernetes/'
                        }
        
    • taragurung
      taragurungJul 24, 2019

      Secrets are stored in Ansible playbook in SCM. What does this really mean?

      • Troy
        TroyJul 24, 2019

        Misworded, secrets are stored in a yaml file, which is encrypted. ansible-vault is used to encrypt/decrypt. The playbook references the secrets.

Add comment