sealed-secrets
werf
Our great sponsors
sealed-secrets | werf | |
---|---|---|
69 | 15 | |
7,120 | 3,909 | |
2.1% | 1.2% | |
9.2 | 9.8 | |
12 days ago | 5 days ago | |
Go | Go | |
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.
sealed-secrets
-
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)
- How do other securely manage their secrets?
-
GitOps and Kubernetes – Secure Handling of Secrets
An option that easily works with GitOps is the Operator Sealed Secrets from Bitnami. Secrets encrypted with it can only be decrypted by operators running inside the cluster, not even by the original author. For encryption, there is a CLI (and a third-party web UI) that requires a connection to the cluster. The disadvantage of this is that the key material is stored in the cluster, the secrets are bound to the cluster and one has to take care of backups and operation.
werf
-
Is there a CD solution that can be (painlessly) fully automated between stages?
I am looking as well for this kind of tool. I just took a look today by exploring the CNCF landscape this tool : https://werf.io/ , I haven't used it, but it seems to take care of painful stuff like automatic versioning for example. (If someone here tried it, I will be happy to listen to your feedbacks)
-
Phabricator replacement? | Or OpenProject alternative? | issue tracking/code
Werf - um ok
-
Top 200 Kubernetes Tools for DevOps Engineer Like You
HybridK8s Droid - Intelligence foor your favourite Delivery Platform Devtron - Software Delivery Workflow for Kubernetes Skaffold - Easy and Repeatable Kubernetes Development Apollo - Apollo - The logz.io continuous deployment solution over kubernetes Helm Cabin - Web UI that visualizes Helm releases in a Kubernetes cluster flagger - Progressive delivery Kubernetes operator (Canary, A/B Testing and Blue/Green deployments) Kubeform - Kubernetes CRDs for Terraform providers https://kubeform.com Spinnaker - Spinnaker is an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. http://www.spinnaker.io/ werf - GitOps tool to deliver apps to Kubernetes and integrate this process with GitLab and other CI tools Flux - GitOps Kubernetes operator Argo CD - Declarative continuous deployment for Kubernetes Tekton - A cloud native continuous integration and delivery (CI/CD) solution Jenkins X - Jenkins X provides automated CI+CD for Kubernetes with Preview Environments on Pull Requests using Tekton, Knative, Lighthouse, Skaffold and Helm KubeVela - KubeVela works as an application delivery control plane that is fully decoupled from runtime infrastructure ksonnet - A CLI-supported framework that streamlines writing and deployment of Kubernetes configurations to multiple clusters CircleCI - A cloud-based tool that helps build continuous integration and continuous delivery pipelines to Kubernetes.
-
Deployment Watching Tool
Check out https://werf.io/ tool. It features giterminism which is somewhat similar to gitops, but it does not require pull model. Giterminism aims to improve reproducibility of your build and deploy configuration. werf also features content-based-tagging out of the box, which allows creating immutable images, stored in the container-registry, shared between multiple runners (werf uses distributed locking to prevent overriding image which is already published). Giterminism and content-based-tagging enables easy rollbacks to any git-commit in the history of your project. By design werf could be embedded into any ci/cd system.
-
werf is a CLI tool for implementing CI/CD with Kubernetes; its v1.2 became stable
Rename of dapp to werf was in Jan'19 to be precise (https://github.com/werf/werf/pull/1213).
- Werf
-
11 Open Source Kubernetes Ci Cd Tools To Improve Your Devops
Werf
-
Alternative to helmfile that works well with Github Actions
You can try werf, it has Helm under the hood and there are github actions available for it: https://github.com/werf/actions
-
werf as [yet another] way to build Docker images
As you know, there's plenty of tools that can be used to build your Docker images, besides the docker build itself. werf is an Open Source project with a long history (started in 2016 as a simple wrapper around Docker CLI). Still being a CLI tool, today it is focused not just on the building but also delivering these images to Kubernetes — and this is what makes it really different.
- Podman: A tool for managing OCI containers and pods
What are some alternatives?
vault-secrets-operator - Create Kubernetes secrets from Vault for a secure GitOps based workflow.
argo-cd - Declarative Continuous Deployment for Kubernetes
sops - Simple and flexible tool for managing secrets
flux2 - Open and extensible continuous delivery solution for Kubernetes. Powered by GitOps Toolkit.
Vault - A tool for secrets management, encryption as a service, and privileged access management
terraform-controller - Use K8s to Run Terraform
kubernetes-external-secrets - Integrate external secret management systems with Kubernetes
kaniko - Build Container Images In Kubernetes
helm-secrets - A helm plugin that help manage secrets with Git workflow and store them anywhere
Fabric - Simple, Pythonic remote execution and deployment.
argocd-vault-plugin - An Argo CD plugin to retrieve secrets from Secret Management tools and inject them into Kubernetes secrets
fleet - Deploy workloads from Git to large fleets of Kubernetes clusters