iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >如何解决生产环境分布式文件系统崩了问题
  • 215
分享到

如何解决生产环境分布式文件系统崩了问题

2024-04-02 19:04:59 215人浏览 泡泡鱼
摘要

这篇文章主要讲解了“如何解决生产环境分布式文件系统崩了问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决生产环境分布式文件系统崩了问题”吧!问题定位

这篇文章主要讲解了“如何解决生产环境分布式文件系统崩了问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决生产环境分布式文件系统崩了问题”吧!

问题定位

通过登录服务器查看系统的访问日志,发现日志文件中输出了如下异常信息。

org.csource.common.MyException: getStoreStorage fail, errno code: 28  at org.csource.fastdfs.StorageClient.newWritableStorageConnection(StorageClient.java:1629)  at org.csource.fastdfs.StorageClient.do_upload_file(StorageClient.java:639)  at org.csource.fastdfs.StorageClient.upload_file(StorageClient.java:162)  at org.csource.fastdfs.StorageClient.upload_file(StorageClient.java:180)

很明显,是系统无法上传文件导致的问题,这个日志信息很重要,对问题的排查起到了至关重要的作用。

分析原因

既然是上传文件出现了问题,那我先试试能不能访问以前上传的文件呢?经过验证,以前上传的文件是可以访问的,再次验证了是上传文件的问题。

既然生产环境是使用的分布式文件系统,一般情况下是没啥问题的,上传文件出现了问题,大概率的事件是服务器磁盘空间不足了。那我就来顺着这个思路排查下问题。

于是乎,我使用df -h 查看服务器的存储空间使用率,已经达到91%了。

如何解决生产环境分布式文件系统崩了问题

嗯,磁盘空间有可能是引起问题的原因。接下来,再来进一步确认下是否是磁盘空间造成的问题。

于是,我再打开/etc/fdfs/目录下的tracker.conf的配置,看到预留的存储空间为10%(注:这里的分布式文件系统使用的是FastDFS)。

如何解决生产环境分布式文件系统崩了问题

看到这里,可以确定就是磁盘空间不足造成的无法上传文件的问题。

总体原因就是:服务器磁盘空间已使用91%,而在分布式文件系统的配置中预留的磁盘空间为10%,实际在上传文件的时候,系统已经检测到当前服务器剩余的磁盘空间不足10%,抛出异常,拒绝上传文件。

到此,问题出现的原因已经确定了,接下来就是要解决问题了。

解决问题

首先,有两种方式可以解决这个问题,一种就是删除不需要的文件;另一种就是扩容磁盘空间。

删除不需要的文件

这种方式慎用,这里,我也简单的介绍下这种方式。我给小伙伴们提供了几种递归删除的方式。

递归删除.pyc格式的文件。

find . -name '*.pyc' -exec rm -rf {} \;

打印当前文件夹下指定大小的文件

find . -name "*" -size 145800c -print

递归删除指定大小的文件(145800)

find . -name "*" -size 145800c -exec rm -rf {} \;

递归删除指定大小的文件,并打印出来

find . -name "*" -size 145800c -print -exec rm -rf {} \;

下面是对上述命令的一些简要说明。

  • "." 表示从当前目录开始递归查找

  • “ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件

  • " -type f "查找的类型为文件

  • "-print" 输出查找的文件目录名

  • -size 145800c 指定文件的大小

  • -exec rm -rf {} \; 递归删除(前面查询出来的结果)

扩容磁盘空间

这里,冰河推荐使用这种方式,我修复生产环境的故障也是使用的这种方式。

通过查看服务器的磁盘空间发现,/data目录下的空间足足有5TB,呵呵,运维哥们为啥不把文件系统的数据存储目录指向/data目录呢。于是乎,我开始将文件系统的数据存储目录迁移到/data目录下,整个过程如下所示。

注意:这里,我就简单的模拟将 /opt/fastdfs_storage_data下的数据迁移至/data下。

(1)拷贝文件,迁移数据

cp -r /opt/fastdfs_storage_data  /data cp -r  /opt/fastdfs_storage  /data cp -r /opt/fastdfs_tracker /data

(2)修改路径

这里需要修改文件系统的 /etc/fdfs/storage.conf ,mod_fastdfs.conf  ,client.conf,tracker.conf文件。

  • /etc/fdfs/storage.conf

store_path0=/data/fastdfs_storage_data  base_path=/data/fastdfs_storage
  • /etc/fdfs/mod_fastdfs.conf

store_path0=/data/fastdfs_storage_data  (有两处) base_path=/data/fastdfs_storage
  • /etc/fdfs/client.conf

base_path=/data/fastdfs_tracker
  • /etc/fdfs/tracker.conf

base_path=/data/fastdfs_tracker

重新建立 M00 至存储目录的符号连接:ln -s /data/fastdfs_storage_data/data  /data/fastdfs_storage_data/data/M00

(3)杀掉进程, 重启存储服务 (追踪器和存储器)

依次执行以下命令

pkill -9 fdfs  service fdfs_trackerd start  service fdfs_storaged start

(4)修改文件的读取路径 Nginx配置

location ~/group1/M00{  root /data/fastdfs_storage_data/data; }

(5)重启nginx

cd /opt/nginx/sbin ./nginx -s reload

感谢各位的阅读,以上就是“如何解决生产环境分布式文件系统崩了问题”的内容了,经过本文的学习后,相信大家对如何解决生产环境分布式文件系统崩了问题这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 如何解决生产环境分布式文件系统崩了问题

本文链接: https://www.lsjlt.com/news/83558.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解决生产环境分布式文件系统崩了问题
    这篇文章主要讲解了“如何解决生产环境分布式文件系统崩了问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决生产环境分布式文件系统崩了问题”吧!问题定位...
    99+
    2024-04-02
  • 如何解决win10系统崩溃问题
    这篇文章主要介绍了如何解决win10系统崩溃问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先,先重启电脑然后,找到启动修复的按钮,然后对系统进行修复。然后对电脑进行系统...
    99+
    2023-06-27
  • WAMP环境中PHP文件乱码问题如何解决
    这篇文章主要讲解了“WAMP环境中PHP文件乱码问题如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“WAMP环境中PHP文件乱码问题如何解决”吧!方法一:修改PHP配置文件我们可以通过...
    99+
    2023-07-05
  • 如何使用Go语言解决分布式系统中的数据分布问题?
    在分布式系统中,数据分布是一个非常重要的问题。随着互联网和云计算的发展,分布式系统变得越来越普遍。在这样的系统中,如何高效地分布和管理数据是一个挑战。本文将介绍如何使用Go语言解决分布式系统中的数据分布问题。 一、数据分布问题 在分布式系统...
    99+
    2023-10-08
    编程算法 数组 分布式
  • 如何解决chm在WIN7下崩溃生成chw文件的问题
    安装有Visual Studio的机器,可以调试一下,看到调用栈到了hhctrl.ocx控件处出问题了。 以下按网上的办法解决此问题,打开cmd窗口,按照下面次序在运行: regsvr32 jscript.dll reg...
    99+
    2023-05-25
    chm 文件 WIN7 问题 chw文件
  • Go 语言分布式编程教程:如何解决分布式系统中的常见问题?
    随着互联网的发展,分布式系统在企业级应用中越来越普遍。分布式系统可以提高系统的可靠性、可扩展性和性能。然而,在分布式系统中,有许多常见问题需要解决,例如网络延迟、节点故障、数据一致性等。在本篇文章中,我们将介绍如何使用 Go 语言解决分布...
    99+
    2023-08-26
    分布式 教程 面试
  • 如何在分布式容器环境下解决ASP应用程序加载问题?
    在分布式容器环境下,ASP应用程序加载问题是一个常见的挑战。由于容器环境的不稳定性以及应用程序的复杂性,ASP应用程序在容器中的加载和运行往往会遇到各种问题。本文将介绍如何在分布式容器环境下解决ASP应用程序加载问题,并提供一些演示代码作为...
    99+
    2023-10-03
    load 分布式 容器
  • HDFS分布式文件系统如何设计
    这篇文章将为大家详细讲解有关HDFS分布式文件系统如何设计,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。正文HDFS的设计以及概念  HDFS集群是典型的 master/slave 架构,master 节...
    99+
    2023-06-02
  • 如何解决redis分布式锁的问题
    这篇文章主要为大家展示了“如何解决redis分布式锁的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决redis分布式锁的问题”这篇文章吧。分布式锁在...
    99+
    2024-04-02
  • 如何使用Java解决分布式系统中的难题?
    分布式系统是一个由多台计算机组成的系统,这些计算机通过网络连接在一起,并共享资源和任务。在分布式系统中,有很多难题需要解决,其中包括网络延迟、故障处理、数据一致性等。Java是一种广泛使用的编程语言,它提供了许多工具和框架,可以帮助我们解决...
    99+
    2023-09-24
    leetcode path 分布式
  • 分布式系统中的go响应问题解决方案。
    分布式系统中的go响应问题解决方案 在分布式系统中,响应问题是一项常见的挑战。Go语言作为一门高效且并发的语言,可以帮助我们解决这些问题。本文将介绍一些在分布式系统中使用Go解决响应问题的方案,并通过演示代码来展示这些方案的实现。 一、使用...
    99+
    2023-06-15
    响应 分布式 面试
  • Linux service无法使用系统环境变量问题如何解决
    这篇“Linux service无法使用系统环境变量问题如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Li...
    99+
    2023-07-05
  • Java中如何处理分布式文件系统?
    随着互联网的发展,越来越多的应用需要处理大量的文件数据,而传统的单机文件系统已经无法满足这种需求。因此,分布式文件系统应运而生。分布式文件系统是一种能够将数据存储在多台服务器上的文件系统,通过将数据分散到不同的服务器上,可以提高数据的可靠...
    99+
    2023-07-28
    文件 分布式 numpy
  • 如何解决mysql主从复制中产生了锁的问题
    这篇文章给大家分享的是有关如何解决mysql主从复制中产生了锁的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一套主主复制的mysql库产生了死锁,导致主从同步出现问题, ...
    99+
    2024-04-02
  • Python如何在Apache环境下实现分布式文件管理?
    随着互联网的发展,越来越多的企业和个人开始使用云存储来存储和管理文件。然而,对于一些中小型的企业或个人来说,云存储的成本可能比较高,因此他们更希望通过自己的服务器来进行文件管理。而在这种情况下,分布式文件管理就显得尤为重要。本文将介绍如何...
    99+
    2023-07-31
    apache 文件 分布式
  • 如何在 PHP 分布式系统中使用缓存解决高并发问题?
    在现代互联网应用程序中,高并发是一个非常普遍的问题。PHP 分布式系统中,缓存是一个非常重要的组件,可以帮助我们解决高并发问题。在本文中,我们将讨论如何在 PHP 分布式系统中使用缓存来解决高并发问题。 一、什么是缓存? 缓存是一种用于存...
    99+
    2023-09-22
    分布式 并发 缓存
  • Java分布式系统中session一致性问题怎么解决
    小编给大家分享一下Java分布式系统中session一致性问题怎么解决,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java可以用来干什么Java主要应用于:1....
    99+
    2023-06-14
  • 如何解决VSCode配置python环境及中文问题
    小编给大家分享一下如何解决VSCode配置python环境及中文问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 配置环境setting.json&m...
    99+
    2023-06-29
  • Apache和Python:如何搭建分布式文件系统?
    随着数据量的不断增加,传统的单机文件系统已经无法满足我们的需求。为了解决这个问题,分布式文件系统应运而生。分布式文件系统通过将数据存储在多个节点上,并允许多个用户同时访问这些数据,实现了高可用性和可伸缩性。在本文中,我们将介绍如何使用Ap...
    99+
    2023-07-31
    apache 文件 分布式
  • 如何使用Python实现分布式文件系统?
    分布式文件系统是一种可以将文件储存在多个节点上的文件系统,它可以提高文件系统的可靠性和可扩展性。Python是一种非常流行的编程语言,它可以用来实现分布式文件系统。在本文中,我们将介绍如何使用Python实现分布式文件系统,并提供一些演示代...
    99+
    2023-06-02
    并发 文件 分布式
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作