CloudWatchのカスタムメトリクスでEC2のL7ヘルスチェック(HTTPステータスチェック)

  最近MySQLの調子が悪く、 Apacheは生きているがブログは見れないという 恥ずかしい事態が結構起きるため、 CloudWatchでL7ヘルスチェックを実装することにした。   1、IAMロールの設定 EC2上にアクセスキーとシークレットキーを配置しなくてもいいように、 事前にEC2にIAMロールを割り当て、 そのポリシーでCloudWatchの”PutMetricData”をAllowしておきましょう。   2、EC2にシェルを配置 HTTPステータスコードをチェックするシェル [http_status_check.sh] #!/bin/sh curl -s $1 -o /dev/null -w “%{http_code}”   CloudWatchに監視データをputするシェル [put_mon_http_custom_metric.sh] #!/bin/bash export AWS_REGION=us-west-1 instanceid=i-xxxxxxxa monitored_url=https://www.cyberarchitect.net/blog/ # http status check status=`/home/ec2-user/bin/http_status_check.sh $monitored_url` if [ $status -eq 200 ]; then Fail=0 else Fail=1 fi aws cloudwatch put-metric-data –metric-name “HttpStatusFailed” –namespace “Custom Metrics”.

HULFT8 for Windowsの必須ソフトウェア

  冬休みだというのにお客様からのお問い合わせの電話に応対しつつ、 AWS上でHULFT8 for Windowsの評価をしている。 インストールは「次へ」ボタン連打で済むと思ったら、 インストールの最初の部分で「必須ソフトウェアが足りない」旨のメッセージが表示され、 先に進むことができない。 何が足りないかは教えてくれないというスパルタ仕様なのであった。 マニュアルには「HULFTのサイトを見よ」と書いてあるので、 以下のサイトで検索。 https://his.hulft.com/productinfo/opeenv/search サイトによれば、必須ソフトウェアは以下だという。 ■必須ソフトウェア情報 以下のいずれかの.NET Frameworkをインストールまたは有効化する必要があります ・.NET Framework 4 ※1 ・.NET Framework 4.5 以降 以下のVisual C++再頒布可能パッケージをインストールする必要があります ・Visual Studio 2012更新プログラム4のVisual C++再頒布可能パッケージ ※2 EC2のインスタンスとしてWindows Server 2012 R2を起動すると、.NET Frameworkはデフォルトで有効になっている。 そこで足りないx64用の「Visual Studio 2012更新プログラム4のVisual C++再頒布可能パッケージ」をインストールし、OSを再起動したのだが、やはり必須ソフトウェアが足りないという。。   なぜだ。   結局必須ソフトウェア情報の※2がミソで、よく読むと 「HULFTを64bitOSのWinsowsにインストールした場合、x64用とx86用のVisual C++再頒布可能パッケージの導入が必要です。」 と書いてある。 もしかしてと思ってx86用のパッケージをインストールしたら、HULFTインストールできるようになった。 そこは、 「HULFTを64bitOSのWinsowsにインストールした場合、x64用とx86用の両方のVisual C++再頒布可能パッケージの導入が必要です。」 としてほしかったぜ。。   Hinemos統合管理[実践]入門 (Software.

aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning

  EC2のWindows環境を作っているのですが、AWS CLI実行時にUnicodeのWarningが出るのなんとかしてもらえませんかねえ。 aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode – interpreting them as being unequal At C:\Data\bin\win_dir_sync_to_s3.ps1:26 char:1 + aws s3 sync –delete C:\Data\Work s3://hoge/to/folder + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (C:\Program File…s being unequal :String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError   先人の知恵を借り、対応としてPythonのpin経由でのインストールを行う。 先ずは「AWS Command.

aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning

  EC2のWindows環境を作っているのですが、AWS CLI実行時にUnicodeのWarningが出るのなんとかしてもらえませんかねえ。 aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode – interpreting them as being unequal At C:\Data\bin\win_dir_sync_to_s3.ps1:26 char:1 + aws s3 sync –delete C:\Data\Work s3://hoge/to/folder + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (C:\Program File…s being unequal :String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError   先人の知恵を借り、対応としてPythonのpin経由でのインストールを行う。 先ずは「AWS Command.

aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning

  EC2のWindows環境を作っているのですが、AWS CLI実行時にUnicodeのWarningが出るのなんとかしてもらえませんかねえ。 aws : C:\Program Files\Amazon\AWSCLI\.\dateutil\parser.py:428: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode – interpreting them as being unequal At C:\Data\bin\win_dir_sync_to_s3.ps1:26 char:1 + aws s3 sync –delete C:\Data\Work s3://hoge/to/folder + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (C:\Program File…s being unequal :String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError   先人の知恵を借り、対応としてPythonのpin経由でのインストールを行う。 先ずは「AWS Command.

Elastic BeanstalkのDockerrun.aws.jsonファイル内のイメージ名指定方法

  最近(今日から)、Elastic BeanstalkのDockerランタイムで遊びはじめている。 公式ドキュメントによれば、公開されたDockerリポジトリからイメージを引っ張ってくるためには、Dockerrun.aws.json ファイル内で、 Docker コンテナを作成するときにベースとなる既存の Docker リポジトリの Docker ベースイメージを指定します。Name キーの値を、Docker Hub のイメージの場合は / 形式、その他のサイトの場合は // 形式で指定します。 とのことである。 Docker Hubでイメージを検索し、例えばghostのイメージだと、 な感じなわけだから、Dockerrun.aws.jsonファイルの記述は例えば { “AWSEBDockerrunVersion”: “1”, “Image” : { “Name” : “ptimof/ghost” }, “Ports” : [{ “ContainerPort”: “2368” }] } でいける。 じゃあ例えばJenkinsさんのオフィシャルイメージ(つまり組織名が明記されていない)場合はどうする? { “AWSEBDockerrunVersion”: “1”, “Image” : { “Name” : “jenkins” }, “Ports” : [{ “ContainerPort”:.

awsebcliインストール時に”DEPRECATION: Uninstalling a distutils installed project (pyyaml) has been deprecated”

  Elastic BeanstalkのCLI管理ツールであるawsebcliだが、インストールすべく公式ページのコマンドを頭から実行していくと、若干つまづく。 https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/eb-cli3-install.html pip install awsebcli を実行すると、 Found existing installation: PyYAML 3.10 DEPRECATION: Uninstalling a distutils installed project (pyyaml) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project. Uninstalling PyYAML-3.10: Exception: Traceback (most recent call.

The parameter groupName cannot be used with the parameter subnet

  VPC定義等、様々なシーンで共通的に使用するようなテンプレートを再利用し、CloudFormationのスタックをネストして使用するのはベストプラクティスの1つである。 VPC用のテンプレートを用意した後、AWS::CloudFormation::Stackリソースを使って別テンプレートからVPCのリソースを参照し、VPC上にEC2インスタンスを立ててみる。 この際、表題のエラーにぶちあたったのであった。 AWS::EC2::Instanceの作成のステップのところでエラーとなっている。 The parameter groupName cannot be used with the parameter subnet 色々調べて試行錯誤したが、セキュリティグループの参照を”SecurityGroup”ではなく、”SecurityGroupIds”にしたら通った。 “EC2Instance” : { “Type” : “AWS::EC2::Instance”, “Properties” : { “InstanceType” : { “Ref” : “InstanceType” }, “SecurityGroupIds” : { “Ref” : “InstanceSecurityGroup” }, “KeyName” : { “Ref” : “KeyName” }, “SubnetId” : { “Fn::GetAtt” : [ “CloudFormationVpcStack”, “Outputs.SubnetDmzAzBId” ].

AWSでVM Importの結果をフィルタする

  VM Importを複数回実行していき、インポート失敗が発生すると、aws ec2 describe-import-image-tasksを実行した時に失敗した過去履歴も一緒に表示されてしまい、わずらわしい。 そんな時は、タスクIDでフィルタすれば見やすくなります。 aws ec2 describe-import-image-tasks –import-task-ids インポートタスクIDは例えば”import-ami-fhaxxsaefa”のようなID。   Amazon Web Services パターン別構築・運用ガイド posted with amazlet at 15.09.20 NRIネットコム株式会社 佐々木 拓郎 林 晋一郎 小西 秀和 佐藤 瞬 SBクリエイティブ 売り上げランキング: 10,578 Amazon.co.jpで詳細を見る

マレーシア(クアラルンプール)で使える海外レンタルWiFi体験談

  出張で、マレーシアに行ってきました。 クアラルンプールははっきり言って超大都会なので、ホテル等でのネットワーク環境も充実しています。 とはいえ、外出先等でのネット接続のため、持ち歩き可能な無線ルータは必需品です。 今回の旅でも、海外ローミング料金節約のため、もはや旅の定番となったビジョン社のグローバルWiFiを予約。 海外WiFi レンタル|海外でWiFiを使うならグローバルWiFi   名前が似ているのでまぎらわしいのですが、グローバルデータ社のイモトのWiFiとは違うのでご注意を。 参考:海外でのWiFiレンタルに関する口コミを調べてみたのだが | cyberarchitect   今回も、携帯型のモバイルバッテリーを持参。 出先でWiFiルータやiPhoneのバッテリーがなくなっても安心です。 Anker PowerCore 20100 (20100mAh 2ポート 超大容量 モバイルバッテリー パナソニック製セル搭載) iPhone / iPad / Xperia / Galaxy / Android各種他対応 マット仕上げ トラベルポーチ付属【PowerIQ & VoltageBoost搭載】(20100mAh)(ホワイト) posted with amazlet at 16.01.30 Anker 売り上げランキング: 150 Amazon.co.jpで詳細を見る   クアラルンプールの電波はまあまあというところで、ちょっと屋内の奥深い部屋にいったりすると3Gやひどい時は2Gの電波を拾ってしまうので、頻繁にルータの電源オン・オフをして、なるべく4Gの電波を拾えるように気を付けてました。 あと、旅の必需品iPhoneのGoogleアップアプリですが・・クアラルンプールの地図は若干情報が古いとこがありましたね。 スターバックスの位置を調べると既に閉店していたりとか。ご注意を。   旅先でも常にネットに繋がるという安心感は、やっぱりいいものですね! 海外インターネットGLOBAL WiFi