元フリーエンジニアライフ

Ruby on Rails とか MovableType とかAWSやってるフリーランスウェブエンジニアの記録でした。現在は法人成りしてIT社長。

Ops(運用全般)

OpsWorksなどの自動化ツールで、GitHubプライベートリポジトリをsubmoduleで使いたい

OpsWorksにデプロイしているアプリで、Gitのsubmoduleを使う場合、通常のデプロイキーを使う方法ではプライベートリポジトリを参照することはできません。 ---- Begin output of git submodule update --init --recursive ---- STDOUT: Submodule 'site-cook…

OpsWorks customize.rbでbuilt-in cookbooksの設定値を変更する

OpsWorksのbuilt-in cookbooksの設定値を変更するのにこれまでカスタムJSONを使っていましたが、設定をバージョン管理に含められないのが問題でした。 調べてみると Custom Cookbooks のリポジトリ内に customize.rbというファイルを置くことで、nginxをはじ…

RubyKaigi 2014 個人的メモ(2日目)

RubyKaigi2014へ入ってきた。せっかく3日も仕事もせず2万円のチケットを購入して参加したので、少しでも多くのことを身につけたいと思うので、印象深かった内容を書き出しておく。

OpsWorksでエラー箇所を把握するために見るところ

/var/lib/aws/opsworks/cache/chef-stacktrace.out rubyのスタックトレースをjsonとあわせて見るとわかりやすい

OpsWorksで設定した Custom JSON で意図した通りに値が設定されているか確認する方法

/var/lib/aws/opsworks/chef/以下にjsonとlogが入っているのでそれを見る。

Dockerについて少し調べて試したメモ。

最近よく耳にするDockerについて少し調べて試したメモ。 Docker? 「いまさら聞けないDocker入門」 http://www.atmarkit.co.jp/ait/kw/docker_nyumon.html AWS Elastic BeanstalkがDockerをサポートすると何がうれしいのか http://dev.classmethod.jp/cloud/a…

CentOS6 SSL脆弱性

ちょっとTLが賑わってたのでさっさと更新。 OpenSSLにまた重大な脆弱性、直ちにパッチ適用を CCS Injection脆弱性(CVE-2014-0224)発見の経緯についての紹介 今回のOpenSSLの脆弱性は一般メディアで報道するほどではないな。— lumin (@lumin) 2014, 6月 6 今…

Vagrant で作成したVMにPuTTYから接続(Linux版)

Ubuntu 14.04 LTS Vagrant 1.5.4 PuTTY 0.63-4 ppk形式に変換 uzuki05@z21:~$ cd ~/.vagrant.d uzuki05@z21:~/.vagrant.d$ puttygen insecure_private_key -o insecure_private_key.ppk PuTTYを起動して秘密鍵にセットして使えばOK Host Name: 127.0.0.1 Por…

ERST: Error Record Serialization Table (ERST) support is initialized.

Logwatchを眺めていると --------------------- Kernel Begin ------------------------ WARNING: Kernel Errors Present ERST: Error Record Serializa ...: 1 Time(s) ---------------------- Kernel End ------------------------- Kernel Errors Present…

ELB + EC2 + nginx 環境でアクセス元IPアドレスによる制限をかける

ELB + EC2 (nginx + unicorn + Rails)環境で運用中のサービスに対して、あるIPアドレスからディレクトリトラバーサルなどの攻撃を受けたので、その対応メモ。 取り急ぎ該当IPアドレスからのアクセスを遮断しようと考えたが、EC2の為、セキュリティグループで…

Zabbixで障害の深刻度によって通知を受け取るメールアドレスを変える

ユーザーのメディア設定で深刻度による絞り込みが可能。 深刻度別に通知先を設定することで、通常は管理用のメールアドレスに送信、緊急時のみ携帯に通知、といったことが簡単に実現できる。

Zabbixで復旧通知を送信

障害発生時だけでなく、復旧時も通知したい アクションの設定で「リカバリメッセージ」にチェックを入れる

Zabbixでメールの送信に失敗する

いろいろある。 そもそもSMTPサーバは生きているのか 対象のサーバでSMTPサーバは動作しているか?メールは送れるか?ファイアーウォールの設定はできているか?など メディアタイプで設定したSMTPサーバ設定等は正しいか "localhost"で設定した場合、SMTPサ…

Zabbixで障害通知

障害発生時及び復旧時にメール通知する メディアタイプ 「管理」→「メディアタイプ」で一覧から「Email」を選択してSMTPサーバ等の設定をする。 Zabbixでメールの送信に失敗する 送信先 ユーザーのメールアドレスを設定する。 「管理」→「ユーザー」でユーザ…

Zabbixでリソース監視

さくらのクラウド上のCentOS6にZabbix 2.0を導入した。 Zabbixによるサーバー監視&運用 おおむねこちらの通り。 ただ、データベースの準備の項が抜けている感じなのでこちらを参考に Zabbix Beginner's Guide - Installing and configuring the monitoring s…

ターミナル終了後もプロセスを継続させたいとき

メモ。 ターミナル終了後もプロセスを継続させたいとき - masutaroの日記 $ nohup コマンド & $ Ctrl + z $ jobs $ bg %ジョブ番号 $ disown %ジョブ番号 ログアウトしてもバックグラウンド ジョブを継続する方法 例2 標準出力先を指定する $ nohup ./abc.s…

GitLabでリポジトリを作成後 push しようとすると does not appear to be a git repository

[uzuki05@dev]$ git push -u origin master fatal: '/home/git/repositories//hoge.git' does not appear to be a git repository fatal: The remote end hung up unexpectedly サーバ上に/home/git/repositories/hoge.gitができてない。 gitlab/log/sidekiq…

EC2でRHEL6.4のAMIから起動したインスタンスに二度とSSH接続できなくなる恐怖のバグ

さんざんはまったのでメモ。 RHEL6.4のAMIからインスタンスを起動 再起動 sshdの起動に失敗し接続が不可能になる 何時間か浪費した後、イメージ側のバグだったことが判明orz

nginxでPC/スマホ/ガラケー別にキャッシュする

こんなかんじで、これと組み合わせて、それぞれキャッシュするようにしてます。 判定条件はmt-plugin-httpuseragentと同じです。 set $ua pc; set $general 1; set $smartphone 0; set $featurephone 0; set $docomo 0; set $au 0; set $softbank 0; set $ip…

FTP PASV 使用時のiptables設定でわすれがちなこと

FTP PASV設定(vsftpd) http://centossrv.com/vsftpd.shtml iptables例 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A INPUT -p tcp --dport 21 -j ACCEPT_COUNTRY でこれを動作させるには ip_conntrack_ftp カーネルモジュ…

PostgreSQLのWALの不整合

こんなエラーが。 Sep 20 10:02:07 system postgres[3044]: [97-1] LOG: archive command failed with exit code 1 Sep 20 10:02:07 system postgres[3044]: [97-2] DETAIL: The failed archive command was: cp -i pg_xlog/000000010000004E000000AF Sep 20…

Connection attempts using mod_proxy

Logwatchから以下のようなレポートが届いた。 --------------------- httpd Begin ------------------------ Connection attempts using mod_proxy: 111.241.36.22 -> mx3.mail2000.com.tw:25: 1 Time(s) 111.241.39.245 -> mx2.mail2000.com.tw:25: 1 Time(…