AWS SAM ローカルを使用したサーバーレスアプリケーション(Golang版)

こちらの公式ドキュメントの「SAM Local によるシンプルなアプリケーションの構築」の項目をGolang版で動かしたメモ。 docs.aws.amazon.com 準備するのは以下の2ファイル dir/template.yaml dir/main.go ビルドと起動 # productsというファイル名でビルド $ …

別ネットワークにSSHトンネルを通してブラウザ表示するProxyを作る方法

タイトルやりたいことを表現できているかわからないですが、つまりはこんなことをしたいです。 Server B〜DがあるネットワークでWebブラウザやアプリといったGUIが無い場合など結構便利です。 ServerAではトンネルのリストを並べて、クリックするとトンネル…

ローカルPCを汚さずに手元のDockerでDynamoDBを手軽に検証する

前提 環境構築 awscliで接続してみる 関連URL 前提 この記事の手順で必要なもの。 Docker gitとかawscliとか抜けばDockerだけ。追加のソフトウェアインストールも不要です。 環境構築 この項目がこの記事のメインです。簡単にDynamoDBの検証環境がローカルに…

Macユーザになり数年、いつの間にか戻れなくなっていたWindowsに何とか戻ってきた

エディタ ブラウザ ターミナル(Linuxコマンド含む) その他 トラックパッド 夜間モード キーボード Slack止まる 後日追記 更に後日追記 更に更に後日追記 更に更に更に後日追記 更に更に更に更に後日追記 更に更に更に更に更に後日追記 社会人になる前からず…

リードレプリカを使ってRDS(MySQL)をアップグレードする手順を自動化した

AWS

RDS(MySQL)を10台以上アップグレードする必要が出てきたのでこちらの手順をスクリプト化しました。 以下の公式手順を自動化したものになります。 MySQL DB エンジンのアップグレード - Amazon Relational Database Service こちらの記事も参考にさせていただ…

Lucene/Solrのコードリーディング時に必携の検索リクエストのライフサイクル説明資料

Lucene/Solr Revolution 2017の1資料です。 今では大分慣れてきたものの、最初にLucene-Solrのコード読むことが必要になった時は、Solrそのものも良くわかっておらず、エラーのスタックトレースから頑張って一つ読み解いていきました。とても大変だったのを…

Swarmの運用用にdocker statsコマンドを監視するMuninのplugin作った

最近、Docker Swarmの運用を始めて一台のマシンに存在するコンテナが増えてきたので、監視用のmuninのプラグイン作りました。 取得できる項目 docker statsと同等の情報が取得できます。NET I/OとBLOCK I/Oは積算値ではなく、前回との差分値を出力します。 C…

AWS ALB配下のノードが全てUnhealtyになった場合、リクエストが全ターゲットにルーティングされます

AWS

開発環境のALB配下唯一のEC2インスタンスがUnhealtyなのに、普通にアクセスできるので調べてみたらこんな挙動だということが。全く知りませんでした。sorry pageとか最低限のリカバリにはつなげやすいのかな。 ただ、監視をゆるめている開発や検証環境だと全…

Muninのプラグイン書くのに役立つ環境変数たち

Muninのプラグインを何本も書いてきましたが、最近になってプラグイン書くのに役立つ環境変数があることを知りました。 実際の変数を出力したければ以下のようなファイル作って munin-run 実行してみるだけです。 $ cat /etc/munin/plugins/test #!/bin/bash…

AmazonLinuxの古いyumリポジトリを利用したい時の方法

AWS

掲題の件、備忘メモ。 まず、以下のURLで リリースノート の項目を見るとリリースの一覧があるのでリリースの名前がわかります。 https://aws.amazon.com/jp/amazon-linux-ami/ だいたい3月と9月に出るようなので2017.03とか2017.09とか。今現在の最新が2017…

Apacheリバースプロキシにおけるスラッシュと%2F問題はまったポイント

Apacheと%2Fでを調べると沢山出てくる内容なのですが、ApacheはURLから取得されるPATH_INFO変数に / のエンコードである %2F があると404を返します。 これ自体はAllowEncodedSlashesというパラメータをOnにしてやると処理できるようになります。 <VirtalHost> ... Allow</virtalhost>…

AWS S3を保存先としたプライベートなDocker Registryを公式コンテナから簡単導入

タイトルの通り。作業メモです。 テスト用イメージ作成 テストで利用するイメージを作ります。 Dockerfile作って。 cat <<EOF > Dockerfile from alpine:latest ENTRYPOINT ["echo","myimage"] EOF ビルドして。 docker build --no-cache -t myimage . ビルドされ</eof>…

AWS ALBのアクセスログ分析環境をDockernizeしてローカルPCで実行できるようにした

AWS ALBのアクセスログをサーバ上のBananaで分析していたのですが、Docker使って手元のPC環境でも簡単に実行できるようにしました。 github.com 使い方 Repositoryをダウンロード git clone https://github.com/yomon8/alb-log-analyzer.git cd alb-log-anal…

ALB/ELBのアクセスログを時間指定でダウンロードして標準出力してgrep検索可能にするツール作った

AWS ALBやELBのアクセスログですが、5分毎に出力していると大量のファイルになります。 調査するにしても複数の細かく分かれたファイルを結合したり、JSTとUTCの差を失念していて勘違いしたり、S3のフォルダ構造深かったり、ALBのアクセスログはgzip形式なの…

引数で渡した複数のストリームを行単位でマージしリアルタイム出力するコマンド作った

ツール書きました。 github.com 例えば以下のような3つのコマンドを同時に実行して、結果をリアルタイムでマージして出力したいとします。 1 (sleep 1;echo SlowSlow) 2 (sleep 0;for i in $(seq 1 25);do printf aaa;echo;done) 3 (sleep 0;for i in $(seq …