kops で t3 インスタンスの T2/T3 Unlimited を無効にする

kops で kubernetes のクラスタを構築する時には master と node となるインスタンスが1台以上必要になる。 kops は Instance Groups という概念で これらを表現していて AWS だと AutoScalingGroup にあたる。 今までは t2 インスタンスで master と node …

各podのActionCableのconnection数をCloudWatch Metricsに送る

前回の記事に書いたように最近 graphql-ruby を使って Subscription を実装しました。 blog.hatappi.me そのタイミングで Rails の ActionCable を使うことになったのですが、ふと各 pod でどれくらい connection 数があるのかを見れるようにしてみたいなと…

graphql-ruby で始める GraphQL Subscription

いままで GraphQL で Query と Mutation を使う機会はあったけど Subscription は使ったことがなかった。 ということで今回は graphql-ruby を使って Subscription を使ってみました。のメモ。 できたもの Anket で回答した結果をブラウザから確認できるので…

Slack App を作るフレームワークのboltを検証する

slack.dev 今回は Bolt ネタです。 今まで、Slack Bot を作成する時は howdyai/botkit を使ってました。 これ自体はよくできていて、良いのですが、 Slackのためのというわけではなく Facebook Messanger 上で動作させたりと結構汎用的に作られている framew…

kops にPRをおくる

1ヶ月前くらいのエントリで kops で構築した k8s クラスタに IRSA をいれた時に kube-apiserver の service-account-key-file に複数のキーファイルを指定した時にエラーになるという issue に遭遇した。 blog.hatappi.me Github issue は↓ github.com 本来…

Goで処理途中でvimを開いてその結果を受け取って後続の処理をする

タイトルをうまい感じにまとめられなくてそのままなタイトルになってしまったw 最近 Go のスキルをあげるのとちょっとほしい CLI があって作ってます。 その中でユーザーからの入力を echo --message hogehoge のように実行時に引数として文字列を受け取るコ…

kopsでaws上に作成したKubernetesクラスターでIAM Roles for Service Accountsを使う

今月AWSでKubernetesでクラスター構築してる勢に衝撃が走りました。 EKS で Kubernetes サービスアカウントに IAM アクセス許可を割り当てることが出来るようになったのです!! aws.amazon.com これによって pod に対して IAM Role を割り当てやすくなりま…

CloudWatch Logs Insights のクエリメモ

blog.hatappi.me 1ヶ月前くらいに CloudWatch Container Insights をいれて k8s 内の pod のメトリクスを収集していたのですが、ダッシュボードを作成していなかったので作成してました。 ダッシュボードの作成に必要そうな Service に対する CPU 使用率とか…

CodefreshでKubernetesへアプリケーションをデプロイするパイプラインを作成する

blog.hatappi.me 前回の記事では CircleCI を使った Kubernetes へのアプリケーションへデプロイする記事を書きました。 これはこれでよかったのですが、次の2点で少し悩んでいました。 docker build のキャッシュを有効にするのは有料 Docker Layer Caching…

CircleCIを使ってリリースタグを作ったらKubernetesにアプリケーションをデプロイする仕組みを作る

今回はプライベートで作ってるサービスのデプロイで抱えていた問題を解決した話 デプロイで抱えていた問題 今運用している2つのサービスはk8s上で動いているのですが、現状こんな感じのサイクルでデプロイしています。 masterからブランチきって作業 PR出し…