AWS

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のリクエストが分散する ようにクラスタ設定を組んだ. なお,この記事を書いてい…

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

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

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 ただし,注…

AWS ECS上にfluentdクラスタを構築し別のVPCからログを送りつける

この記事は scouty Advent Calendar 2018 の17日目です. fluentdに関して,勢い余って今年こういう発表をした. speakerdeck.com 完全に酔っていたので勢いだけなのだが,その後マトモなfluentdクラスタができたので書こうと思う. もう二度とchefで作ろう…

RundeckをECS上に構築してGitHubログインできるようにする

この記事はscouty Advent Calendar 2018 の3日目です. ECSで動かしているサービスのスケジュールジョブが多くなってきた. もともとECS Scheduled Taskを使っていたんだけど,数十個レベルになってくると,これで管理するのはだいぶつらい. というわけでRu…

AWS ECSのタスクを実行してログを標準出力に出すecs-taskというツールを作った

色々あって最近Rundeckを建てている.そのへんの話は後日書く. で,RundeckからAWS ECS上のタスクを発火しようと思ったのだが,なかなかいいツールがなかったので自作した. github.com

趣味サービスのインフラをAWS ECSに載せ替えた

趣味で運営していたサービスたち,今まではEC2の上にdocker swarmで構築していたのだが,いよいよECSに載せ替えた. 基本terraform構築 ALBでhost-based routing ECSに使うインスタンスはAutoScalingGroupとSpotFleetとのハイブリッド cronはECS ScheduledTa…

zshで楽にAWS EC2インスタンスにsshログインしたい

みなさんさようなら. 仕事でも家でもAWSを使っていて,よくsshログインをしなければならない局面がある. で,高度に自動化されたAWSだと,Autoscaling Groupを使ってEC2インスタンスを自動で生み出したり,また自動で落としたりするよね. ECSを使っていて…

ECS+NLBでgRPCする

先日AWSの新しいLoadBalancer NLBが出ましたね. aws.amazon.com おそらく便利なので,色んな場面で使えるかとは思いますが,「HTTP以外もECSの組み合わせで動的ポートマッピングできるのでは?」というのが気になったので,使ってみます. 今回はgRPCをECS…

JAWS-UG コンテナ支部 #9 でECSのデプロイ周りの話をしてきたよ

昨日「JAWS-UG コンテナ支部 #9」でデプロイについて話してきました. 中身は前に会社のブログで書いた話 engineer.crowdworks.jp なんだけど,これについて詳しい話をしてきた.

AWS SESのBounce率とComplaint率を監視する

AWS内で動かしているアプリケーションで,メールを送りたい時がある. 普通であれば自分でメールサーバーを立ててドメインを使えるようにして……と割とめんどくさい話なんだけど,AWSにはメールを送る専用のSESというサービスがある.RailsからSESを介してメ…

AWS OpsWorksで使うcustom cookbookのデバッグ環境を整える

AWSのOpsWorksでは,デフォルトのcookbookが用意されている. https://github.com/aws/opsworks-cookbooksOpsWorksというのは,ここに記述されているレシピを実行しながらインスタンスを起動してくれる.しかし,ここに自前でカスタムしたcookbookを突っ込む…

AWS CloudWatchをOpsWorksに導入してみた

今までOpsWorksのプロジェクトでは,td-agentでログを取ってS3に保存していた. この辺のツールでいうと,Kibanaあたりの組み合わせが流行りですね.ただ,最近td-agentのリポジトリのバージョンが上がってしまったので,cookbookのバージョンもそれにともな…

AWS SESでBCC込みのメールを配信したい

RailsにはActionMailerというものがあり,メールを送る場合はこいつを使う場合がほとんどかと思います.アプリケーション側はそれでいいのですが,サーバーとしてAWSを使用していると,ドメインの設定などをする都合上,サーバーのインスタンス本体からメー…

github.comに22番ポート以外でアクセスしてソースを取得する

githubはなかなかに便利で,ソースを上げることが多い. そしてサーバー運用時にも,そこからソースを取ってきてデプロイできるように組んでいたりすることがある. ただし,気を使うのが非公開のプライベートリポジトリだ.プライベートなので,ログインし…

figaroで環境変数を設定したRailsアプリをAWSで運用する際のバグについて

以前Ruby on Railsの開発で便利な,rails_config + figaroの紹介をしていたかと思います. http://h3poteto.hatenablog.com/entry/2014/04/12/232406 Railsでの開発における,環境変数の設定がラクにできるよということで,この組み合わせがすごく便利なので…