AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

S3のパフォーマンスの考慮

大体以下の値に達するまでには、何も考えずに適当に使っても大丈夫っぽい。

  • 毎秒 100 回の PUT/LIST/DELETE リクエスト
  • 毎秒 300 回の GET リクエスト

これを超えるような場合は、3〜4文字程度のランダムな値を付与したプレフィクスをつけたり、CloudFrontを導入しろ、ってことらしい。

docs.aws.amazon.com

1秒あたりのリクエスト数が30〜40すると一ヶ月(30日)で大体1億リクエストになるので、毎秒100回のリクエストだと、一ヶ月(30日)で3億リクエストぐらいまでは、何も考えなくてもS3だけでさばける計算になりますね。 これを超えたらCloudFront配置する、と考えたらよさそう。

「make_sock: could not bind to address 0.0.0.0:80」と言われるとき

ロケ地:AWS EC2@m3.medium

httpdが起動しない

CentOS7のApache2.4な環境で、以下のようなメッセージが出力されて、httpdが起動しない状態になった。

[root@localhost ~]# systemctl start httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

これらから「/var/run/httpd/にpidファイルが残ってるんじゃろ……ほらあった!」と意気揚々、rmしてもう一度再起動した。

[root@localhost ~]# systemctl start httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

ああん……?

続きを読む

EC2で既存インスタンスの移行をする時

右クリックから「同様のものを作成する」か「イメージ」から作成して、AMIを指定して移行する。

beniyama.hatenablog.jp

スナップショットから作成しようとしてたんだけど、ずっと「不十分なデータです」とか言われて、なんじゃい!!って顔してた。 スナップショットから作成する時は、初期選択されている仮想化タイプがHVMじゃないので、インスタンスがHVMタイプの場合はそのあたりを注意しないといけないらしい。 僕は諦めて上記の通り、イメージを一度作成してから移行しました。

Elasticsearchのインデックスを確認する

今入ってるインデックスが何でどれくらいなのか確認したい時。

[root@localhost ~]# curl 'http://localhost:9200/_cat/indices?v'
health status index                                            pri rep docs.count docs.deleted store.size pri.store.size
yellow open   .kibana                                            1   1          3            1     23.6kb         23.6kb
yellow open   shakespeare                                        5   1     111396            0     18.9mb         18.9mb
yellow open   logstash-2015.05.20                                5   1       4750            0     28.5mb         28.5mb
yellow open   accounts                                           5   1       1000            0    442.6kb        442.6kb
yellow open   logstash-2015.05.18                                5   1       4631            0     27.2mb         27.2mb
yellow open   logstash-2015.05.19                                5   1       4624            0     28.3mb         28.3mb

データの投入とかはこのへん見つつやりました。

www.elastic.co

qiita.com

innodb_log_file_sizeを変更してもMySQLが文句を言わなくなった

まじかよ知らなかったすげえっていう周回遅れの情報。

MySQL :: MySQL 5.6 リファレンスマニュアル :: 14.5.7 InnoDB ログファイルの数またはサイズの変更、および InnoDB テーブルスペースのサイズの変更

MySQL 5.6.8 の時点では、InnoDB ログファイルの数またはサイズを変更する際に、innodb_fast_shutdown 設定が関連しなくなりました。さらに、古いログファイルを削除する必要もなくなりました。

お、まじか進化してんな。5.5以下で環境作る時、いつもinnodb_fast_shutdownしないでシャットダウンしてmy.cnf修正して起動させてエラーでib_data消してたからナー。

20160926追記

試しに5.7.15でinnodb_data_file_path変更してみたら、結局全部データ爆発してInnoDB見えなくなってデータベースのDropもできなくなってだめやんけ!!となりもうした。 作業前に作成したデータベースのバックアップ作成してたので事なきを得ましたが、やっぱ運用の最初から考慮してないのではだめなんすかねえ。