awesome-gitops
sealed-secrets
awesome-gitops | sealed-secrets | |
---|---|---|
4 | 71 | |
1,404 | 7,160 | |
1.4% | 1.1% | |
2.7 | 9.1 | |
6 months ago | 5 days ago | |
Go | ||
MIT License | 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.
awesome-gitops
-
Creators of Argo CD Release New OSS Project Kargo for Next Gen Gitops
https://github.com/weaveworks/awesome-gitops but also, like, a shell script?
-
How to apply security at the source using GitOps
There are books (The Path to GitOps, GitOps and Kubernetes or GitOps Cloud-native Continuous Deployment), whitepapers, and more blog posts than we can manage to count but let us elaborate on the GitOps purpose by taking a quick look on how things evolved in the last few years.
-
Automation assistants: GitOps tools in comparison
Websites such as awesome-gitops, which was launched by Weaveworks, or gitops.tech, which was put together by INNOQ employees, provide an introductory overview of the available tools. When you take a closer look, you will see that the listed tools can be used to perform a wide variety of tasks related to implementing GitOps, and of course they also differ from one another in terms of their adoption, maturity, and how actively they are maintained. This article identifies three categories from the various use cases: Tools for Kubernetes, supplementary tools, and tools close to infrastructure. In addition, we compiled a table that summarizes the tools and their properties. The tables also contain various Git and GitHub-based metrics (current as of February 2021) that allow you to better assess their adoption, maturity, and how actively they are maintained.
-
The Decline of Heroku
huge fan of k8s. drop what you're doing & use a cross-system object-storage/"apiserver" & control-loops to automate everything; embrace desired state management & thank me latter. but, Heroku &al have a lot of value left.
there's just not that many folk trying to tame deploys on k8s via gitops. flux2 is the rage, it's all over the alpha geek's efforts[1], but it's usually used by someone carefully authoring a fairly complex Helm file, then building out a significant Flux2 HelmRelease object (ex: [2]).
there's a bunch of other tools[3], & i'm frankly not familiar enough. but this idea of having a bunch of source that can deploy itself, simply, is still extremely rare even among the alpha-geek #gitops types. i'm sure some of these tools better match the simplicity of the Heroku model, corresponding branches to environments, which makes so so much sense, but so far i feel like such attempts are still basically unknown.
heroku's really simmered it down to something that made extremely natural sense. huge props to that. too too much of this effort had to go into creating buildpacks & supporting language environments very very carefully very actively, that ability to stealth-containerize an app & not even notice is so much of the special sauce that makes this a hard, hard & eternal problem (because langauges/envs keep changing). there's still a lot of ease of use to Heroku that's potentially will be underrated and/or lost by the oncoming generations. i have high respect for how operateable Heroku is.
[1] https://github.com/k8s-at-home/awesome-home-kubernetes
[2] https://github.com/onedr0p/home-cluster/blob/main/cluster/ap...
[3] https://github.com/weaveworks/awesome-gitops#tools
sealed-secrets
-
Introduction to the Kubernetes ecosystem
External-Secrets Operator : A Kubernetes operator that integrates external secret management systems like AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, and many more. The operator reads information from external APIs and automatically injects the values into a Kubernetes Secret (Alternatives : Vault, SOPS, Sealed Secrets)
-
Show HN: Open-source alternative to HashiCorp/IBM Vault
I like sealed secrets (https://github.com/bitnami-labs/sealed-secrets) a lot. It's like 1Password, but for apps in kubernetes. You only need to secure a private key, and can throw encrypted secrets in a public github repo or anywhere you want.
It's owned by VMware (Broadcom) now, so you have to decide which company you hate more.
-
Deploy Secure Spring Boot Microservices on Amazon EKS Using Terraform and Kubernetes
If you have noticed, you are setting secrets in plain text on the application-configmap.yml file, which is not ideal and is not a best practice for security. The best way to do this securely would be to use AWS Secrets Manager, an external service like HashiCorp Vault, or Sealed Secrets. To learn more about these methods see the blog post Shhhh... Kubernetes Secrets Are Not Really Secret!.
-
Plain text Kubernetes secrets are fine
Yeah documentation is hard and I'm guilty (as a former maintainer of SealedSecrets)
SealedSecrets was designed with "write only" secrets in mind.
Turns out a lot of people need to access the current secrets because they need to update a part of a "composite" secret.
There are two kinds of "composite" secrets, one easy and one harder, but if you don't know how to do it, even the easier is hard:
1. Secret with multiple data "items" (also called keys in K8s Secret jargon but that's confusing when there is encryption involved). I.e. good old "data":{"foo": "....", "bar": "..."}
2. Secrets where data within one item is actually a config file with cleartext and secrets mixed up in one single string (usually some JSON or YAML or TOML)
Case 1 is "easy" to deal with once you realize that sealed secrets files are just text files and you can just manually merge and update encryoted data items. We even created a "merge" and some "raw" encryption APIs to make that process a little less "copy pasta" but it's still hard to have a good UX that works for everyone.
Case 2 is harder. We did implement a data templating feature that allows you to generate a config file via a go-template that keeps the cleartext parts in clear and uses templating directives to inject the secret parts where you want (referencing the encrypted the items)
The main problem with case 2 is that it's undocumented.
The feature landed in 2021:
https://github.com/bitnami-labs/sealed-secrets/pull/580
I noticed that people at my current $dayjob used sealed secrets for years and it took me a while to understand that the reason they hated it was that they didn't know about that fundamental feature.
And how to blame them!? It's still undocumented!
In my defense I spent so much effort before and after I left VMware to lobby so that the project got the necessary staffing so it wouldn't die of bitrot that I didn't have much time left to work on documentation. Which is a bit said and probably just an excuse :-)
That said, I'm happy that the project is alive and the current maintainers are taking care of it against the forces of entropy. Perhaps some doc work would be useful too. Unfortunately I don't have time for now.
- Storing secrets in distributed binaries?
-
Weekly: Questions and advice
This might be OT, and forgive me, but I think one of the best practices for Encrypting and Managing secrets in Kubernetes is to use Sealed Secrets, they allow your secrets to be securely stored in git with the rest of the configuration and yet no one with access to the Git repository will be able to read them. I say this might be OT, because Sealed Secrets are trying to mitigate a different threat, the threat of the secrets at rest somewhere, and not "live in the cluster", where in theory all the ingredients to decrypt the secrets would still live.
-
Want advice on planned evolution: k3os/Longhorn --> Talos/Ceph, plus Consul and Vault
The addition of Consul and Vault gives me a few things. For one, right now I'm handling secrets with a mixture of SOPS and Sealed Secrets. I use Vault in my professional life, and have used both Vault and Consul at my last job. Vault is a beast, so I may as well get better at it; plus its options for secret injection are better.
- Homebrew 4.0.0 release
-
How to Deploy and Scale Strapi on a Kubernetes Cluster 1/2
Use Sealed Secrets Operator.
-
Secret Management in Kubernetes: Approaches, Tools, and Best Practices
sealed-secrets (sealed)
What are some alternatives?
atlantis - Terraform Pull Request Automation
vault-secrets-operator - Create Kubernetes secrets from Vault for a secure GitOps based workflow.
awesome-home-kubernetes - ⚠️ Deprecated: Awesome projects involving running Kubernetes at home
sops - Simple and flexible tool for managing secrets
awx - AWX provides a web-based user interface, REST API, and task engine built on top of Ansible. It is one of the upstream projects for Red Hat Ansible Automation Platform.
Vault - A tool for secrets management, encryption as a service, and privileged access management
argocd-operator - A Kubernetes operator for managing Argo CD clusters.
kubernetes-external-secrets - Integrate external secret management systems with Kubernetes
werf - A solution for implementing efficient and consistent software delivery to Kubernetes facilitating best practices.
helm-secrets - A helm plugin that help manage secrets with Git workflow and store them anywhere
home-ops - Wife approved HomeOps driven by Kubernetes and GitOps using Flux
argocd-vault-plugin - An Argo CD plugin to retrieve secrets from Secret Management tools and inject them into Kubernetes secrets