y-ohgi's blog

TODO: ここになにかかく

DevOps

Hashicorp の新しいCD ツール "Waypoint" を試してみる

TL;DR hashicorp がリリースしたCD ツールの hashicorp/waypoint を試してみる記事 サーバーを立ち上げてデプロイx2をしてみた(感動的に楽) 個人的にECS を運用するときはまっさきに検討したいツール version waypoint v0.1.3 試す 公式のGet Started を参…

PipeCDを試してみる

これはなに PipeCD というOSS のCD ツールがリリースされたようなので雑に試してみるだけの記事です。 Excited to announce the open-source availability of PipeCD! A unified continuous delivery solution for declarative Kubernetes, Serverless, and …

監視について思うとこ

TL;DR 監視はユーザーにサービスを提供できているかを観測するための行為 SLI/SLOを定めて、SLOを守れるようにモニタリングする ダッシュボードは定常的に表示しておくものと障害時に活用するものを作ると良い アラートはレベル分けして人間が対応しなければ…

AWSのネットワーク設計について

概要 AWSのネットワーク設計について、1エンジニアの個人的見解 見解 VPC VPCは特に言うことはなし。 オンプレとDXを繋ぐ場合はコンフリクトしないように調整する。 VPC FlowLogsの有効化はお忘れなく 最近はGuardDutyが良い感じにログをとってくれるので良…

Docker Tips

概要 Dockerについて知見が溜まってきたので雑に書き書き Dockerとは Linuxカーネルの技術を使ってコンテナという仮想化の1手法を実現するための技術。 仮想化の領域 コンテナはカーネルの機能によって仮想化されます。 VMはハードウェアのような低いレイヤ…

Terraformを使用した際の環境差分の表現方法

TL;DR プロダクションでは往々にして複数環境を構築する Terraform単体だとworkspaceを使用すると良い感じになる 概要 Terraformのサンプルでは -var-file オプションで環境を切り替えることがあります。 例えば以下のように。 $ terrafrom plan -var-file=s…

AWSにおける本番環境を想定したCI/CD実践

この記事は DMM.com Advent Calendar 2018 - Qiita の25日目です。 About CircleCIとCode兄弟を使いCI/CDを作っていこうというものです。 単純に環境を作るわけではなく、CloudFormationを使って本番環境を想定した構成にしていきます。 ターゲットとしては…

HerokuでRailsの本番環境を作成する

概要 Components localの構築 railsの用意 docker-composeの用意 Herokuの操作 アドオンの導入 Databaseの導入 ログ監視のためにPapertrailを導入 アプリケーションの性能監視のためにNewRelicを導入 Herokuの設定変更 環境変数へタイムゾーンを登録 Procfil…

Cloud BuildとkustomizeでGKEのCDパイプラインを作る

概要 Cloud BuildでCDをしたいので、する。 ついでにkustomizeも組み合わせる。 ※プロダクションに導入するには権限がガバガバなので適宜修正。 今回のリポジトリ github.com 目次 概要 今回のリポジトリ 目次 やること スタック CDの流れ 1. CircleCIでGitH…

aws-cdkを試す

概要 awslabs/aws-cdk を試した。 一言で言うと「CloudFormationをコード(JavaScript/Java)で記述するためのライブラリ」。 試す 公式のGetting Startedをやってみる Hello, AWS CDK! — AWS Cloud Development Kit 0.8.0+0eede70 documentation 0. 環境を用…

Knativeを試してみる

概要 Kubernetes上でサーバーレスを動かすためのOSSフレームワークのKnativeを試した 概要 Knativeとは Serverless コンポーネント 試す 0. 前提 1. GKE Clusterの作成 2. cluster-admin権限を現在のユーザーへ与える 3. Istioのインストール 4. Knativeのイ…

Pull Request毎にGAEでSwaggerをプレビューさせる

概要 APIの量産が必要になったものの、複数人でAPIを量産しているとSwaggerのPRも量産されてく。 Swaggerのレビューはyamlを見てレビューするわけだけど、わざわざSwaggerのプレビューをするためにブランチにチェックアウトしてpullしてサーバー立てるのはし…

helm覚書

概要 Kubernetesのパッケージ管理ツール。LinuxでいうaptやyumのKubernetes版のイメージ。 公開されているManifestファイル(HelmではChartと呼ぶ。)をもとにアプリケーションをデプロイすることが可能 デフォルトで使用可能なChartは kubernetes/charts の…

sternを触ってみる

概要 Kubernetesのpodsログ閲覧用コマンド kubectl logsだといちいちpodの指定をしたり、過去のログを見れなかったりでしんどい それを解決してくれたのが wercker/stern How To Use Install brew でサクッと $ brew install stern monitoring log $ stern <POD NAME> </pod>…