• Using MinIO instead of a S3 bucket

    4 min read

    terraform state S3 MinIO backend

    Since MinIO is an object storage server that implements the same public API as Amazon S3, can it be used to store terraform's state?

    15/06/2021

    Read more...
  • tree visualization of Kubernetes objects

    2 min read

    kubernetes krew tree kubectl

    Some kubernetes objects creates and manages other kubernetes objects in order to provide it's functionality. For example, the Deployment object creates a ReplicaSet that in turn creates the desired Pod objects. We can always track down this relationship using kubectl describe but using the tree krew plugin we can see the relationship in a visual way. We can install it like so:

    $ kubectl krew install tree
    

    14/06/2021

    Read more...
  • terraform: check terraform configuration

    4 min read

    terraform validate

    While working with terraform we might find some configuration or syntax errors using terraform plan. While we won't break anything anyway, it take a lot of time to realize we have a syntax error due to a typo. This is specially true if we are working with a remote terraform state. To avoid wasting time we can use terraform validate

    11/06/2021

    Read more...
  • How to build a multi architecture container using buildx

    7 min read

    docker buildx

    Docker has the ability to handle multi architecture containers: Using the same container image and tag we can deploy it on multiple architectures such as Intel and ARM. Since a docker container is composed of multiple layers it will just use one or another depending on the architecture we are running it. From the user perspective there's no difference on it's usage, but how do we build them?

    10/06/2021

    Read more...
  • Hide sensitive information from terraform output

    2 min read

    terraform sensitive

    There are certain terraform outputs that can contain sensitive data, for example: Rendered helm values can contain sensitive data that we need to give to helm to be able to install the pods on our kubernetes cluster. Starting terraform 0.15 we can tell terraform which input and output variables are sensitives so it can hide them away from it's output.

    For example, to set an output variable as sensitive we just need to add the sensitive attribute and set it to true:

    output "helm_pet2cattle_values" {
      value     = module.pet2cattle.values
      sensitive = true
    }
    

    09/06/2021

    Read more...

More recent...

Older content...