k8s命名详解

一、集群管理

kubectl cluster-info:查看集群的基本信息,包括API服务器地址、默认命名空间等。

kubectl config view:展示当前kubeconfig文件的内容,该文件存储了与K8s集群交互所需的认证、授权及集群访问信息。

kubectl config set-context context-name:切换或设置当前使用的上下文(context),便于在同一客户端中管理多个K8s集群。
二、资源对象管理

kubectl get resource-type resource-name:查询指定类型(如pod、deployment、service等)的资源对象,可选指定具体名称。例如,"kubectl get pods"列出所有Pod。

kubectl describe resource-type resource-name:详细描述特定资源对象的状态、事件、配置等信息,有助于故障排查。

kubectl create -f yaml-file:根据指定的YAML或JSON文件创建资源对象。这是部署应用的主要方式。

kubectl apply -f yaml-file:对已存在的资源对象进行更新或创建新资源。相较于"create",apply能更好地处理配置变更。

kubectl delete resource-type resource-name:删除指定的资源对象。也可结合"-f"参数删除由YAML或JSON文件定义的多个资源。
三、Pod管理

kubectl exec pod-name -- command:在指定Pod内执行命令,如进入容器内部进行调试。

kubectl logs pod-name -c container-name:查看Pod中容器的日志输出,可选指定特定容器。

kubectl port-forward pod-name local-port:container-port:建立本地端口到Pod内指定容器端口的转发,便于直接访问应用服务。
四、Deployment与ReplicaSet管理

kubectl scale deployment deployment-name --replicas=count:调整Deployment的副本数,实现水平伸缩。

kubectl rollout status deployment deployment-name:监控Deployment的滚动更新进度。

kubectl rollout undo deployment deployment-name:回滚到Deployment的前一个版本,用于快速恢复故障。
五、Service与Ingress管理

kubectl expose deployment deployment-name --type=LoadBalancer --port=port --target-port=container-port:为Deployment创建外部可访问的服务,自动分配ClusterIP或LoadBalancer IP。

kubectl get services:查看所有Service及其IP、端口映射等信息。

kubectl apply -f ingress.yaml:创建或更新Ingress规则,实现七层路由和外部流量管理。
六、Namespace管理

kubectl create namespace namespace-name:创建新的命名空间,以便对资源进行逻辑隔离。

kubectl get namespaces:查看所有命名空间及其状态。

kubectl set context --namespace=namespace-name:临时切换当前操作的命名空间。

相关推荐
辉的技术笔记3 小时前
Dify 自部署为什么跑不动?6 层瓶颈诊断法教你定位
docker
程序员老赵1 天前
Docker 部署 Redmine:老牌开源项目管理部署实测记录
docker·开源·团队管理
程序员老赵1 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
lichenyang4533 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4533 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4533 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4533 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
运维开发故事6 天前
基于 Arthas 的多集群在线诊断系统设计与实现
kubernetes
Patrick_Wilson8 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
探索云原生8 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes