K8s一些名词解释和命令

1. k8s简介

k8s是kubernetes的简称,是用8代替首尾ks中间的8个字符的缩写。是一个用于自动化部署、扩展和管理容器化应用程序的开源系统。包含如下特点:

  • 服务发现和负载均衡
  • 健康检查和自修复
  • 横向扩展
  • 批次执行
  • 存储编排
  • 自动滚动和回滚

2. 名词解释

2.1 pod

Pod是Kubernetes创建或部署的最小/最简单的基本单位,一个Pod代表集群上正在运行的一个进程。一个Pod封装一个应用容器(也可以有多个容器),存储资源、一个独立的网络IP以及管理控制容器运行方式的策略选项。Pod代表部署的一个单位:Kubernetes中单个应用的实例,它可能由单个容器或多个容器共享组成的资源。

2.2 ReplicationController

ReplicationController是一种Kubemetes资源,可确保它的pod始终保持运行状态。如果通过参数replicas配置pod副本数,例如replicas: 3,则ReplicationController在监控中发现pod数目小于3会自动创建pod,使副本数始终保持配置的数量。

2.3 服务 (serice)

Kubemetes 服务是一种为 一 组功能相同的 pod 提供单一 不变的接入点的资源。
当服务存在时,它的 IP 地址和端口不会改变。 客户端通过 IP 地址和端口号建立连接,
这些连接会被路由到提供该服务的任意 一个 pod 上。 通过这种方式, 客户端不需要
知道每个单独的提供服务的 pod 的地址, 这样这些 pod 就可以在集群中随时被创建
或移除。

3. 常用命令

3.1 集群信息

kubectl cluster-info

3.2 pod

查看所有pod
kubectl get pods --all-namespaces
查看单个pod详情,PODNAME和NAMESPACENAME需要赋值,–namespace不写则为默认的namespace
kubectl describe pod PODNAME --namespace=NAMESPACENAME
删除pod,PODNAME需要赋值
kubectl delete pod PODNAME

3.3 服务 (serice)

查看所有服务
kubectl get svc --all-namespaces
查看单个服务
kubectl describe service SERVERNAME --namespace=NAMESPACENAME

3.4 ReplicationController

查看rc(ReplicationController)和上述命令类似

<< Kubernetes(简称k8s)本身并不是Java技术栈的一部分,但作为一位Java开发人员,在实际工作中可能会与基于云原生的应用程序打交道。了解一些常见的Kubernetes命令有助于管理部署在容器中的Java应用程序。 以下是一些常用的 Kubernetes 基础命令及其功能: ### kubectl基础命令 1. **获取集群信息** ```java // 获取所有命名空间下的Pod列表 kubectl get pods --all-namespaces // 查看节点状态 kubectl get nodes ``` 2. **描述资源详细信息** ```java // 描述特定 Pod 的详细信息 kubectl describe pod <pod-name> // 描述服务的配置详情 kubectl describe svc <service-name> ``` 3. **创建、删除或编辑资源** - 使用 YAML 文件定义资源配置: ```bash // 根据yaml文件创建资源 kubectl apply -f config.yaml // 删除根据指定YAML文件所创建的资源 kubectl delete -f config.yaml // 直接在线修改某现有资源 kubectl edit deployment/<deployment_name> ``` 4. **进入正在运行的容器内部检查日志等** ```java // 进入某个具体的Pod里的第一个容器执行交互式shell(如果支持的话) kubectl exec -it <your-pod-name> bash/sh // 导出该Pod的标准输出/错误流的日志记录到控制台 kubectl logs <your-pod-name> ``` 5. **滚动更新与回滚版本号** 当你希望对现有的Deployment进行渐进式的升级时可以用此操作: ```java // 执行一次新的镜像替换策略并观察整个过程的变化趋势图示化表达形式. kubectl rollout status deploy/<deployments> // 如果出现问题,可以很方便地将应用恢复至之前的稳定statepoint: kubectl rollout undo deploy/<deployments> ``` 这些只是部分的基础命令展示,并且每条指令都有丰富的参数选项可满足更复杂的场景需求。 由于篇幅限制无法一一列举出来所有的可能性,具体可以根据官方文档深入学习探索更多高级玩法!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值