k8s查看集群信息及基本命令 |
您所在的位置:网站首页 › k8s查看资源 › k8s查看集群信息及基本命令 |
👏作者简介:大家好,我是冰点,从业11年,目前在物流独角兽企业从事技术方面工作,🍂博主正在努力完成2023计划中:以梦为马,扬帆起航,2023追梦人📝联系方式:iceicepip,加我进群,大家一起学习,一起进步👀
集群信息的各种查看基本上是在Master节点操作 使用 kubectl describe 命令,查看一个 API 对象的细节: kubectl describe node IP kubectl delete node IP 1.6、查看集群信息 kubectl cluster-info Kubernetes master is running at http://localhost:8080 1.7、查看各组件信息 使用安全连接: kubectl -s https://URL get componentstatuses 未使用安全连接 kubectl -s http://URL get componentstatuses 1.8、查看资源类型所对应的Apiversion kubectl explain pod 1.9、查看帮助 kubectl explain deployment kubectl explain deployment.spec kubectl explain deployment.spec.replicas 2. K8S常用命令40条kubectl version:查看 k8s 版本信息。 kubectl cluster-info:查看 k8s 集群信息,包括 API Server 的地址和版本以及控制平面组件的状态。 kubectl get nodes:查看集群中的节点信息,包括节点名称、IP 地址、状态和运行时间等。 kubectl get pods:查看当前命名空间下的 Pod 信息,包括 Pod 名称、所属节点、容器状态、IP 地址等。 kubectl get services:查看当前命名空间下的 Service 信息,包括 Service 名称、类型、所属端口、IP 地址等。 kubectl get deployments:查看当前命名空间下的 Deployment 信息,包括 Deployment 名称、所属 Pod、所属 ReplicaSet 等。 kubectl get configmaps:查看当前命名空间下的 ConfigMap 信息,包括 ConfigMap 名称、数据信息等。 kubectl get secrets:查看当前命名空间下的 Secret 信息,包括 Secret 名称、数据信息等。 kubectl describe:查看资源的详细信息,包括资源的属性、状态、事件等。 kubectl logs:查看 Pod 和容器的日志信息。 kubectl apply:应用 YAML 文件中定义的资源配置。 kubectl delete:删除指定的资源或资源集合。 kubectl exec:在 Pod 中的容器中执行命令。 kubectl port-forward:将本地端口转发到 Pod 中的容器中。 kubectl rollout:管理 Deployment 的滚动升级操作。 kubectl scale:扩展或缩小 Deployment 的副本数。 kubectl label:给指定资源添加标签,可以方便地对资源进行分类和筛选。 kubectl annotate:给指定资源添加注释信息,可以记录一些描述性的信息。 kubectl rollout history:查看 Deployment 的升级历史记录。 kubectl rollout undo:撤销 Deployment 的升级操作,可以回滚到之前的版本。 kubectl top:查看集群中资源的 CPU 和内存使用情况。 kubectl exec -ti:在 Pod 中的容器中打开交互式终端。 kubectl logs -f:实时查看 Pod 和容器的日志信息。 kubectl proxy:启动本地代理,可以通过代理访问 k8s 集群中的 API。 kubectl rollout pause:暂停 Deployment 的升级操作。 kubectl rollout resume:恢复 Deployment 的升级操作。 kubectl attach:连接到 Pod 中的容器,可以查看容器的标准输出和错误输出。 kubectl rollout status:查看 Deployment 的滚动升级状态。 kubectl rollout restart:重启 Deployment 中的所有 Pod。 kubectl drain:将节点设置为维护模式,可以避免节点上的 Pod 被删除。 kubectl uncordon:将节点设置为可调度状态,可以重新调度 Pod 到该节点上。 kubectl get ingresses:查看当前命名空间下的 Ingress 资源。 kubectl get namespaces:查看集群中所有命名空间的信息。 kubectl get nodes -o wide:查看节点的详细信息,包括节点的 IP 地址、标签、状态等。 kubectl get pods -o wide:查看 Pod 的详细信息,包括 Pod 所在节点的 IP 地址、容器的 IP 地址、容器状态等。 kubectl get services -o wide:查看 Service 的详细信息,包括 Service 的类型、IP 地址、端口号、所属节点等。 kubectl get deployments -o wide:查看 Deployment 的详细信息,包括副本数、所属节点、更新策略等。 kubectl rollout history deployment/ --revision=:查看指定 Deployment 的某个版本的升级历史。 kubectl rollout undo deployment/ --to-revision=:回滚指定 Deployment 到某个版本。 kubectl explain:查看 k8s API 对象的详细定义信息。 3.命令实操好的,以下是每个命令的执行示例和响应示例: 3.1. kubectl version执行示例: kubectl version响应示例: Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.0", GitCommit:"c2b52b3f4a9d2f1a9dfffdaa49fcaa89ec6e33c4", GitTreeState:"clean", BuildDate:"2021-08-04T09:01:25Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"darwin/amd64"} Server Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.0", GitCommit:"c2b52b3f4a9d2f1a9dfffdaa49fcaa89ec6e33c4", GitTreeState:"clean", BuildDate:"2021-08-04T08:59:53Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"} 3.2. kubectl cluster-info执行示例: kubectl cluster-info响应示例: Kubernetes master is running at https://192.168.99.100:8443 KubeDNS is running at https://192.168.99.100:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy 3.3. kubectl get nodes执行示例: kubectl get nodes响应示例: NAME STATUS ROLES AGE VERSION minikube Ready 12d v1.22.2 3.4. kubectl get pods执行示例: kubectl get pods响应示例: NAME READY STATUS RESTARTS AGE nginx-deployment-5d6b7cb8c4-7s2j4 1/1 Running 0 12d nginx-deployment-5d6b7cb8c4-bm9q9 1/1 Running 0 12d nginx-deployment-5d6b7cb8c4-lr6c4 1/1 Running 0 12d 3.5. kubectl get services执行示例: kubectl get services响应示例: NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 443/TCP 12d nginx-service NodePort 10.98.121.103 80:30080/TCP 12d 3.6. kubectl get deployments执行示例: kubectl get deployments响应示例: NAME READY UP-TO-DATE AVAILABLE AGE nginx-deployment 3/3 3 3 12d 3.7. kubectl get configmaps执行示例: kubectl get configmaps响应示例: NAME DATA AGE nginx-config 1 12d 3.8. kubectl get secrets执行示例: kubectl get secrets响应示例: NAME TYPE DATA AGE default-token-w8t6h kubernetes.io/service-account-token 3 12d 3.9. kubectl describe执行示例: kubectl describe pods nginx-deployment-5d6b7cb8c4-7s2j4响应示例: Name: nginx-deployment-5d6b7cb8c4-7s2j4 Namespace: default Priority: 0 Node: minikube/192.168.99.101 Start Time: Sat, 29 May 2021 10:39:59 +0800 ... 3.10. kubectl logs执行示例: kubectl logs nginx-deployment-5d6b7cb8c4-7s2j4响应示例: 127.0.0.1 - - [29/May/2021:10:40:31 +0800] "GET / HTTP/1.1" 200 612 "-" "curl/7.6411. kubectl apply 3.11 kubectl apply执行示例: kubectl apply -f nginx-deployment.yaml响应示例: deployment.apps/nginx-deployment created 3.12. kubectl delete执行示例: kubectl delete deployment nginx-deployment响应示例: deployment.apps "nginx-deployment" deleted 3.13. kubectl exec执行示例: kubectl exec -it nginx-deployment-5d6b7cb8c4-7s2j4 -- /bin/bash响应示例: root@nginx-deployment-5d6b7cb8c4-7s2j4:/# 3.14. kubectl port-forward执行示例: kubectl port-forward nginx-deployment-5d6b7cb8c4-7s2j4 8080:80响应示例: Forwarding from 127.0.0.1:8080 -> 80 Forwarding from [::1]:8080 -> 80 3.15. kubectl rollout执行示例: kubectl rollout status deployment/nginx-deployment响应示例: deployment "nginx-deployment" successfully rolled out 3.16. kubectl scale执行示例: kubectl scale deployment nginx-deployment --replicas=5响应示例: deployment.apps/nginx-deployment scaled 3.17. kubectl label执行示例: kubectl label pod nginx-deployment-5d6b7cb8c4-7s2j4 app=nginx响应示例: pod/nginx-deployment-5d6b7cb8c4-7s2j4 labeled 3.18. kubectl annotate执行示例: kubectl annotate pod nginx-deployment-5d6b7cb8c4-7s2j4 description="This pod is used for testing"响应示例: pod/nginx-deployment-5d6b7cb8c4-7s2j4 annotated 3.19. kubectl rollout history执行示例: kubectl rollout history deployment/nginx-deployment响应示例: deployment.apps/nginx-deployment REVISION CHANGE-CAUSE 1 2 kubectl apply --filename=nginx-deployment.yaml --record=true 3.20. kubectl rollout undo执行示例: kubectl rollout undo deployment/nginx-deployment --to-revision=1响应示例: deployment.apps/nginx-deployment rolled back 3.21. kubectl top执行示例: kubectl top pods响应示例: NAME CPU(cores) MEMORY(bytes) nginx-deployment-5d6b7cb8c4-7s2j4 1m 8Mi nginx-deployment-5d6b7cb8c4-bm9q9 1m 8Mi nginx-deployment-5d6b7cb8c4-lr6c4 1m 7Mi 3.22. kubectl exec -ti执行示例: kubectl exec -ti nginx-deployment-5d6b7cb8c4-7s2j4 -- /bin/bash响应示例: root@nginx-deployment-5d6b7cb8c4-7s2j4:/# 3.23. kubectl logs -f执行示例: kubectl logs -f nginx-deployment-5d6b7cb8c4-7s2j4响应示例: 127.0.0.1 - - [29/May/2021:10:40:31 +0800] "GET / HTTP/1.1" 200 612 "-" "curl/7.64 127.0.0.1 - - [29/May/2021:10:40:41 +0800] "GET / HTTP/1.1" 200 612 "-" "curl/7.64 3.24. kubectl proxy执行示例: kubectl proxy响应示例: Starting to serve on 127.0.0.1:8001 3.25. kubectl rollout pause执行示例: kubectl rollout pause deployment/nginx-deployment响应示例: deployment.apps/nginx-deployment paused 3.26. kubectl rollout resume执行示例: kubectl rollout resume deployment/nginx-deployment响应示例: deployment.apps/nginx-deployment resumed 3.27. kubectl create执行示例: kubectl create deployment nginx-deployment --image=nginx:latest --replicas=3响应示例: deployment.apps/nginx-deployment created 3.28. kubectl edit执行示例: kubectl edit deployment nginx-deployment响应示例: deployment.apps/nginx-deployment edited 3.29. kubectl apply执行示例: kubectl apply -f nginx-deployment.yaml响应示例: deployment.apps/nginx-deployment created 3.30. kubectl rollout restart执行示例: kubectl rollout restart deployment/nginx-deployment响应示例: deployment.apps/nginx-deployment restarted要查看 Kubernetes 集群的信息,你可以使用以下命令: kubectl cluster-info: 查看集群信息,包括 API Server 的地址和端口、DNS 服务的 IP 地址等。 示例: $ kubectl cluster-info Kubernetes master is running at https://127.0.0.1:6443 KubeDNS is running at https://127.0.0.1:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxykubectl get nodes: 查看集群中的节点信息,包括节点名称、状态、IP 地址等。 示例: $ kubectl get nodes NAME STATUS ROLES AGE VERSION node-1 Ready control-plane,master 5d3h v1.22.1 node-2 Ready 5d3h v1.22.1 node-3 Ready 5d3h v1.22.1kubectl get pods --all-namespaces: 查看集群中所有命名空间下的 Pod 信息,包括 Pod 名称、所属命名空间、状态等。 示例: $ kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-558bd4d5db-gm5tv 1/1 Running 0 5d3h kube-system coredns-558bd4d5db-lz5nx 1/1 Running 0 5d3h kube-system etcd-node-1 1/1 Running 0 5d3h kube-system kube-apiserver-node-1 1/1 Running 0 5d3h kube-system kube-controller-manager-node-1 1/1 Running 0 5d3h kube-system kube-flannel-ds-amd64-7k9d5 1/1 Running 0 5d3h kube-system kube-flannel-ds-amd64-rkq9r 1/1 Running 0 5d3h kube-system kube-flannel-ds-amd64-w8l57 1/1 Running 0 5d3h kube-system kube-proxy-4ph2h 1/1 Running 0 5d3h kube-system kube-proxy-7p7r5 1/1 Running 0 5d3h kube-system kube-proxy-tj4h5 1/1 Running 0 5d3h kube-system kube-scheduler-node-1 1/1 Running 0 5d3hkubectl get deployments --all-namespaces: 查看集群中所有命名空间下的 Deployment 信息,包括 Deployment 名称、所属命名空间、副本数等。 示例: $ kubectl get deployments --all-namespaces NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE kube-system coredns 2/2 2 2 5d3hkubectl get services --all-namespaces: 查看集群中所有命名空间下的 Service 信息,包括 Service 名称、所属命名空间、类型、端口等。 示例: $ kubectl get services --all-namespaces NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE default kubernetes ClusterIP 10.96.0.1 443/TCP 5d3h kube-system kube-dns ClusterIP 10.96.0.10 53/UDP,53/TCP 5d3h以上是一些常用的用于查看 Kubernetes 集群信息的命令,通过这些命令,你可以快速了解集群的状态和组成。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |