尋常でないもふもふ

a software engineer blog

aws

ECS + Fargate + gRPCを使ったマイクロサービス構成

バックエンドサーバは機能毎にマイクロサービスとして分割し、サーバ間通信には gRPC を使ってモダンな感じにしたい。 最初のインフラ構想 まず Node.js アプリケーションをコンテナベースにして、Code Pipeline + CodeBuild + ECR + ECS + Fargate で継続的…

awslogsはpython2系依存なのでgolang実装のcwをつかう

AWS の Lambda や ECS の需要が増えたことにより、CloudWatch Logs の需要も増えてると思う。 でも AWS コンソールから CloudWatch Logs はとても見にくい。そこで awslogs を使ってる人が多いと思う。 awslogs の問題点 Python2系への依存、これが非常にだ…

DockerのHEALTHCHECKをwgetでやる

Docker には HEALTHCHECK というコンテナが正常稼働しているか確認する機能がある。 何をもって『正常』と判断するかはコンテナを稼働する人が指定する。Nginx みたいな Web サービスのコンテナの場合は公式サンプルにもある通りcurl を死活監視のためのコマ…

ECSでクラスターを削除できないとき

aws

クラスターのタスクが動いたまま タスクを「すべて停止」する 別のクラスターと同じセキュリティグループをつかっている 別のクラスターのセキュリティグループをすげ替える または対象のセキュリティグループを直接削除する

AWS CLIの使い方

aws

AWS CLI(AWS Command Line Interface)の使い方。 インストール $ brew install awscli $ aws --version aws-cli/1.6.5 Python/2.7.5 Darwin/13.4.0 セットアップ configure オプションが用意されているので、アクセスキーやシークレットキー、リージョンと…

s3cmdの使い方

aws

Amazon S3 のコマンドラインクライアント、s3cmd の使い方。 インストール編 Mac の場合 $ brew install s3cmd Amazon Linux の場合 デフォルトだと epel リポジトリが無効なため --enablerepo をつける $ yum --enablerepo epel search s3cmd $ sudo yum -y…

DynamoDBのスループットをまとめてさげる

テーブル数が多くなると、Management Console 上からチマチマ変更するのは疲れるので、Java でプログラム書いた。 スループットを下げるように書いたので、上げたいときは修正が必要だけど、サンプルコードとして役に立つと思う。jnst / dynamodb-tools 使い…

DynamoDBの一番簡単なバックアップ方法

aws

dynamodump という素晴らしいツールを作ってくれてる人がいた。 GitHub - bchew / dynamodump 実行環境 Python 環境が必要。Python 用 AWS SDK の boto というライブラリを利用しているため、pip も入れておくこと。 $ git clone https://github.com/bchew/d…