devops-stack
terraform-kubestack
Our great sponsors
devops-stack | terraform-kubestack | |
---|---|---|
4 | 5 | |
95 | 474 | |
- | 3.2% | |
9.1 | 8.4 | |
4 days ago | 18 days ago | |
HCL | HCL | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
devops-stack
-
Cloud-Native Geospatial Outreach Event 2022
In addition, our DevOps experts work tirelessly to automate and ease the provisioning and management of cloud servers and services. In this context we released a very interesting infrastructure as code management system, making your geospatial data infrastructure cloud agnostic and called the DevOps Stack.
-
Towards a Modular DevOps Stack
module "cluster" { source = "git::https://github.com/camptocamp/devops-stack.git//modules/eks/aws?ref=v1.0.0" cluster_name = var.cluster_name base_domain = "demo.camptocamp.com" vpc_id = module.vpc.vpc_id cluster_endpoint_public_access_cidrs = flatten([ formatlist("%s/32", module.vpc.nat_public_ips), "0.0.0.0/0", ]) worker_groups = [ { instance_type = "m5a.large" asg_desired_capacity = 2 asg_max_size = 3 root_volume_type = "gp2" }, ] } provider "argocd" { server_addr = "127.0.0.1:8080" auth_token = module.cluster.argocd_auth_token insecure = true plain_text = true port_forward = true port_forward_with_namespace = module.cluster.argocd_namespace kubernetes { host = module.cluster.kubernetes_host cluster_ca_certificate = module.cluster.kubernetes_cluster_ca_certificate token = module.cluster.kubernetes_token } } module "ingress" { source = "git::https://github.com/camptocamp/devops-stack-module-traefik.git//modules/eks" cluster_name = var.cluster_name argocd_namespace = module.cluster.argocd_namespace base_domain = module.cluster.base_domain } module "oidc" { source = "git::https://github.com/camptocamp/devops-stack-module-oidc-aws-cognito.git//modules" cluster_name = var.cluster_name argocd_namespace = module.cluster.argocd_namespace base_domain = module.cluster.base_domain cognito_user_pool_id = aws_cognito_user_pool.pool.id cognito_user_pool_domain = aws_cognito_user_pool_domain.pool_domain.domain } module "monitoring" { source = "git::https://github.com/camptocamp/devops-stack-module-kube-prometheus-stack.git//modules" cluster_name = var.cluster_name oidc = module.oidc.oidc argocd_namespace = module.cluster.argocd_namespace base_domain = module.cluster.base_domain cluster_issuer = "letsencrypt-prod" metrics_archives = {} depends_on = [ module.oidc ] } module "loki-stack" { source = "git::https://github.com/camptocamp/devops-stack-module-loki-stack.git//modules/eks" cluster_name = var.cluster_name argocd_namespace = module.cluster.argocd_namespace base_domain = module.cluster.base_domain cluster_oidc_issuer_url = module.cluster.cluster_oidc_issuer_url depends_on = [ module.monitoring ] } module "cert-manager" { source = "git::https://github.com/camptocamp/devops-stack-module-cert-manager.git//modules/eks" cluster_name = var.cluster_name argocd_namespace = module.cluster.argocd_namespace base_domain = module.cluster.base_domain cluster_oidc_issuer_url = module.cluster.cluster_oidc_issuer_url depends_on = [ module.monitoring ] } module "argocd" { source = "git::https://github.com/camptocamp/devops-stack-module-argocd.git//modules" cluster_name = var.cluster_name oidc = module.oidc.oidc argocd = { namespace = module.cluster.argocd_namespace server_secrhttps://kubernetes.slack.com/archives/C01SQ1TMBSTetkey = module.cluster.argocd_server_secretkey accounts_pipeline_tokens = module.cluster.argocd_accounts_pipeline_tokens server_admin_password = module.cluster.argocd_server_admin_password domain = module.cluster.argocd_domain } base_domain = module.cluster.base_domain cluster_issuer = "letsencrypt-prod" depends_on = [ module.cert-manager, module.monitoring ] }
The DevOps Stack was born!
-
How to allow dynamic Terraform Provider Configuration
# Install Kubernetes & Argo CD using a local module # (from https://devops-stack.io) module "cluster" { source = "git::https://github.com/camptocamp/devops-stack.git//modules/k3s/docker?ref=master" cluster_name = "default" node_count = 1 } # /!\ Setup the Argo CD provider dynamically # based on the cluster module's output provider "argocd" { server_addr = module.cluster.argocd_server auth_token = module.cluster.argocd_auth_token insecure = true grpc_web = true } # Deploy an Argo CD resource using the provider resource "argocd_project" "demo_app" { metadata { name = "demo-app" namespace = "argocd" } spec { description = "Demo application project" source_repos = ["*"] destination { server = "https://kubernetes.default.svc" namespace = "default" } orphaned_resources { warn = true } } depends_on = [ module.cluster ] }
terraform-kubestack
-
A Better Way to Provision Kubernetes Resources Using Terraform
With Kubestack, the open-source Terraform framework I maintain, I'm on a mission to provide the best developer experience for teams working with Terraform and Kubernetes. And unified provisioning of all platform components, from cluster infrastructure to cluster services, is something I consider crucial in my relentless pursuit of said developer experience.
-
Top 200 Kubernetes Tools for DevOps Engineer Like You
kops - Production Grade K8s Installation, Upgrades, and Management silver-surfer - Check ApiVersion compatibility and provide Migration path for Kubernetes objects when upgrading Kubernetes to latest versions Kube-ops-view - Kubernetes Operational View - read-only system dashboard for multiple K8s clusters kubeprompt - Kubernetes prompt info Metalk8s - An opinionated Kubernetes distribution with a focus on long-term on-prem deployments kind - Kubernetes IN Docker - local clusters for testing Kubernetes Clusterman - Cluster Autoscaler for Kubernetes and Mesos Cert-manager - Automatically provision and manage TLS certificates Goldilocks - Get your resource requests "Just Right" katafygio - Dump, or continuously backup Kubernetes objets as yaml files in git Rancher - Complete container management platform Sealed Secrets - A Kubernetes controller and tool for one-way encrypted Secrets OpenKruise/Kruise - Automate application workloads management on Kubernetes https://openkruise.io kubectl snapshot - Take Cluster Snapshots kapp - simple deployment tool focused on the concept of "Kubernetes application" β a set of resources with the same label https://get-kapp.io keda - Event-driven autoscaler for Kubernetes Octant - To better understand the complexity of Kubernetes clusters Portainer - Portainer inside a Kubernetes environment Gardener - Deliver fully-managed clusters at scale everywhere with your own Kubernetes-as-a-Service Kubed - Kubernetes Cluster Operator Daemon Kubestack - Kubestack is the free and open-source GitOps framework to codify your custom platform stack using Terraform.
-
5 reasons why frameworks make sense for infrastructure as code
In this post I hope to provide a few reasons why frameworks make sense for infrastructure as code, Having tried out Kubestack this got me thinking, Should more of these frameworks exist? And do they provide the same value as a traditional web framework like Flask, Express.js, or Ruby on Rails. Now you might be thinking don't tools like Terraform, Ansible, Chef already exists?
-
Google Anthos with Terraform and Kubestack
Unsurprisingly, my biased proposal is to use Kubestack to provision the GKE and EKS clusters leveraging the Kubestack framework's unified GKE and EKS modules, and to write a custom module to connect the resulting clusters to Anthos. The bespoke module would integrate the IAM, Anthos and Kubernetes resources required fully into the Terraform state and lifecycle instead of calling kubectl and gcloud like the official Google modules do.
-
Show HN: Infracost diff β βGit diffβ but for cloud costs
Really cool project. I'll put it on the list of things to integrate with my project Kubestack https://github.com/kbst/terraform-kubestack
What are some alternatives?
terraform-provider-argocd - Terraform provider for ArgoCD
build-a-platform-with-krm - Build a platform with the Kubernetes resource model!
gaia - Gaia is a Terraform π UI for your modules, and self-service infrastructure π¨βπ»
terraform - The place to storing Terraform modules of many providers
thanos - Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project.
terraform - Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.
terraform-azurerm-caf-enterprise-scale - Azure landing zones Terraform module
infracost - Cloud cost estimates for Terraform in pull requestsπ°π Love your cloud bill!
NubesGen - Going to production on Azure is only one `git push` away
terraform-azurerm-vmseries-modules - Terraform Reusable Modules for VM-Series on Azure
terraform-aws-tfstate-backend - Terraform module that provision an S3 bucket to store the `terraform.tfstate` file and a DynamoDB table to lock the state file to prevent concurrent modifications and state corruption.
terraform-aws-secure-baseline - Terraform module to set up your AWS account with the secure baseline configuration based on CIS Amazon Web Services Foundations and AWS Foundational Security Best Practices.