weblog of key_amb

主にIT関連の技術メモ

(メモ) PostgreSQL の操作覚え書き

PostgreSQL の操作を毎回忘れてググってしまうので、ここに追記していく。 MySQL に慣れ親しんだ PostgreSQL 初心者向けになる予定。(私がそうなので) psql CLI クライアント。 // 接続 $ psql [-h <ホスト名>] [-p <ポート>] -U <ユーザ名> [-d <データベー…

MySQL binlog_format とバイナリロギング、レプリケーションについて

少し雑なメモです。 MySQL で binlog を記録するかどうかについて。 master で binlog を書き込まなければ、レプリケーションもされません。 --binlog-do-db (master 側) や --replicate-do-db (slave 側) のようなオプションは運用従事者ならご存知の方も多…

(メモ) nghttp2 を MacOSX の特定パス上にビルド

最初、homebrew で入れたのだけど、よく見たらバージョンがかなり古かったので、最新をインストールしたくなった。 自分の環境は Mac OSX Yosemite。 基本、 Kazuho's Weblog: [memo] Installing nghttp2 onto OSX を参考に。 下準備 自分の環境で足りてなか…

(メモ) redis の運用で気をつけること

KVS

雑なメモ。 大量に key があるときの注意 1M 以上 key があるときに、気軽に keys * などのコマンドを乱発するものではない。 他のクライアントが待たされることになる。 試したバージョンは redis 2.6。

(メモ) postfix で特定の宛先のキューを削除する

MTA

元ネタ: Postfixのメールキューから指定の配信先メールだけ削除する - Qiita #!bash TARGET_DOMAIN="example.com" for id in `postqueue -p | grep $TARGET_DOMAIN | awk '{print $1}'`; do postsuper -d $id sleep 0.02 # なんとなく sleep しておく done …

(メモ) S3 バケットの使用ストレージ量を調べる

AWS

雑なメモです。 1. マネジメントコンソールの Usage Report で確認 参考: AWS S3のバケット別使用量を調べる | Siguniang's Blog 2. aws cli で aws s3 ls --summarize で合計オブジェクト数、合計サイズが出力できます。 $ aws s3 ls s3://mybucket/path --…

Gotanda.pm #6 で障害について話してきた #gotandapm

こんにちは、@key_amb です。ご無沙汰しています。 最近ブログの更新が遅れてまして、なんとなく申し訳ない気持ちになっている今日このごろです。 なんと、2ヶ月も更新してなかったんですね。*1 さて、前回の Gotanda.pm #5 では、テーマ(「高速化」でした)…

吉祥寺.pm で Perl と Perl 以外の運用について発表しました #kichijojipm

7/10(金) 吉祥寺.pm #4 で発表をしてきました。 お題が「PerlとPerl以外」ということだったので、PerlとPerl以外のWebアプリケーションのサーバサイド運用について話そうかなーと思い、発表枠で申し込みました。 …で、下のスライドで話をしました。 PerlとPe…

JAWS-UG Meguro #1 で LT をしてきました #jawsmeguro

昨日、JAWS-UG Meguro #1 で LT をしてきました。 今回のテーマは「DB(データストア)」とのことで、MySQL on EC2 や DynamoDB、Cognito Sync、Amazon Aurora 等についてのトークがありました。 私が発表した資料は下のものになります。 とある AWS サービ…

Gotanda.pm #5 で Koyomi の LT をしてきました #appkoyomi #gotandapm

今日は1周年を迎えた Gotanda.pm #5 で Koyomi の LT をしてきました! Koyomi は私が個人で開発している分散ジョブスケジューラです。 v0.1 をリリースした際に、下のエントリで紹介しました。 シンプルな分散ジョブスケジューラを作ってみた #appkoyomi - …

YAPC::Asia Tokyo 2015 にトーク応募しました #yapcasia #appkoyomi

今年の YAPC::Asia Tokyo は 8月20〜22日に予定されています。 YAPC::Asia Tokyo 2015 今年は最後の YAPC::Asia Tokyo ということで、トーク応募にも気合いの入ったエントリーが多いような気がします。 〆切は明日までとのことですが、これを書いている 6/14…

Shibuya Perl Mongers テクニカルトーク #17 に参加して #shibuyapm

6/2 に開催された Shibuya Perl Mongers テクニカルトーク #17 に参加してきました。 Shibuya Perl Mongersテクニカルトーク#17 (2015/06/02 18:30〜) 自分は初参加だったのですが、なんと前回開催から4年ぶりの開催とのこと。 「もうみんな Perl なんて書い…

「Code for 青空文庫」アイデアソン #1 に参加してきました #aozorahack

掲題の通り、「Code for 青空文庫」アイデアソン #1 というイベントに参加してきました。 イベント全容 「Code for 青空文庫」アイデアソン #1 : ATND 午前中の進行は基本的に上記リンク先のタイムテーブルの通りで、青空文庫の運営側の方々から青空文庫の概…

シンプルな分散ジョブスケジューラを作ってみた #appkoyomi

key-amb/perl5-App-Koyomigithub.com 掲題の通り、軽量動作する分散ジョブスケジューラを作ってみました。 名前は Koyomi としました。 Perl で書きました。CPAN にもアップしています。*1 Motivation 出発点となった課題感としては、だいたい cron の冗長化…

#HashiCode #1 HashiCorp 道場に入門してきました

今週も秋葉原のクリエーションラインさんのオフィスにお邪魔してきました。*1 今回は「HashiCorp道場〜入門編〜」ということで、HashiCorp 製品ラインナップの Overview と各製品の機能概要、既存の同種のツールとの比較について講演がありました。 HashiCor…

【台風一過】Mackerel Meetup #4 Tokyo に行ってきました #mackerelio

今夜は、Mackerel Meetup #4 Tokyo に行ってきました。 【台風一過】Mackerel Meetup #4 Tokyo #mackerelio (2015/05/26 19:30〜) 元々は 5/12 に開催予定でしたが、台風上陸のため延期となりました。 さて、DataDog など監視 SaaS の情報はときどき仕入れて…

CHEF Business Meetup に行ってきた #getchef #getchef_ja

5/20 クリエーションライン社で行われた「CHEF Business Meetup ~CHEF社Dicretor来日イベント~」に行ってきました。 CHEF Business Meetup ~CHEF社Director来日イベント~ (2015/05/20 19:00〜) 内容は前半が ChefConf 2015(3/31-4/2開催)のレポート、後半が …

vboxss に Contribute して Multi-VM 環境に対応しました

VirtualBox の Snapshot 管理をかんたんにしてくれる vboxss というツールがあります。 VirtualBox の vboxmanage コマンドをいい感じにラップして実行してくれる Go 言語製のツールです。 最近、Mac のローカル環境で Vagrant + VirtualBox を使って VM に…

PaaS勉強会番外編に行ってきた 〜 Cloud Foundry / Lattice Deep Talks #paasjp

PaaS 勉強会番外編に行ってきました。 Cloud Foundry / Lattice Deep Talks (2015/05/08 19:00〜) PaaS とそれほど近い立ち位置にいるわけではないのですが、最近ときどき話題に上る Cloud Foundry / Lattice についての深い話題が聞けるということで、興味…

peco をセットアップしてみた(Bash編)

Zsh編の方と同じことができるようになりました。 ただし、Bash の version 4 以上が必要で、Mac の場合バージョンアップが必要でした。 そのため、Qiitaに書いたやり方で、Homebrew で入れた Bash をログインシェルにしました。 以下、Mac の .bashrc の内容…

peco をセットアップしてみた(Zsh編)

これもだいぶ今更感ありますが、Mac の zsh に peco を入れて設定してみました。 peco について知らない人のために一応かんたんに説明すると、@lestrrat さんが元は Python の percol というツールだったものを Go 言語に移植したもの*1で、テキストをフィル…

ソフトウェアのバージョンアップ戦略についてのメモ

なんとなく自分の中で暗黙知になっていることをまとめる。 職場での経験や、外部で見聞した情報がベースになってると思います。 今のご時世においては、一般ユーザとしてフリーソフトを使うようなケースでも、ある程度当てはまりそう。 前提 OSS なり、自前…

Atom エディタを使い始めて1ヶ月ぐらい経ったのでハマったことなどメモしておく(または入門編)

はじめに Atom エディタはリリース頻度が高く、すごい勢いで進化してると思います。 少し前の記事の情報で「このパッケージを入れて〜」のようなものだと、既にコア機能に入っていることもあります。 自分の場合、Atom の主な用途は以下のようなところ: Mark…

Hugo で "bootie-docs" というドキュメンテーション用のテーマを作った #Hugo

※2016/4/6 記事更新 こちらです。 Hugo Themes Site にも Pull Request を送って、入れてもらっています。 Motivation 以前に Markdown によるドキュメント管理について、記事を書きました。 Markdown による中規模ドキュメンテーションシステムについて調べ…

イノベーター理論と技術選択の戦略

最近考えていたことをつらつらとまとめてみました。 TL;DR 技術を採用する戦略をイノベーター理論に従って類型化した 要求を満たすベストな選択をすべきで、マジョリティにいた方が安全 その上で、可能な範囲でアーリーアダプターやイノベーターを目指すこと…

MyNA(日本MySQLユーザ会) 2015年4月 に行ってきた #mysql_jp

最近ブログが勉強会参加レポートばかりになっている感がありますが、今日(4/22)は MyNA (日本MySQLユーザ会) に行ってきました。 MyNA(日本MySQLユーザ会)会 2015年4月 on Zusaar ここのところ話題になっていた '' = '' 問題や、パフォーマンス・チューニン…

GCP を検討しているエンジニアのための Compute Engine と AWS の比較 #gcpug

「GCP を検討しているエンジニアのための Compute Engine と AWS の比較」というイベントで、本郷三丁目にあるコワーキングスペースに行ってきました。 GCPを検討しているエンジニアのための Compute Engine と AWS の比較 (2015/04/17 19:30〜) 仕事などで …

CoreOS Meetup Tokyo #1 に行ってきた #coreosjp

4/9(木) に開催された CoreOS Meetup Tokyo #1 に行ってきました。 3時間の中でイントロ除いて発表が7つあり、かなり内容が濃かったです。 一番面白かったのは @kawamuray さんの Docker に CRIU を実装した発表でした。 CRIU はコンテナ界隈でも注目度が高…

(メモ) Atom エディタで trailing space の削除を無効化する方法

Atom エディタ最近使い始めたのですが、以前に調べたときにやり方がわからなかったので、メモしておきます。 今は日本語の情報も少ないので、初心者はハマりそうな気がします。 動作環境としては MacOS X Marverics で、Atom 0.189.0 を使っています。 少し…

JAWS-UG中央線第5回勉強会に行ってきました #jawsug

JAWS-UG中央線第5回勉強会に行ってきました。 JAWS-UG中央線第5回勉強会 初めて JAWS-UG のイベントに参加しました。 けっこうカジュアルな感じでしたね。 個人的には Aerospike の話が面白かったです。 Aerospikeの話おもしろかったな。レプリカ作れて容易…

Markdown による中規模ドキュメンテーションシステムについて調べた。

(追記) タイトルを "【緩募】Markdownによる中規模ドキュメンテーションシステム" から変えました。 (更に追記) 後日談 => Hugo でドキュメンテーション用のテーマを作ってみた - weblog of key_amb 下のような疑問を持ったのがきっかけで、Twitter でつぶや…

Sensu Deep Talks #1に行ってきました #Sensu #sensudeep

Sensu Deep Talks #1 に行ってきました。 Sensu Deep Talks #1 - connpass Sensu を使ったことはないのですが、エージェント型で Immutable Infrastructure に適した監視ということで、以前から気になっていました。 今回は現場で Sensu を使っている人の深…

大チェッカーで「アンテナ」を作ってみました & 今後に期待すること

先週の始めに、はてラボで大チェッカーという新サービスがリリースされました。 新サービス「大チェッカー」をはてラボにリリースしました - Hatelabo Developer Blog 同日のはてなブックマーク開発ブログのポストによると、この大チェッカーを元に新しいRSS…

RSSリーダーによる捗るニュースのチェック方法

私は以前から、ニュース・フィードの情報取得にRSSリーダーを愛用しています。 これまでのスタイルをまとめると、次のようでした: RSS リーダーが主 技術系ブログ + α CNET、毎日新聞など一般のニュースフィード Googleリーダーがサービス終了して以降、RSS …

(メモ) rsync cookbook

よく使う rsync の使い方レシピ集(になる予定)。 よく使うオプション オプション 説明 -a, --archive コピー元のパーミッションやグループ情報などを保持。-rlptgoD と同じ。基本的にこれを付けておくといい -v, --verbosity 進行状況を詳細に表示。最大3個…

(メモ) Ruby で gem install に失敗するときの対処法

ケースごとにまとめていきますが、まだ事例が少ないので、メモとしておきます。 SSL certivicate verify failed 下記のようなエラーです。 ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError) SSL_connect returned=1 errno=0 state=SSLv3 re…

(メモ) Pod::Simple::HTML による Perl ドキュメントのカスタム生成

Pod::Simple::HTML の POD に書いてある通りですが、Pod::Simple::HTML を継承したクラスを作って、生成する HTML をカスタマイズすることができます。 例えば、do_pod_link メソッドをオーバーライドすることで、L<...> で記述するリンクタグの挙動を変更で…

(メモ) Module::Build による Perl ドキュメント生成

Module::Build を使うとプロジェクトのドキュメント生成をビルドのタスクの一部として、かんたんなコマンドで実行できます。 ./Build docs # blib/ 以下にドキュメント生成 ./Build html # blib/ 以下にHTML生成 Module::Build でプロジェクトの対象ファイル…

diff コマンドの使い方まとめ

過去のエントリを見返していたら、diff 関連のエントリがいくつかあったので、まとめておきます。 一次情報としては、お使いのシステムで man diff を参照してもらうのが一番だと思いますが、参考までに。 よく使う使い方 # unified形式で出力 diff -u A B #…

初めての Go #golang

だいぶ今更感がありますが、重い腰を上げてようやく Go 言語を触ってみることにしました。 主に下記記事を足がかりに学習を進めています。 私的メモ: golang 学習 - A Tour of Go をなぞる - Qiita 開発環境は MacOS Mavericks で、エディタは Vim です。 以…

Rundeck によるバッチ実行サーバの冗長化について考えてみた、試してみた #Rundeck

ここ数日ジョブスケジューラ熱が高まっていますが、少し前に下の記事で知った Rundeck も気になっていました。 Rundeck - cronから移行しやすいジョブスケジューラを使ってみよう - インフラエンジニアway - Powered by HEARTBEATS Rundeck の仕組みと冗長化…

cron の冗長化法について調べてみた #cron

Apache Mesos はすごいプロダクトだと思うのですが、単にジョブスケジューラを冗長化するという用途に対しては、やや牛刀な感があるツールだと言えるでしょう。 一方で、バッチサーバの冗長化というのは、割と見過ごされがちなポイントではあると思います。 …

第1回 Apache Mesos 勉強会に行ってきた。 #mesos

第1回 Apache Mesos 勉強会に行ってきました。 第1回 Apache Mesos勉強会 - connpass Mesos が何かを一口に言うのは難しいですが、サーバを束ねてクラスタとして扱い、そのクラスタ上で色んなアプリケーションをジョブとして実行させるもの、というような認…

(メモ) メモリリークの調査方法まとめ

とりあえず参考になりそうな記事のリンクを貼っておきます。 ゆくゆくは加筆してツールや使い方をまとめるかもしれません。 [OS] メモリリークの調査方法 - th0x4c 備忘録 valgrind でメモリリリークを調べる - sonots:blog 恐怖の JVM 大量メモリ消費!メモ…

(メモ) Nginx のアクセス制御と context の話 #nginx

Nginx 1.4 系を使っています。 Nginx で特定 IP のアクセスのみ許可する場合、次のような設定を書きます。 http { satisfy any; allow xxx.xxx.xxx.xxx; # 許可アドレス deny all; } ここで、許可アドレス以外は Basic 認証を入れたい場合、次のようにすれば…

(メモ) AWS VPC 設定の自動化について考えてみた。 #aws #ansible

AWS を使う多くの案件の構築に携わり VPC 周りの設定をしていると、いつも同じようなことをやっていることに気づきました。 VPC を作って、Subnet を作って、Routing Table を設定して、Security Group 作って、…。 だいたい、環境構築時の最初の1回しかやら…

AWS Managed Policies の現状と課題 #aws

AWS

2/16 に公式ブログ - Amazon Web Services ブログ: 【新機能】マネージドポリシー for AWS Identity & Access Management で発表された AWS IAM の新しい Policy 管理機能である、Managed Policies を試してみました。 機能の概要を以下にかんたんにまとめて…

正規表現の一部にオプションを適用する

正規表現で大文字小文字を無視したい場合、/<pattern>/i のように指定することが多いと思います。 Perl なら次のような雰囲気です。 my $text = 'HogeHoge'; if ($text =~ /hoge/i) { : } が、時と場合によっては正規表現の一部で大文字小文字を無視したいようなこと</pattern>…

第8回 Elasticsearch 勉強会に行ってきた #elasticsearch #elasticsearchjp

2/13(金)に開催された第8回 Elasticsearch 勉強会に行ってきました。 第8回elasticsearch勉強会 #elasticsearch #elasticsearchjp - elasticsearch勉強会 | Doorkeeper 以下、内容のメモです。 1. Elasticsearch導入チェックリスト / @johtani Elasticsearch…

書評 - 『Webエンジニアが知っておきたいインフラの基本』を読んで

株式会社ハートビーツの CTO 馬場俊彰さんが書かれた『Webエンジニアが知っておきたいインフラの基本』を読みました。 Amazon.co.jp: Webエンジニアが知っておきたいインフラの基本 ~インフラの設計から構成、監視、チューニングまで~: 馬場 俊彰: 本 昨年…