成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

新年上班第一天生產環境分布式文件系統崩了!

開發 前端 分布式
今天,就和小伙伴們分享下,這次生產環境分布式文件系統出現的問題,以及我是如何10分鐘排查問題和解決問題的。另外,本文不是基于生產環境事故寫的,而是事后,我在我本機虛擬機上模擬的環境。解決問題的思路和方法都是一樣的。

[[383073]]

作者個人研發的在高并發場景下,提供的簡單、穩定、可擴展的延遲消息隊列框架,具有精準的定時任務和延遲隊列處理功能。自開源半年多以來,已成功為十幾家中小型企業提供了精準定時調度方案,經受住了生產環境的考驗。為使更多童鞋受益,現給出開源框架地址:

https://github.com/sunshinelyz/mykit-delay

寫在前面

說來也怪,早不崩晚不崩,偏偏在上班第一天的時候,生產環境分布式文件系統崩了。我才剛來到我的工位坐下,“叮鈴鈴”電話響了,是運營打來的,“喂,冰河,快點看看,生產環境的圖片和視頻都無法上傳了,系統崩潰了,快點看看啊!”。你說我一個不是做運維的,直接打來電話讓我看生產環境的事故?原來是運維那哥們還沒上班,額,好吧,我接受了,于是我迅速整理好工位,擺出電腦,登錄服務器,一頓操作猛如虎,10分鐘搞定了,剩下的就是異步復制圖片和視頻了。

今天,就和小伙伴們分享下,這次生產環境分布式文件系統出現的問題,以及我是如何10分鐘排查問題和解決問題的。另外,本文不是基于生產環境事故寫的,而是事后,我在我本機虛擬機上模擬的環境。解決問題的思路和方法都是一樣的。

額,估計運維要被3.25了!!

文章已收錄到:

https://github.com/sunshinelyz/technology-binghe

https://gitee.com/binghe001/technology-binghe

問題定位

通過登錄服務器查看系統的訪問日志,發現日志文件中輸出了如下異常信息。

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

很明顯,是系統無法上傳文件導致的問題,這個日志信息很重要,對問題的排查起到了至關重要的作用。

分析原因

既然是上傳文件出現了問題,那我先試試能不能訪問以前上傳的文件呢?經過驗證,以前上傳的文件是可以訪問的,再次驗證了是上傳文件的問題。

既然生產環境是使用的分布式文件系統,一般情況下是沒啥問題的,上傳文件出現了問題,大概率的事件是服務器磁盤空間不足了。那我就來順著這個思路排查下問題。

于是乎,我使用df -h 查看服務器的存儲空間使用率,已經達到91%了。

嗯,磁盤空間有可能是引起問題的原因。接下來,再來進一步確認下是否是磁盤空間造成的問題。

于是,我再打開/etc/fdfs/目錄下的tracker.conf的配置,看到預留的存儲空間為10%(注:這里的分布式文件系統使用的是FastDFS)。

看到這里,可以確定就是磁盤空間不足造成的無法上傳文件的問題。

總體原因就是:服務器磁盤空間已使用91%,而在分布式文件系統的配置中預留的磁盤空間為10%,實際在上傳文件的時候,系統已經檢測到當前服務器剩余的磁盤空間不足10%,拋出異常,拒絕上傳文件。

到此,問題出現的原因已經確定了,接下來就是要解決問題了。

解決問題

首先,有兩種方式可以解決這個問題,一種就是刪除不需要的文件;另一種就是擴容磁盤空間。

刪除不需要的文件

這種方式慎用,這里,我也簡單的介紹下這種方式。我給小伙伴們提供了幾種遞歸刪除的方式。

遞歸刪除.pyc格式的文件。

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

打印當前文件夾下指定大小的文件

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

遞歸刪除指定大小的文件(145800)

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

遞歸刪除指定大小的文件,并打印出來

  1. 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)拷貝文件,遷移數據

  1. cp -r /opt/fastdfs_storage_data  /data 
  2. cp -r  /opt/fastdfs_storage  /data 
  3. cp -r /opt/fastdfs_tracker /data  

(2)修改路徑

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

  • /etc/fdfs/storage.conf
  1. store_path0=/data/fastdfs_storage_data  
  2. base_path=/data/fastdfs_storage 
  • /etc/fdfs/mod_fastdfs.conf
  1. store_path0=/data/fastdfs_storage_data  (有兩處) 
  2. base_path=/data/fastdfs_storage  
  • /etc/fdfs/client.conf
  1. base_path=/data/fastdfs_tracker 
  • /etc/fdfs/tracker.conf
  1. base_path=/data/fastdfs_tracker 

重新建立 M00 至存儲目錄的符號連接:ln -s /data/fastdfs_storage_data/data /data/fastdfs_storage_data/data/M00

(3)殺掉進程, 重啟存儲服務 (追蹤器和存儲器)

依次執行以下命令

  1. pkill -9 fdfs 
  2.  service fdfs_trackerd start 
  3.  service fdfs_storaged start 

(4)修改文件的讀取路徑 nginx配置

  1. location ~/group1/M00{ 
  2.  root /data/fastdfs_storage_data/data; 

(5)重啟nginx

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

好了,問題搞定,運營可以正常上傳圖片和視頻了。

本文轉載自微信公眾號「 冰河技術」,可以通過以下二維碼關注。轉載本文請聯系 冰河技術公眾號。

 

責任編輯:武曉燕 來源: 冰河技術
相關推薦

2020-02-03 13:30:54

釘釘企業微信移動應用

2021-05-17 08:11:44

MySQL數據庫索引

2010-11-01 05:50:46

分布式文件系統

2017-10-17 08:33:31

存儲系統分布式

2012-08-31 16:04:11

HDFS分布式文件系統

2013-06-18 14:00:59

HDFS分布式文件系統

2010-11-15 13:24:07

分布式文件系統

2013-01-07 10:29:31

大數據

2010-06-04 18:45:43

Hadoop分布式文件

2012-09-19 15:05:24

MogileFS分布式文件系統

2012-09-19 13:43:13

OpenAFS分布式文件系統

2012-08-10 22:44:52

ArchSummit

2021-02-03 21:15:44

Ansible系統運維系統管理員

2013-05-27 14:46:06

文件系統分布式文件系統

2012-10-09 16:43:47

FastDFS分布式文件系統

2011-03-16 14:23:38

分布式文件

2012-05-10 15:23:53

分布式文件系統測試

2020-01-03 08:33:57

Ceph硬件系統

2012-05-10 14:04:07

分布式文件系統架構

2011-07-15 17:48:27

Platform
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 三级视频久久 | 精品一区二区三 | 国产不卡在线 | 狠狠影院 | 91原创视频在线观看 | 一区二区视频在线观看 | 久久久一区二区三区 | 精品一二区 | 男女网站免费 | 欧美大片黄 | 久久国产精品久久久久久久久久 | 玖玖国产精品视频 | 亚洲视频精品在线 | 精品无码久久久久久久动漫 | 国产精品99视频 | 日韩不卡一区二区三区 | 免费成人高清在线视频 | 天堂资源最新在线 | 久久久久久久久淑女av国产精品 | 99re热这里只有精品视频 | 亚洲人免费视频 | 欧美性影院 | 超碰精品在线 | 久久人爽 | 99精品国产一区二区三区 | 国产精品一区二区久久 | 亚洲精品2区 | 欧美成人一级 | 成人av资源在线 | 国产福利91精品一区二区三区 | 国产黄色av网站 | 国产一区欧美一区 | 日韩欧美视频 | 亚洲综合色婷婷 | 免费观看一级特黄欧美大片 | 81精品国产乱码久久久久久 | 中文字幕高清免费日韩视频在线 | 日韩午夜电影在线观看 | 91极品欧美视频 | 国产高潮好爽受不了了夜夜做 | 欧美精品一区二区三区蜜桃视频 |