k8s 资源管理及查看命令

 关注 迪答数据 公众号获取更多 技术/数据 干货文章 

文章传送门:数据治理之指标体系管理


管理容器的计算资源

参考文档: Kubernetes Managing Compute Resources for Containers(opens new window)https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/

概述

在 Kubernetes 中创建工作负载时,您可以为 Pod 中的每一个容器指定其所需要的内存(RAM)大小和 CPU 数量。如果这些信息被指定了,Kubernetes 调度器可以更好的决定将 Pod 调度到哪一个节点。对于容器来说,其所需要的资源也将依据其指定的数值得到保证。

资源类型及计量

当我们讨论计算资源的时候,主要是指 CPU 和 内存。CPU 的计量单位是内核的单元数,内存的计量单位是 byte 字节数。应用程序可以按量请求、分配、消耗计算资源。

CPU 的计量

在 Kubernetes 中,1 个 CPU 代表:

  • 1 AWS vCPU
  • 1 GCP Core
  • 1 Azure vCore
  • 1 IBM vCPU
  • 物理机上 Intel 超线程 CPU 的 1 个超线程(Hyperthread)

Kubernetes 中,0.5 代表请求半个 CPU 资源。表达式 0.1 等价于 表达式 100m (英文读作 one hundred millicpu 或 one hundred millicores)。在 API Server 中,表达式 0.1 将被转换成 100m,精度低于 1m 的请求是不受支持的。 CPU 的计量代表的是绝对值,而非相对值,例如,您请求了 0.1 个 CPU,无论您的节点是 单核、双核、48核,您得到的 CPU 资源都是 0.1 核。

TIP

在 top 命令查看CPU消耗,100% 代表 1核;4核为 400%;10% 代表 0.1 核 或者 100m

内存的计量

内存的计量单位是 byte 字节。您可以使用一个整数来表达内存的大小,也可以使用后缀来表示(E、P、T、G、M、K)。您也可以使用 2 的幂数来表示内存大小,其后缀为(Ei、Pi、Ti、Gi、Mi、Ki)。例如,下面的几个表达方式所表示的内存大小大致相等:

128974848129e6129M123Mi

查看资源命令

1.top命令查看所有pod,nodes中内存,CPU使用情况

kubectl top pod -n bigdata

data-synchronization-9754cb677-gdgxv          6m           676Mi           
data-synchronization-taskmanager-1-1          8m           891Mi           
dolphinscheduler-alert-7c449f8446-nng4t       2m           508Mi           
dolphinscheduler-api-5fccd6d446-qbtjm         4m           659Mi           
dolphinscheduler-master-0                     4m           982Mi           
dolphinscheduler-worker-0                     2m           1017Mi          
dolphinscheduler-worker-1                     4m           992Mi           
dolphinscheduler-worker-2                     2m           1004Mi          
minio-0                                       7m           222Mi           
minio-1                                       7m           199Mi           
minio-2                                       4m           206Mi           
minio-3                                       6m           168Mi           
minio-4                                       6m           164Mi 

2.查看具体某一个pod

kubectl top pod minio-4 -n bigdata

NAME      CPU(cores)   MEMORY(bytes)   
minio-4   7m           164Mi    

更多查看命令 :Kubernetes 集群分析查看内存,CPU

 Flink任务资源分配配置

配置项说明
JobManager CPU Cores默认值为1。根据Flink最佳实践,单个JM内存资源需要至少配置为0.25 core和1 Gi,才能保证作业稳定运行。
JobManager Memory最小值为1 Gi。单位建议使用Gi或Mi,例如,1024 Mi或1.5 Gi。
TaskManager CPU Cores默认值为1。根据Flink最佳实践,单个TM内存资源需要至少配置为0.25 core和1 Gi,才能保证作业稳定运行。
TaskManager Memory最小值为2 Gi。单位建议使用Gi或Mi,例如,1024 Mi或1.5 Gi。
并发度作业全局并发数,默认值为1。
Flink配置可以配置的参数及说明,详情请参见Configuration

其他命令

复制容器中文件

kubectl cp flink-dev/sit-member-statistic-10-26-1-5c8b55d48c-2d8tt:/opt/flink/usrlib/ /tmp/test

进入到pod里面命令
 

kubectl exec -n flink-dev sit-member-statistic-10-26-1-5c8b55d48c-2d8tt -it -- bash

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
k8s资源管理有几种方式。一种方式是通过使用Namespace来进行资源的隔离和管理。k8s中的Namespace可以将集群内部的资源分配到不同的逻辑组中,以方便不同组的资源进行隔离使用和管理。通过授权机制,可以将不同的Namespace交给不同的租户进行管理,实现多租户的资源隔离。此外,结合资源配额机制,可以限定不同租户能够占用的资源,例如CPU使用量、内存使用量等,来管理租户可用资源。\[2\] 另一种方式是通过操作资源来管理k8s集群。在k8s中,所有内容都可以被抽象为资源,通过操作这些资源来管理集群。例如,可以使用Deployment资源类型来管理应用的部署和更新,使用Service资源类型来提供应用的网络访问,使用ReplicaSet资源类型来控制应用的副本数量,使用DaemonSet资源类型来在集群中的每个节点上运行一个Pod,使用Job资源对象来管理一次性任务的执行,使用CronJob资源类型来定期执行任务等等。通过操作这些资源,可以实现对k8s集群中各种服务和应用的管理和控制。\[1\]\[3\] #### 引用[.reference_title] - *1* [k8s资源类型详解](https://blog.csdn.net/weixin_47019016/article/details/111415831)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [k8s资源管理命令与Namespace使用详解](https://blog.csdn.net/zhangcongyi420/article/details/128379834)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值