Amazon-Ec2

報告“設備上沒有剩餘空間”;試圖通過 SCP 通過 EC2 實例將文件傳輸到 EFS

  • November 12, 2017

我的設置基於這篇文章:https ://parall.ax/blog/view/3212/how-to-run-scalable-wordpress-on-aws-amazon-web-services-tutorial

即通過具有單獨 RDS 實例的 Elastic Beanstalk 託管 Wordpress,並通過 Elastic Filesystem 處理文件服務/上傳。我efs.config是這樣的:

packages:
 yum:
   nfs-utils: []
   jq: []
files:
 "/tmp/mount-efs.sh" :
   mode: "000755"
   content: |
     #!/usr/bin/env bash
     mkdir -p /mnt/efs
     EFS_NAME=$(/opt/elasticbeanstalk/bin/get-config environment | jq -r '.EFS_NAME')
     mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 $EFS_NAME:/ /mnt/efs || true
     mkdir -p /mnt/efs/uploads
     chown webapp:webapp /mnt/efs/uploads
commands:
 01_mount:
   command: "/tmp/mount-efs.sh"
container_commands:
 01-rm-wp-content-uploads:
   command: rm -rf /var/app/ondeck/wp-content/uploads
 02-symlink-uploads:
   command: ln -snf /mnt/efs/uploads /var/app/ondeck/wp-content/uploads

我嘗試使用 scp 通過一個 EC2 實例將大約 400G 的文件傳輸到 EFS。具體來說,我將文件傳輸到“/mnt/efs/uploads”,它應該是已安裝的 EFS 驅動器。但是,在大約 7G 傳輸之後,我不可避免地被告知“設備上沒有剩餘空間”。

此外:

[ec2-user@ip-XXX-31-29-XXX uploads]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.9G   60K  1.9G   1% /dev
tmpfs           1.9G     0  1.9G   0% /dev/shm
/dev/xvda1      7.8G  7.7G     0 100% /

為什麼我會收到此消息?似乎我正在填滿 EC2 空間,但我應該只是將文件放在安裝在 EC2 上的 EFS 上……想法?

嘗試在通過 SSH 連接到您的實例時手動執行*/tmp/mount-efs.sh腳本,並檢查它是否返回任何錯誤。*最有可能的問題在於未能將 /mnt/efs 目錄掛載到 EFS 的這一行:

     mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 $EFS_NAME:/ /mnt/efs || true

引用自:https://serverfault.com/questions/883071