CDH运维 swap处理

CDH运维swap处理

博主在使用CDH 6.2大数据平台时发现,CDH长时间运行,Cloudera Manager管理页面在运行Spark任务时候经常会出现组件大量内存交换警告,前期博主直接忽略,毕竟不是什么大问题,后期发现如果长时间黄色警告不处理,会误导页面查看集群状态,并且交换空间所占用磁盘空间越来越大,并且警告越来越多,后续还会有从黄色变为红色异常等情况,后进入管理界面发现,CDH在安装时,Linux操作系统,有选择交换空间地址交给CDH内存不足情况下使用,测试发现手动释放会解决,管理界面警告问题(黄色警告,看着也不舒服)。

目录

  1. swap的作用
  2. CDH告警
  3. 解决方案
  4. 开启关闭swap

swap在Linux中的作用

我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多(硬盘磁道寻址),因此,我们希望所有数据的读取和写入都在内存完成,而内存大小是有限的,并且内存价格高于硬盘价格,这样就引出了物理内存与虚拟内存的概念。

物理内存 就是系统硬件提供的内存大小,是真正的内存,相对于物理内存(free -h)可查看。
虚拟内存 在linux下还有一个虚拟内存的概念,虚拟内存就是为了满足物理内存的不足而提出的策略,它是利用磁盘空间虚拟出 的一块逻辑内存,用作虚拟内存的磁盘空间被称为交换空间,称Swap Space,(swapon -s)可查看。

CDH告警

CDH集群告警
在这里插入图片描述
CDH集群单台机器警告
在这里插入图片描述

在这里插入图片描述
交换空间
在这里插入图片描述

解决方案

一次性解决方案

  • 设置swappiness值为0,表示尽可能不使用交换内存

    临时设置方案,重启后设置不生效

    (控制台输入)sysctl vm.swappiness=0

    查看修改后的值

    # 控制台输入如下语句
    cat /proc/sys/vm/swappiness
    

    永久设置方案,重启后设置依然生效

    # 在/etc/sysctl.conf 文件里添加如下参数
    sudo vi /etc/sysctl.conf
    vm.swappiness=0
    # 或者追加模式, 直接在控制台执行如下语句
    echo 'vm.swappiness=0' >> /etc/sysctl.conf
    
    
  • 彻底关闭swap

    首先要保证内存剩余要大于等于swap使用量,否则会宕机!根据内存机制,swap分区一旦释放,所有存放在swap分区的文件都会转存到物理内存上。通常通过重新挂载swap分区完成释放swap。

    使用free -h查看剩余内存情况

    free -h
    

    查看交换空间挂载情况

    swapon -s
    

    关闭挂载分区的交换空间

    # 关闭挂载分区
    swapoff /dev/dm-1  
    #  开启挂载分区
    # swapon /dev/dm-1
    

    如下图命令所示在这里插入图片描述
    在执行swapoff 命令以后,swap会逐渐减少
    在这里插入图片描述

定期清理方案

编辑脚本 /root/cron/cron_clear_swap.sh

#!/bin/bash
#关闭所有交换空间
swapoff -a
#开启所有交换空间
swapon -a
#输出
echo "释放完毕"

编辑定时任务

# 执行
crontab -e
# 编辑调度,并保存
00 23 * * *  /root/cron/cron_clear_swap.sh

参考blog

CDH交换内存警告解决方法
https://blog.csdn.net/lingbo229/article/details/81912248
CDH大数据平台内存交换,警告问题
https://blog.csdn.net/weixin_38822045/article/details/107695935

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CDH大数据运维,也就是Cloudera的分布式数据平台运维CDHCloudera公司基于Apache Hadoop开发的商业版分布式数据平台,主要用于存储和处理大规模数据。CDH大数据运维通常包括以下几个方面: 1. 集群部署和配置:CDH运维首先要进行集群的部署和配置,包括选择合适的硬件、安装操作系统、配置网络环境等。此外,还需要对CDH的各个组件进行适当的配置,如Hadoop、HBase、Impala等,以满足各种数据处理需求。 2. 资源管理和调度:CDH运维需要对集群中的资源进行管理和调度,以确保任务的顺利执行。这包括对CPU、内存、磁盘等资源的监控和分配,以及对任务的调度和优化。 3. 数据备份和恢复:CDH大数据运维还需要对存储在集群中的数据进行备份和恢复。这可以通过设置合适的数据备份策略和使用分布式文件系统来实现。当数据丢失或损坏时,可以快速恢复数据,确保数据的完整性和可靠性。 4. 性能优化:CDH大数据运维需要进行性能优化,以提高数据处理的效率和响应速度。这包括对集群中的各个组件进行调优和配置优化,以减少资源消耗和提高数据处理能力。 总之,CDH大数据运维是一个综合性的工作,需要对分布式数据平台进行部署、配置、资源管理、备份恢复和性能优化等方面的工作。它的目标是确保集群的稳定运行,保障数据的安全性和可用性,提高数据处理的效率和性能。CDH大数据运维对于企业来说非常重要,可以帮助他们更好地利用大数据进行业务决策和创新。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值