higehikiのブログ

iPhoneアプリ「ログ雀」の中の人です。

AWS

Amazon RDSのレプリケーションがLOAD DATAするとエラーで止まる

AmazonRDSのreplica setを作って運用していたんですが、とある開発事案で、大量のレコードを短時間で生成する必要に迫られました。要件としては、 ① 特定ファイル(複数)のファイル名から属性情報を抜き出す ② 既存テーブルAの属性情報にHitしないレコードをS…

ログをS3に保存する際にサーバーのIP毎に管理する方法

こういうことがしたい! S3 Bucket / logs / 20140707 / [サーバーA] / access.log S3 Bucket / logs / 20140707 / [サーバーB] / access.log S3 Bucket / logs / 20140707 / [サーバーC] / access.logfluentdでログをS3に流していますが、frontサーバーにオ…

capistrano3 + AWS(オートスケール) でdeployしてやる

オートスケール下でのdeployというと、self-deploy (起動時にスクリプトを実行して、ローカルのソースを最新版にする!) がイケてる気がします!AWS EC2 capistranoでオートスケーリングインスタンスにデプロイ - cap version2 http://qiita.com/mychaelstyl…

AutoScaleでCloudWatchがずっとALARMなんだけど...

オートスケールを一通り用意して、CloudWatchで CPU %に応じて スケールインさせる設定をしたところ、ステータス:ALARM になったまま変わらない。おかしいのかどうかよくわからずおろおろしていたら、 AWS オートスケーリング設定方法 – 2013年版実践編 | Hi…

CloudWatchでhttpdプロセスを監視する

EC2 ( CentOS ) をCloudWatchで監視する で紹介したカスタムメトリクスの手法では、Amazon CloudWatch Monitoring Scripts for Linux という追加モジュールで簡易的に対応できました。今回の「httpdプロセスを監視する」要件の場合は、上記のスクリプトでは…

EC2 ( CentOS ) をCloudWatchで監視する

デフォルトのCloudWatchで監視できる項目は以下。 CPU Utilization(CPU使用率) Disk Reads(ディスク読み込み状況) Disk Writes(ディスク書き込み状況) Network In,Out(ネットワーク状況) Status Check Failed(インスタンスのステータスチェック失敗) http://…

cloudwatchのあれやこれ

結論から言うと、CloudWatchに頼るのは必ずしもベストなソリューションであるとは限りません。 Amazon SNSとの連携や、監視対象となるAmazon独自サービス各種に対応していることから、便利ではありますが、とても大変な想いをしたので苦労ログを残しておきま…

任意のタイミングでAMIを生成して、それをベースにインスタンスを作って、ELBにぶらさげるスクリプト

立て続けにAWSネタ。 オートスケールがどうしても使えない案件で、直前にAMIをコピーしてインスタンスを作る手動作業から解放されるため、スクリプトを組んでみました。SDKで何でも出来て本当に便利です。ただ、作ったインスタンスを任意のタイミングで落と…

AWS SDK for PHP を使って動的にオートスケールインスタンスのプライベートIPを抽出する

オートスケールを設定して動的にインスタンスが増減する仕組みに対して、管理インスタンスからリクエストを動的に送るための方法を検討していました。特定のAvailabilityZoneのみが対象だったので、正規表現でPrivateIPを取ってくるとかいうやっつけの方法で…

ELBがつながらないわ、設定でエラーでるわ

VPCで環境構築する案件で、OnDemand NATパターンっぽい箇所の構築ではまりました。つくろうとしてるのはこんな感じ 引用: http://dev.classmethod.jp/cloud/amazon-vpc-elb-nat/事象としては、PrivateSubnetと定義した中に、Webインスタンスを置いて、ELBで…

いつの間にか色々変わってるAWS

AWS

しばらく触らない間に色々変わりすぎててしんどい…。 VPC内のインスタンスでもmicroが使えるようになってるし、ELB単体でログ出力が可能になってるし、Connection Drainingってオプションも増えててコレがまたイケてる奴の様子。http://aws.typepad.com/aws_…

capistrano3でらくらくdeploy

AmazonLinux (CentOS6系) におけるcapistrano3の超基本的な構築手順です。[ 前提条件 ] phpアプリケーションサーバーを新規で構築します。 フレームワークはfuelphp1.6です。 webサーバーはapacheを利用します。 ソース管理はgitで行っています。 rubyは最新…

GlobalSignのルート証明書問題

1/28に大騒ぎとなっていたGlobalSignのルート証明書ですが、RHEL5系やCentOS5系では確認されているが、AmazonLinuxでは問題ありませんでした! CentOS6ベースだからか。 Validity Not Before: Sep 1 12:00:00 1998 GMT Not After : Jan 28 12:00:00 2028 GMT…

AWSにSSL証明書の設定をする

安くて助かるGlobalSignのSSL証明書をAWSのELBに設定する手順。 昔Qiitaにまとめたのを見ながらやっても微妙につっかかったので、修正。http://qiita.com/higehiki/items/a86748984025ffc75582

AMIから新規インスタンスを立ち上げる際のディスク容量

AWS

デフォルトの8GBで構築したテスト環境のAMIを作って、商用環境を構築するときのお話。AMIからインスタンスを立ち上げようとすると、RootVolumeとかEBSVolumeとか設定変えられます。そこで、とりあえずRootVolumeは100GBぐらい欲しいなーと思って、数値を100…

MySQLが起動しない…in AWS

AWS の microインスタンスにapacheもredisもmysqlも全部載せの開発環境を構築して、アプリケーション開発をしていたところ、突然DBが接続できなくなった。ログはこんな感じ。 cat /var/log/mysqld.log ... 130716 07:30:40 mysqld_safe mysqld from pid file…

EC2インスタンスのディスク容量を拡張する

以前に構築したEC2インスタンスでmongodbにログを貯めていったところ、 すぐに使用容量が一杯になってしまいました。Volumeを見ると、デフォルトの8GB...orz 思い切って100GBに拡張してみたその手順。

Timezoneをあわせましょう

クラウドを使うとき、いつもTimezoneの設定方法を忘れるのでメモっとく。 dateコマンドを叩いてJSTではないとき 1. localtimeファイルをJST用のファイルに上書きしましょう。 # cp -p /usr/share/zoneinfo/Japan /etc/localtime 2. sysconfigを変更しましょ…

apache logをfluentdで収集してmongoとS3に突っ込むまで。

前回と前々回の続き。最終的な構成↓ EC2 Webサーバ2台に fluentをインストール。 MySQLのSlaveサーバにmongoとfluentをインストール。 インストール手順はこちら参照。やっぱりログは圧縮してS3にぶっ込んでおいたほうがいいよね!と途中で思い直したので、S…

EC2にfluentdとmongodbをいれて動かしてみた。

DynamoDBと格闘の末、mongoDBで頑張ってみる結論を出しました。 開発環境にとりあえず全部突っ込んでみる。 AmazonEC2 microインスタンス mongodb 2.4.4 fluent (td-agent) 1.1.13 構築ログ (Root権限で作業) # リポジトリ追加 vim /etc/yum.repos.d/td.repo…