2019-01-01から1年間の記事一覧

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

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

Pleromaはいいぞ

この記事は分散SNS Advent Calendar 2019 の9日目です. ふだんはMastodon/Pleromaのクライアントアプリケーションである,Whalebirdの話が多いけど,実は https://pleroma.io というPleromaサーバも運用しています. なお,この記事は,分散SNSのサーバを自…

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

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

Host-based routingしたALBにRoute53 Health Checkをかける

タイトルの件について結論から言っておくと,スマートな解決策は今のところない. 一応回避することはなんとなくできるのだが,全然スマートではない.今後のアップデートに期待したい.

typescriptでmemcachedのクライアントを作った

nodeからmemcachedを使いたくなったんだけど,あまり良いクライアントがない. というわけで自作した. github.com

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

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

kube2iamからkiamに乗り換えた

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

builderscon tokyo 2019に行ってきた

今年も行ってきました,builderscon tokyo 2019. 去年は発表者だったけど今年は参加者として行ってきました.端的に言うとCfP落ちました.

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

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

Ubuntuのデスクトップ環境をCinnamonに変えた

昔からUbuntuではGNOMEを愛用していたのだけれど,Ubuntu18.04になってからGOME3になり,今まで慣れていたGNOMEとはだいぶ使い勝手が変わった. GNOME3にも多少は慣れてきたのだけれど,慣れてもそこまで使いやすくなっていないことと,他のデスクトップ環境…

仕事用のPCをMacからThinkpadに変えてUbuntuを入れた

Web系の会社にいると,仕事用のPCとしてMacを支給されることが多いと感じている.例にもれず俺も会社ではMacBook Proを使っていたのだけれど,最近Macが使い物にならないくらい遅くなってきた. そもそもそんなに新しいMacではないというのはあるんだけれど…

scalaでgRPCする

この記事はCrowdWorks Advent Calendar 2017 の3日目です. CrowdWorksもマイクロサービスっぽい世界を目指してサービスを分けようという中で,うっかりgRPCが使いたくなったので,どんな感じで使っているのかを紹介しようと思う. scalaでもgRPCはできる sc…

OSS開発だけでお金をもらえるようになった

最近ついにPaid OSS Developerというやつになったのでので,そのことについて少し詳しく書きます. 要約: WhalebirdというMastodonクライアントを作っている 上記OSSについてお金を支払ってくれるチームが現れた 時給制,USD建てで毎月支払われる 最初は本当…

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を使って構築しようと思う.

AWS ECS上にErlang(Elixir) Clusterを組むためのツールを作った

PhoenixをDockerに乗せてAWS ECS上で運用している. PhoenixはPubSubの機構を持っているが,このバックエンドは,デフォルトではPG2というErlangクラスタ内のプロセス間通信を前提にしたものになっている. ECSのようなDockerクラスタ上にPhoenixを載せる際…

IAMユーザにMFAを強制しつつterraformする

AWSのIAMユーザで,コンソールログインする際には必ずMFAを強制したい,と思うことがある. というわけでそういうIAM Policyを作って当ててみた. IAM Policyでの強制 だいたいこういうのを参考にすると,そのまま使えるのがある. blog.vtryo.me ただし,注…