kubernetes

DaemonSetで立ち上げたDatadogにカスタムメトリクスを送りつける

helmでDatadogを入れることが多いんだけど,これで立ち上がるDogStatsDにアプリケーションからカスタムメトリクスを送りたいことがある. https://github.com/helm/charts/tree/73e2adc5d2250d02cb02ef4602b7eeda05e6aaf4/stable/datadog 現状のdatadogのcha…

kopsで構築したKubernetesクラスタでIRSAを使う

IAM Role for Service Account(IRSA)自体はEKS以外でも利用可能ということだったので,自前のkopsクラスタで構築してみた. ほぼ,こちらのお世話になっている. blog.hatappi.me ほぼ同じことをしているのだが,いかんせん複雑なので自分用の記録として残し…

ArgoCDをAWS EKS上で構築する

GitOpsがやりたくてArgoCDを導入しようと思ったんだけど,そもそもArgoCD自体はみんなどこで動かしてるんです? もちろんin clusterでも動くので,デプロイ対象のアプリケーションが乗っているKubernetesクラスタに構築しようと思いました. が,ArgoCDのチ…

AWS KMSで暗号化したSecretsをそのままapplyしたい!

KubernetesでGitOpsを実践しようと思うときに,Secretsをどうするかという問題は結構大きい.GitOpsをしていなかったとしても,Kubernetesのyamlファイルをgitにコミットしようと思うとき,Secretsをどうするかというのは結構大きな問題ではないだろうか. P…

PodにfluentdのSidecarを自動でinjectする

本番でWebアプリケーションを運用していると,様々なログを取り扱う必要がある.これはKubernetesでも同じで,Kubernetes上で動かしているコンテナのログも,何かしらの方法で集約してどこかに蓄えておいて,分析とか検索とかをしたくなる. こういう用途で…

kubernetesとhelmで作る最強のオレオレheroku,yadockeri

この記事は LAPRAS Advent Calendar 2019 の18日目です. 会社でWebサービスを開発していると,検証したりレビューしたりするときに専用の環境が欲しくなる.それは開発しているブランチごとに独立した環境であって欲しいし,なんなら本番っぽいデータが入っ…

kube2iamをIAM Role for Service Accountに載せ替えた

この記事は LAPRAS Advent Calendar 2019 の4日目です. AWS上にkubernetesクラスタを構築していると,Pod内のコンテナから,AWSのAPIを叩きたいことがある. そのためにはもちろんAWSの認証を通す必要があり,AWSのAccess Tokenとか,IAM Roleを使って認証…

kopsで構築したkubernetesクラスタを1.11.7->1.13.10までバージョンアップした

タイトルの通りです. 結構ハマったので書き残しておく.

kube2iamからkiamに乗り換えた

AWS上に構築したKubernetesクラスタ内のPodが,AWSのリソースにアクセスしようとしたときには,もちろんAWS IAM Roleか,AWSの認証情報を使ってAWSのAPIを叩く必要がある. しかし,Kubernetesはクラスタだ.もちろんノードはいっぱいあるし,その上では様々…

Kubernetes上でRundeckをクラスタ構成で運用する

以前RundeckをDockerで動かす話を書いた. h3poteto.hatenablog.com このときはECSだったが,こいつをKubernetesに載せ替え, ジョブ実行ノードがクラスタ全体に分散する Webのリクエストが分散する ようにクラスタ設定を組んだ. なお,この記事を書いてい…

kubernetes上で単発のジョブを実行するツールを作った

kubernetesにはJobというリソースがある(CronJobもあるよ). このJobを使いたい用途が2つあった. デプロイ時のmigration等 Rundeckからジョブを実行したい というわけで,この2つを両方共満たせるものを作った. github.com

できる限りterraformでリソース管理しつつkopsでkubernetesクラスタを作る

最近KubernetesクラスタをAWS上に作っているのだが,EKSは結構お高い. これはどうしても削れない,EKSの利用料金として,$0.20/hour持っていかれるためである. EKSだけでだいたい$144/monthかかることになる. これは流石に痛いので,kopsでKubernetesクラ…

IstioでgRPCのリクエストを振り分ける

前回 はIstioでHTTPのリクエストを振り分けていたので,今度はgRPCを扱ってみようと思う. といっても基本的な構成はそんなに変わらない. 前回とほとんど同じような環境を使うので, Helm Istio Auto injection あたりの設定は終わっているものとする. ま…

IstioでHTTPのリクエストを振り分ける

前回の記事で,Envoyの話をした. Envoy,すごく便利なのだがこの設定を全コンテナごとに書いてやるのはなかなかにめんどくさい. せっかくSidecarなのでもっと楽に差し込めたら良い. あと,せっかくEnvoyを使っているので,static_resourcesだけじゃなくdy…

EnvoyでgRPCをロードバランスする

gRPCサーバをサーバサイドでロードバランスしようと思う. なお,この記事はKubernetesを前提にしている. ECSの場合これと同じ方法でうまく行かない気がしているので注意.

EKSのノードをSpot Fleetで構築する

EKSをterraformで作っている.そうするとEKSのノード群をAutoscalingGroupで構築する例は出てくるのだが,これをSpotFleetを使って構築しようと思う.