kubectl-aliases
ingress
Our great sponsors
kubectl-aliases | ingress | |
---|---|---|
7 | 7 | |
3,259 | 572 | |
- | 3.7% | |
3.1 | 8.2 | |
5 months ago | 9 days ago | |
Shell | 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.
kubectl-aliases
-
☸️ Kubernetes: A Pragmatic Kubectl Aliases Collection
# autocomplete kubectl & helm source <(kubectl completion zsh) source <(helm completion zsh) alias k=kubectl # when using below aliases, print kubectl command and then execute it function kctl() { echo "+ kubectl $@" && command kubectl $@ } # add aliases collection like 'kgpo' for 'kubectl get pods` from https://github.com/ahmetb/kubectl-aliases [ ! -f ~/.kube/aliases.sh ] && curl -fsSL "https://raw.githubusercontent.com/ahmetb/kubectl-aliases/master/.kubectl_aliases" > ~/.kube/aliases.sh && sed -i -e 's/kubectl/kctl/g' ~/.kube/aliases.sh source ~/.kube/aliases.sh # set default namespace alias kn='kctl config set-context --current --namespace' # get events sorted by last timestamp alias kgel='kctl get events --sort-by=.lastTimestamp' # get events sorted by creation timestamp alias kgec='kctl get events --sort-by=.metadata.creationTimestamp' # get pod's descending events function kger() { kctl get events --sort-by=.lastTimestamp --field-selector involvedObject.name="$@" } # get 'real' all alias kgworld='kctl get $(kubectl api-resources --verbs=list --namespaced -o name | paste -sd ",")' # display all nodes resources request and limits alias kgnr="k get nodes --no-headers | awk '{print \$1}' | xargs -I {} sh -c 'echo {} ; kubectl describe node {} | grep Allocated -A 5 | grep -ve Event -ve Allocated -ve percent -ve -- ; echo '" # start a debug pod (including lots of troubleshooting tools) alias kdebug="kctl -n default run debug-$USER --rm -it --tty --image leodotcloud/swiss-army-knife:v0.12 --image-pull-policy=IfNotPresent -- bash" # get pod's containers list function kgpc() { kctl get pod -o jsonpath="{.spec.containers[*].name}" "$@" && echo "" } # ping a service, ex: 'kping whoami:8080' alias kping='kctl run httping -it --image bretfisher/httping --image-pull-policy=IfNotPresent --rm=true --' # get existing pod's yaml without forbidden fields, ex: 'kyaml pod whoami' function kyaml() { kubectl get "$@" -o yaml | kubectl-neat } # display and delete failed pods in current namespace alias krmfailed='kctl delete pods --field-selector=status.phase=Failed'
- Good and/or helpful aliases to know for CKA/CKAD/Daily use?
-
Aliasing kubectl with "kc"
I like https://github.com/ahmetb/kubectl-aliases because it helps keep the formal nomenclature in my head while providing faster terminal entry.
- What are your aliases?
- Most important discussion from KubeCon
-
Everything Useful I Know About kubectl
I would highly recommend not aliasing k to kubectl and instead get this: https://github.com/ahmetb/kubectl-aliases
- For local projects, do you change your node port range?
ingress
-
What are the most popular ingress controllers
Caddy
-
Nginx Modern Reference Architectures
That is true, unfortunately. We, the core maintainers, don't use k8s ourselves, so we need to defer to the community for help. See https://github.com/caddyserver/ingress
-
Show HN: Caddy v2.5.0
Caddy at its simplest form is an HTTP server. So you could use it to front end your application that otherwise isn't well suited for taking direct HTTP requests. Caddy would bring you other features like TLS support.
However I think in K8s world Caddy would make the most sense as an Ingress Controller. There is even a project as such: https://github.com/caddyserver/ingress
All traffic would terminate first at Caddy. Handling TLS, HTTP1/2/3, etc. Then passing it back to your application service/pod.
- Cloudflare Proxy Alternative
-
For local projects, do you change your node port range?
Sorry actually I'm mixing up caddy with traefik. And ingress is an http lb + something that talks to k8s to dynamically update the configuration. Caddy has a WIP ingress project https://github.com/caddyserver/ingress
-
Considering (and deciding against) a switch from Traefik to an Envoy-based Ingress Controller
We have an ingress controller in the works by the community here: https://github.com/caddyserver/ingress
What are some alternatives?
kube-ps1 - Kubernetes prompt info for bash and zsh
multus-cni - A CNI meta-plugin for multi-homed pods in Kubernetes
metallb - A network load-balancer implementation for Kubernetes using standard routing protocols
aws-load-balancer-controller - A Kubernetes controller for Elastic Load Balancers
konfig - konfig helps to merge, split or import kubeconfig files
caddy-l4 - Layer 4 (TCP/UDP) app for Caddy
kutectl - A couple of bash aliases and functions to make your life easier when dealing with kubectl.
kubectl-tmux-exec - A kubectl plugin to control multiple pods simultaneously using Tmux
Caddy - Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
daily-learnings - A collection of handy scripts, configs that I have learnt+wrote & forgot over time.
gateway-api - Repository for the next iteration of composite service (e.g. Ingress) and load balancing APIs.