2016-07-19 8 views
0

Ubuntuの14アマゾンAWSAWSは、ブート時にボリュームを添付し、

iは添付して起動私は、/ etc/initの中に、次の.confファイルを持つ にボリュームをマウントしようとしています開始し... ApacheのMySQLの前にそれをマウントします

start on started network-interface 
script 
/usr/bin/aws ec2 attach-volume ... && /bin/mount ... || /bin/mount ... 
end script 

問題は取り付けが非同期であると私は、インスタンスを最初 を起動ならば、それは、ボリュームを取り付けたが、私はそれを再起動した場合、マウントに失敗しますので、任意の時間に

を取ることができます すでにマウントが動作します接続されているよう後続の再起動が問題に動作します その後、取り付けに失敗

を添付する必要があります ボリュームはそう、私は(2番目のスクリプトをする必要はないだろうと思い、初めてです私は前に行うことができることすべてを願っていますので、私の質問は、デバイス/ボリュームがシステム に接続されているときに私が知っている方法です 何か

start on started network-interface 
script 
////try to attach it if we get an error then its already attached so mount it 
/usr/bin/aws ec2 attach-volume ... || /bin/mount ...  
end script 

start on WHEN volumen IS attached (no idea what i need here) 
script 
///new device attached to system mount it 
/bin/mount ... 
end script 

のように)私は同じ.confファイルでそれを行うことができるかどうか確認してくださいApache mysqlのようなものは... を起動します。もしそれらを再起動する必要がなければ私のマウントの準備ができているまで...私はこのよう

で複数のボリュームをアタッシェする必要が PSは、インスタンスを作成し、独自のEBSボリュームを取り付けたことで何かアドバイス

+0

あなたがautoには/ etc/fstabファイルを使用していない理由は、ブート時にファイルシステムをマウントありますか? – Brandon

+0

私はそこに他のものを設定しています。私はそれを1つの場所に入れたいと思っています。そして、fstab wouldntは、何もマウントされていないという問題を解決しません。 – Ino

答えて

0
  1. に感謝のapache mysqlの開始を遅らせ、各インスタンスには、EBSボリュームの作成と接続を可能にするAWS資格情報またはIAMインスタンスロールが必要です。これは潜在的にセキュリティリスクです。
  2. インスタンスに独自のボリュームを作成する必要がある場合(まだ最適化されていない場合)は、upstartを使用しないでください。これは最初の起動時に1回だけ実行する必要があり、再起動するたびに実行する必要はありません。最初の起動時に実行されるスクリプトとして、user-dataというインスタンスのコマンドを渡します。
  3. さらに、ボリュームを使用してインスタンスを作成し、それを自動的に添付させます。オートスケーリンググループを作成し、EBSボリュームを起動設定に配置します。 (オートスケールグループはオートスケールする必要はありませんが、正確なサイズにすることができます。複雑な設定のインスタンスの自動生成には計り知れないほど役に立ちます)。user-dataでは、ボリュームをフォーマットしてマウントするスクリプトを渡します/etc/fstabにエントリを追加します)。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html

+0

上記を参照すると、コメント – Ino

関連する問題