Sionの技術ブログ

SREとして日々の学習を書いて行きます。twitterは@sion_cojp

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

Djangoでコンテナ用にjsonログ出力を実装する

TL;DR Why? Why formatter? Why filter 実装したものを適用した後のログ出力 How 設定方法 required config/base.py config/logging_formatter.py config/logging_filter.py config/environemnt名.py TL;DR djangoの標準ログは質素すぎて足りない部分が多か…

Fargateで異常終了したコンテナをLambda(Go)でslackに通知する仕組みをTerraformで管理する

TL;DR どんな感じに通知されるの? Architecture Code 実装時のポイント 事前にSlackのappを作る シークレット情報はLambdaのEnvironmentに設定できない terraformからGoで書かれたlambdaをdeployするのが難しい Goがインストールされてなくてもbuild, go ge…

aws rootアカウントに二要素認証の必要性と有効化する手順

二要素認証の必要性 nullcon HackIM 2020 Writeup - Lateral Movement - こんとろーるしーこんとろーるぶい こちらのCTF writeupを拝見したところ、下記のような内容でした。 1. script.jsを見て変なHTTPヘッダーを見つける 2. HTTPヘッダーに値をセットして…

AWS S3の特定パスにある大量のオブジェクトをGoで並列に別バケットに移動する

はじめに TL;DR バケット構成 Why 移動? How 進め方 コストの洗い出しとGlacier or DeepArchive コード どれくらいかかった? 障害が起こってないかの確認 終わったときのslack通知 移動時と移動後の値段 起こった問題について 1. インスタンス耐えれなかっ…

golang.org/x/sync/ を使ったGoの並列処理

Go

はじめに syncパッケージのコード golang.org/x/sync/ のコード はじめに 昔はsyncパッケージを使う必要があり、若干分かりづらいコードになってましたが、 golang.org/x/sync/ で実装すると分かりやすく改善されてたのでサンプルコードをおいてみます。 並…

RDS MySQLをAuroraに移行したお話

はじめに TL;DR Why Aurora? その他の改善項目 過去に1回チャレンジして失敗している How 進め方 移行中のデータ欠損対策 peeringの確認 RDS接続用のprivateドメインを作ってインフラ側で制御する dumpの手順 DB名を変更する手順 ユーザ通知や社外調整 手順…

株式会社チカクに入社しました

2021/3月に株式会社チカクに転職しました。 あまり入社エントリーは書かないのですが、1ヶ月経った節目として書いてみます。 自己紹介 元プロゲーマーでアジアチャンピオンです。 会社歴としては、下記の通りです。 会社名 職務 ビットアイル ハードウェア周…

AWS S3 Glacierの取り出しをRubyで検証してみる

What S3のGlacier, Glacier Deep Archiveがあるが、実際に取り出したことがあまりない 取り出すにはリクエストが必要 今働いてる chikaku がrailsをメインにしてるので、rubyで検証しました Glacier周りの料金や仕様 S3にあるオブジェクトは保存するのにお金…