私は Amazon Linux AMI を使用しており、いくつかのカスタム変更 (axis2server の追加など) を行って、新しい AMI として保存しています。ここで私がやりたいことは、AMI の起動時に axis2server を起動することです (つまり、インスタンスの起動時に axis2server が自動的に起動するはずです)。そのために、以下のような init スクリプトを使用し、次のコマンドを実行しました。
chkconfig --add axisservice
しかし、イメージから新しいインスタンスを起動すると、axis2server が起動しません。
起動時にスクリプト /home/ec2-user/axis2-1.6.1/bin/axis2server.sh を実行するだけです。ここで何か不足していますか?
#! /bin/sh
# Basic support for IRIX style chkconfig
###
# chkconfig: 235 98 55
# description: Manages the services you are controlling with the chkconfig command
###
case "$1" in
start)
echo -n "Starting axisservice"
touch ~/temp.txt
cd /home/ec2-user/axis2-1.6.1/bin
./axis2server.sh &
echo "."
;;
stop)
echo -n "Stopping axisservice"
echo "."
;;
*)
echo "Usage: /sbin/service axisservice {start|stop}"
exit 1
esac
exit 0
https://help.ubuntu.com/community/CloudInitも調べましたが、ユーザーデータスクリプトと呼ばれるメカニズムが提供され、ユーザーはスクリプトの起動時にスクリプトを実行できます。
$ euca-run-instances --key mykey --user-data-file myscript.sh ami-axxxx
これはコマンド ライン オプションであり、UI を介してインスタンスを起動すると、スクリプトが開始されるようにする必要があるため、上記のオプションは私の場合は使用できないと思います。間違っている場合は修正してください。
ありがとう、H.