Deploy a Kubernetes cluster for free, using K3s and Oracle always free resources

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • k3s-oci-cluster

    Deploy a Kubernetes cluster for free, using k3s and Oracle always free resources

  • Var Required Desc region yes set the correct OCI region based on your needs availability_domain yes Set the correct availability domain. See how to find the availability domain compartment_ocid yes Set the correct compartment ocid. See how to find the compartment ocid cluster_name yes the name of your K3s cluster. Default: k3s-cluster k3s_token yes The token of your K3s cluster. How to generate a random token my_public_ip_cidr yes your public ip in cidr format (Example: 195.102.xxx.xxx/32) environment yes Current work environment (Example: staging/dev/prod). This value is used for tag all the deployed resources compute_shape no Compute shape to use. Default VM.Standard.A1.Flex. NOTE Is mandatory to use this compute shape for provision 4 always free VMs os_image_id no Image id to use. Default image: Canonical-Ubuntu-20.04-aarch64-2022.01.18-0. See how to list all available OS images oci_core_vcn_cidr no VCN CIDR. Default: oci_core_vcn_cidr oci_core_subnet_cidr10 no First subnet CIDR. Default: 10.0.0.0/24 oci_core_subnet_cidr11 no Second subnet CIDR. Default: 10.0.1.0/24 oci_identity_dynamic_group_name no Dynamic group name. This dynamic group will contains all the instances of this specific compartment. Default: Compute_Dynamic_Group oci_identity_policy_name no Policy name. This policy will allow dynamic group 'oci_identity_dynamic_group_name' to read OCI api without auth. Default: Compute_To_Oci_Api_Policy kube_api_port no Kube api default port Default: 6443 public_lb_shape no LB shape for the public LB. Default: flexible. NOTE is mandatory to use this kind of shape to provision two always free LB (public and private) http_lb_port no http port used by the public LB. Default: 80 https_lb_port no http port used by the public LB. Default: 443 k3s_server_pool_size no Number of k3s servers deployed. Default 2 k3s_worker_pool_size no Number of k3s workers deployed. Default 2 install_longhorn no Boolean value, install longhorn "Cloud native distributed block storage for Kubernetes". Default: true longhorn_release no Longhorn release. Default: v1.2.3 unique_tag_key no Unique tag name used for tagging all the deployed resources. Default: k3s-provisioner unique_tag_value no Unique value used with unique_tag_key. Default: https://github.com/garutilorenzo/k3s-oci-cluster PATH_TO_PUBLIC_KEY no Path to your public ssh key (Default: "~/.ssh/id_rsa.pub) PATH_TO_PRIVATE_KEY no Path to your private ssh key (Default: "~/.ssh/id_rsa)

  • terraform

    Terraform enables you to safely and predictably create, change, and improve infrastructure. It is a source-available tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

  • Terraform - Terraform is an open-source infrastructure as code software tool that provides a consistent CLI workflow to manage hundreds of cloud services. Terraform codifies cloud APIs into declarative configuration files.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • traefik

    The Cloud Native Application Proxy

  • K3s will automatically install Traefik. Traefik is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease. It simplifies networking complexity while designing, deploying, and running applications. More details here

  • longhorn

    Cloud-Native distributed storage built on and for Kubernetes

  • This setup will automatically install longhorn. Longhorn is a Cloud native distributed block storage for Kubernetes. To disable the longhorn deployment set install_longhorn variable to false

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts