From bc1ba4cb46da0b990fedcb555b3d3ba27e5e754b Mon Sep 17 00:00:00 2001 From: radinpirouz Date: Thu, 31 Oct 2024 09:08:11 +0330 Subject: [PATCH] Remove Old Kubernetes Commands File --- kubernetes/commands.md | 194 ----------------------------------------- 1 file changed, 194 deletions(-) delete mode 100644 kubernetes/commands.md diff --git a/kubernetes/commands.md b/kubernetes/commands.md deleted file mode 100644 index beef64a..0000000 --- a/kubernetes/commands.md +++ /dev/null @@ -1,194 +0,0 @@ -# Kubernetes - -## `kubectl` Command Reference - -### Get State of API Resources -```bash -kubectl api-resources -``` - -### Node Management -- **Show all nodes:** - ```bash - kubectl get node - ``` - -### Namespace Management -- **List all namespaces:** - ```bash - kubectl get namespaces - ``` - ```bash - kubectl get ns - ``` -- **Create a custom namespace:** - ```bash - kubectl create ns - ``` - -### Pod Management -- **Get the list of pods in the default namespace:** - ```bash - kubectl get pod - ``` -- **Get the list of pods in the default namespace with full information:** - ```bash - kubectl get pod -o wide - ``` -- **Get the list of pods in a custom namespace with full information:** - ```bash - kubectl get pod -o wide -n - ``` - -### Running a Pod -- **Run a new pod:** - ```bash - kubectl run { - --image=, # Specifies the container image to use - --port=, # Specifies the port that the container exposes - -n , # Specifies the namespace - --env="KEY=VALUE", # Sets environment variables in the container - --command, # Treats the rest of the arguments as the command to run in the container - --replicas=, # Specifies the number of replicas for the deployment - --labels="key=value,key2=value2", # Adds labels to the pod(s) - --dry-run=client, # Prints the object that would be sent, without creating it - --restart=, # Determines the restart policy for the pod - --overrides='', # Provides a JSON override for the generated object - --image-pull-policy=, # Specifies the image pull policy (Always, IfNotPresent, Never) - --limits=cpu=,memory=, # Specifies resource limits for the container - --requests=cpu=,memory= # Specifies resource requests for the container - } - ``` - - *Example:* - ```bash - kubectl run mypod --image=nginx --port=80 -n mynamespace \ - --env="ENV_VAR_NAME=VALUE" --command -- nginx -g "daemon off;" \ - --replicas=3 --labels="app=myapp,env=prod" --dry-run=client \ - --restart=Always --overrides='{"spec": {"containers": [{"name": "nginx", "image": "nginx"}]}}' \ - --image-pull-policy=IfNotPresent --limits=cpu=100m,memory=256Mi \ - --requests=cpu=50m,memory=128Mi - ``` - - -### Deleting a Pod -- **Delete a pod in a custom namespace:** - ```bash - kubectl delete pod -n - ``` - -### API Resource Documentation -- **Get documentation of an API resource:** - ```bash - kubectl explain - ``` - - *Example:* - ```bash - kubectl explain pod - ``` - -### Logging and Pod Information -- **Get and follow logs of a pod (pod must be created and running):** - ```bash - kubectl logs -f -n - ``` -- **Get logs and state information of a pod (works at any time):** - ```bash - kubectl describe pod -n - ``` - -### Apply Yaml File -```bash -kubectl apply -f -n -``` -### View Pod Details - -```bash -kubectl get pod -n my-ns -o yaml -``` - -This command retrieves and displays the YAML configuration of the pod `testpod1` in the namespace `my-ns`. - -### Label a Node - -```bash -kubectl label node kubernetes.io/= -kubectl get nodes --show-labels -``` -### Retrieve the ReplicaSet -To retrieve information about the ReplicaSet in the `my-ns` namespace, use the following command: -```bash -kubectl get rs -n my-ns -``` - -### Delete All Pods in the Namespace -To delete all pods in the `my-ns` namespace, use the following command: -```bash -kubectl delete pod --all -n my-ns -``` - -### Change the Replica Count to 5 -To scale the ReplicaSet to 5 replicas, you can use one of the following methods: - -1. **Using the `kubectl scale` Command** -```bash -kubectl scale rs my-app --replicas=5 -n my-ns -``` - -## Commands to Manage the Deployment - -### Scale the Deployment -To scale the Deployment to 6 replicas: -```bash -kubectl -n my-ns scale deployment myapp --replicas 6 -``` - -### Retrieve Deployment, ReplicaSets, and Pods -To retrieve information about the Deployment, ReplicaSets, and Pods: -```bash -kubectl get deployment,rs,po myapp -n my-ns -``` - -### Delete the Deployment -To delete the Deployment: -```bash -kubectl delete deployment myapp -n my-ns -``` - -### Retrieve ReplicaSets -To retrieve ReplicaSets: -```bash -kubectl get rs -n my-ns -``` - -### Rollback a Deployment -To undo the last rollout: -```bash -kubectl rollout undo deployment -n my-ns myapp -``` - -To view rollout history: -```bash -kubectl rollout history deployment -n my-ns -``` - -To view a specific revision: -```bash -kubectl rollout history deployment -n my-ns --revision 2 -``` - -To rollback to a specific revision: -```bash -kubectl rollout undo deployment -n my-ns myapp --to-revision 2 -``` - -### Annotate Deployment with Change Cause -To add a change cause annotation: -```bash -kubectl annotate deployment/myapp -n my-ns myapp "kubectl.kubernetes.io/change-cause=v14 released" -``` - -### Horizontal Pod Autoscaler -To create an autoscaler for the Deployment: -```bash -kubectl -n my-ns autoscale deployment nginx --cpu-percent=50 --min=4 --max=10 -```