もくじ
先に注意
んー。ログ出力するのはやめた方が良いですね🐱
共通したコンフィグファイルの共有に最適ですね。
ログの外出しならCloudWatch Agentの方が良いよ。
EFSのマウントの参考にどうぞ〜
事前準備
- AWSコンソールからEFSファイルシステムの作成
- EFSのマウントターゲット作成
EC2のセキュリティグループリソースからのアクセスを許可する
efsマウントツールのインストール
$ sudo apt-get -y install binutils $ cd $ sudo git clone https://github.com/aws/efs-utils $ cd efs-utils $ sudo ./build-deb.sh $ sudo apt-get install -y ./build/amazon-efs-utils*deb
手動EFSマウント
$ sudo mount -t efs fs-0999999:/ /var/www/staging-project/storage/logs
$ df -h Filesystem Size Used Avail Use% Mounted on ・・・ fs-0999999.efs.ap-northeast-1.amazonaws.com:/ 8.0E 0 8.0E 0% /var/www/staging-project/storage/logs
laravelを利用するwww-dataユーザに権限を設定する
$ sudo chown www-data:www-data /var/www/staging-project/storage/logs $ sudo chmod 775 /var/www/staging-project/storage/logs
$ sudo vi /etc/fstab LABEL=cloudimg-rootfs / ext4 defaults,discard 0 0 /swap swap swap default 0 0 ●下記を追加 #EFS fs-0999999:/ /var/www/staging-project/storage/logs efs hard,intr,bg,nofail,noatime,_netdev 0 0
マウントオプション
- bg バックグラウンド
- hard サーバが応答するまで再試行が続けられます。
- noatime タイムスタンプ記録しない
- nofail efsがなくても起動する
- intr サーバーがダウンした場合やサーバーにアクセスできない場合に NFS 要求の割り込みを許可します。
リブート
$ sudo reboot now
マウント確認
$ df -h Filesystem Size Used Avail Use% Mounted on ・・・ fs-0999999.efs.ap-northeast-1.amazonaws.com:/ 8.0E 0 8.0E 0% /var/www/staging-project/storage/logs