Pages

Wednesday, January 31, 2024

Kubernetes Commands

1. Nodes

CommandsDescription
kubectl get nodeTo list down all worker nodes.
kubectl delete node <node_name>Delete the given node in cluster.
kubectl top nodeShow metrics for a given node.
kubectl describe nodes | grep ALLOCATED -A 5Describe all the nodes in verbose.
kubectl get pods -o wide | grep <node_name>List all pods in the current namespace, with more details.
kubectl get no -o wideList all the nodes with mode details.
kubectl describe noDescribe the given node in verbose.
kubectl annotate node <node_name>Add an annotation for the given node.
kubectl uncordon node <node_name>Mark my-node as schedulable.
kubectl label nodeAdd a label to given node


2. Pods
CommandsDescription
kubectl get poTo list the available pods in the default namespace.
kubectl describe pod <pod_name>To list the detailed description of pod.
kubectl delete pod <pod_name>To delete a pod with the name.
kubectl create pod <pod_name>To create a pod with the name.
Kubectl get pod -n <name_space>To list all the pods in a namespace.
Kubectl create pod <pod_name> -n <name_space>To create a pod with the name in a namespace.

3. Namespaces
CommandsDescription
kubectl create namespace <namespace_name>To create a namespace by the given name.
kubectl get namespaceTo list the current namespace in a cluster.
kubectl describe namespace <namespace_name>To display the detailed state of one or more namespaces.
kubectl delete namespace <namespace_name>To delete a namespace.
kubectl edit namespace <namespace_name>To edit and update the definition of a namespace.

4. Services
CommandsDescription
kubectl get servicesTo list one or more services.
kubectl describe services <services_name>To list the detailed display of services.
kubectl delete services -o wideTo delete all the services.
kubectl delete service < service_name>To delete a particular service.

5. Deployments
CommandsDescription
kubectl create deployment <deployment_name>To create a new deployment.
kubectl get deploymentTo list one or more deployments.
kubectl describe deployment <deployment_name>To list a detailed state of one or more deployments.
kubectl delete deployment<deployment_name>To delete a deployment.
6. DaemonSets
CommandDescription
kubectl get dsTo list out all the daemon sets.
kubectl get ds -all-namespacesTo list out the daemon sets in a namespace.
kubectl describe ds [daemonset_name][namespace_name]To list out the detailed information for a daemon set inside a namespace.
7. Events
CommandsDescription
kubectl get eventsTo list down the recent events for all the resources in the system.
kubectl get events --field-selector involvedObject.kind != PodTo list down all the events except the pod events.
kubectl get events --field-selector type != NormalTo filter out normal events from a list of events.
8. Logs
CommandsDescription
kubectl logs <pod_name>To display the logs for a Pod with the given name.
kubectl logs --since=1h <pod_name>To display the logs of last 1 hour for the pod with the given name.
kubectl logs --tail-20 <pod_name>To display the most recent 20 lines of logs.
kubectl logs -c <container_name> <pod_name>To display the logs for a container in a pod with the given names.
kubectl logs <pod_name> pod.logTo save the logs into a file named as pod.log.

9. ReplicaSets
CommandsDescription
kubectl get replicasetsTo List down the ReplicaSets.
kubectl describe replicasets <replicaset_name>To list down the detailed state of one or more ReplicaSets.
kubectl scale --replace=[x]To scale a replica set.

10. Service Accounts
CommandsDescription
kubectl get serviceaccountsTo List Service Accounts.
kubectl describe serviceaccountsTo list the detailed state of one or more service accounts.
kubectl replace serviceaccountsTo replace a service account.
kubectl delete serviceaccounts <name>To delete a service account.

Changing Resource Attributes

Taints: They ensure that pods are not placed on inappropriate nodes.
CommandDescription
kubectl taint <node_name><taint_name>This is used to update the taints on one or more nodes.
Labels: They are used to identify pods.
CommandDescription
kubectl label pod <pod_name> Add or update the label of a pod
For Cluster Introspection
CommandsDescription
kubectl versionTo get the information related to the version.
kubectl cluster-infoTo get the information related to the cluster.
kubectl config g viewTo get the configuration details.
kubectl describe node <node_name>To get the information about a node.
Interacting with Deployments and Services
CommandsDescription
kubectl logs deploy/my-deploymentDump Pod logs for a Deployment (single-container case).
kubectl logs deploy/my-deployment -c my-containdump Pod logs for a Deployment (multi-container case).
kubectl port-forward svc/my-service 5000To listen on local port 5000 and forward to port 5000 on Service backend.
kubectl port-forward deploy/my-deployment 5000:6000To listen on local port 5000 and forward to port 6000 on a Pod created by <my-deployment>.
kubectl exec deploy/my-deployment -- lsTo run command in first Pod and first container in Deployment (single- or multi-container cases).



No comments:

Post a Comment