kubelogin
kubectl-tree
Our great sponsors
kubelogin | kubectl-tree | |
---|---|---|
13 | 4 | |
1,495 | 2,791 | |
- | - | |
8.8 | 4.5 | |
8 days ago | 25 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.
kubelogin
-
Windows auth with K8s on prem
It is sort of a roundabout way, but I sync Active Directory to a Keycloak realm, then use OIDC auth with kube-oidc-proxy (https://github.com/jetstack/kube-oidc-proxy) and kubelogin (https://github.com/int128/kubelogin) for OIDC-based auth to the api server.
-
Kubernetes in production.
Yes, I setup a cluster with no SPFs. That means an HA setup for the external load balancer. I use HAProxy for my ELB, and setup 2 instances with a VRRP + keepalived to provide HA to the ingress controller. I run the control plane private, accessible only from localhost. I setup kube-oidc-proxy (https://github.com/jetstack/kube-oidc-proxy) to expose the API server with single sign-on on the ingress controller, and use the kubelogin plugin (https://github.com/int128/kubelogin) to provide OIDC support to kubectl. I then setup Keycloak to handle OIDC/OAuth2/SAML and syncing to Active Directory, and setup groups in Active Directory to control acccess to clusters. Devs each get their own namespace in the dev cluster, with mostly cluster-admin access to their namespace. Staging/Prod clusters are locked down, with read-only access to devs. Thanks to the OIDC auth to the APIServer, when employees are onboarded & offboarded, we only need to add/remove them from groups in Active Directory and everything else just magically syncs.
-
Getting started with kubectl plugins
Link to GitHub Repository
-
Why are there so many OIDC SSO options for Kubernetes?
kubelogin (helper for k8s build in OIDC support)
-
RBAC MANAGEMENT
I use the kube-login plugin for kubectl (https://github.com/int128/kubelogin) along with the kube-oidc-proxy (https://github.com/jetstack/kube-oidc-proxy), using Keycloak as my OIDC provider (https://www.keycloak.org) and doing LDAP synchronization to Active Directory.
-
k8s dex authentications
With a working dex/OIDC configuration, you could use: https://github.com/int128/kubelogin
-
What is the biggest challenge you/your org faces while running k8s in production?
We use Keycloak for this purpose. We deploy an OIDC-proxy to the kube-api (https://github.com/jetstack/kube-oidc-proxy), then use the kubectl plugin 'kubelogin' (aka oidc-login if you use krew - https://github.com/int128/kubelogin). This gives us the ability to have no user secrets in our KUBECONFIG, and to use Keycloak's Active Directory/LDAP user & group federation to control access to clusters. With this, downloading the KUBECONFIG is self-service, and adding users to new clusters is as easy as adding them to a group in AD.
-
How to Secure Your Kubernetes Cluster with OpenID Connect and RBAC
Before we can go ahead and test this out, we need to do some setup for kubectl so that it knows how to do OIDC authentication. We need to install kubelogin plugin for this. Go ahead and install it using any of the following commands.
-
Making Kubernetes Operations Easy with kubectl Plugins
kubelogin - If you're using OIDC provider such as Google, Keycloak or Dex for authenticating to Kubernetes cluster, then this plugin also known as oidc-login in krew can help you avoid having to manually login into your cluster over and over again. When you setup this plugin, every time you attempt to run any kubectl command without having valid authentication token, oidc-login will automatically open your provider's login page and after successful authentication grabs the token and logs you into the cluster. To see video of workflow check out the repository here.
kubectl-tree
-
[K8s Go client] How to collect all kinds info of all API groups in a single function?
As is mentioned in the beginning of the file, code their is heavily inspired from https://github.com/ahmetb/kubectl-tree.
-
Making Kubernetes Operations Easy with kubectl Plugins
tree - Creating a single object in Kubernetes can trigger creation of many more dependent resources, whether it's just Deployment creating ReplicaSets or instance of an operator creating 20 different objects. This hierarchy can be difficult to navigate and kubectl tree can help with that by creating filesystem-like tree visualization of dependant resources.
-
Weekly: This Week I Learned (TWIL?) thread
tree, a kubectl plugin to display ownership relationships between objects
What are some alternatives?
lens - Lens - The way the world runs Kubernetes
pam-keycloak-oidc - PAM module connecting to Keycloak for user authentication using OpenID Connect/OAuth2, with MFA/2FA/TOTP support
kubectl-neat - Clean up Kubernetes yaml and json output to make it readable
okta-k8s-oidc-terraform-example - An example repo showcasing setting up Okta OIDC using Terraform
kube-lineage - A CLI tool to display all dependencies or dependents of an object in a Kubernetes cluster.
kubectl-kubesec - Security risk analysis for Kubernetes resources
ksniff - Kubectl plugin to ease sniffing on kubernetes pods using tcpdump and wireshark
kube-oidc-proxy - Reverse proxy to authenticate to managed Kubernetes API servers via OIDC.
dex - OpenID Connect (OIDC) identity and OAuth 2.0 provider with pluggable connectors
aad-oidc-identity - This proof of concept aims to showcase the new federated identity credentials in Azure AD working together with Service Account Token Volume Projection and Service Account Issuer Discovery in Kubernetes.
rbac-lookup - Easily find roles and cluster roles attached to any user, service account, or group name in your Kubernetes cluster [Moved to: https://github.com/FairwindsOps/rbac-lookup]
kubectl-curl - Kubectl plugin to run curl commands against kubernetes pods