勉強日記

チラ裏

2020-03-01から1ヶ月間の記事一覧

実践Terraform ch24 リファクタリング

nextpublishing.jp tfstateファイルのバックアップ ステートの参照 terraform state list terraform state show terraform state pull ステートの上書き tfstateファイルの書き換え, terraform state push ステートからリソースを削除 準備 terraform state …

実践Terraform ch17 Terraformベストプラクティス

nextpublishing.jp Terraformバージョンを固定する ブロバイダバージョンを固定する 削除操作を抑止する コードフォーマットをかける バリデーションをかける オートコンプリートを有効にする プラグインキャッシュを有効にする TFLintで不正なコードを検出…

実践Terraform ch19 高度な構文

nextpublishing.jp 三項演算子 複数リソース作成 リソース作成制御 データソース 主要な組み込み関数 ランダム文字列 Multipleプロバイダ Dynamic blocks 三項演算子 variable "env" {} resource "aws_instance" "example" { ami = "ami-0c3fd0f5d33134a76" …

DNSがよくわかる教科書 ch10 よりよいDNS運用のために

www.sbcr.jp サーバーの信頼性に関する考慮事項 サーバーを動作させるプラットフォームの信頼性 DNSソフトウェアの選択 主なDNSソフトウェア サーバーを設置するネットワークの選定 DNSの設定と運用にまつわる潜在的なリスク 権威サーバー間のゾーンデータの…

DNSがよくわかる教科書 ch9 DNSに対するサイバー攻撃とその対策

www.sbcr.jp 対象と手法によるDNS関連攻撃の分類 対象と効果による攻撃対策の分類 攻撃の影響範囲 スタブリゾルバーの影響範囲 フルリゾルバーの影響範囲 権威サーバーの影響範囲 Column: IP Anycast DNSの特性が攻撃に及ぼす影響 代表的な攻撃手法、概要、…

【追記しました】Qiitaのインフラを掘った

AWS

動機 digる 読み解く Route53 EC2 わかった範囲での構成図 なんでこうしないんだろう 追記 動機 「退会してもログインできる」 「3回退会してようやく退会できた」 というツイートを見かけ、 「ステートごとスケールアウトしてて同期取れてないとかだったら…

【備忘】WSL2でTCPで名前解決要求できなかった話

DNSとネットワークの勉強になったのでまとめてみる 現象: WSL2のデフォルトのフルリゾルバーにTCPで名前解決要求するとconnection refused 詳細 connection refusedを回避してみる 現象: WSL2のデフォルトのフルリゾルバーにTCPで名前解決要求するとconnecti…

実践Terraform ch13 データストア (2/2)

nextpublishing.jp ElastiCache ElastiCacheパラメータグループ ElastiCacheサブネットグループ ElastiCacheレプリケーショングループ github.com ElastiCache ElastiCacheパラメータグループ クラスタモード有効/無効を選択する 公式 今回は無効 resource "…

実践Terraform ch13 データストア (1/2)

nextpublishing.jp RDS: Relational Database Service DBパラメータグループ DBオプショングループ DBサブネットグループ DBインスタンス マスターパスワードの変更 【補】後始末 github.com RDS: Relational Database Service DBパラメータグループ my.cnf…

DNSがよくわかる教科書 ch8 DNSの動作確認 (2/3)

www.sbcr.jp digコマンドを使った動作確認 権威サーバーの動作を確認する ns1.jprs.co.jp. がフルリゾルバーとして動作していないことの確認 フルリゾルバーの動作を確認する digコマンドの応用 - フルリゾルバーになって名前解決 例1) www.jprs.co.jpのAリ…

DNSがよくわかる教科書 ch8 DNSの動作確認 (1/3)

www.sbcr.jp DNSの動作確認の基本 DNSのサービス状況を確認する方法 Column: インシデントとアクシデント コマンドラインツール DNSの動作状況を確認するためのコマンド digコマンドとdrillコマンド dig, drill, kdigコマンドの代表的なオプション DNSメッセ…

DNSがよくわかる教科書 ch7 名前解決サービスを提供する -フルリゾルバーの設定-

www.sbcr.jp フルリゾルバーの重要性 Column: ヒントファイルとプライミング フルリゾルバーの設置と運用 フルリゾルバーの設置 Column: DNSのフォワーダー フルリゾルバーの可用性 フルリゾルバーにおけるアクセス制限 フルリゾルバーと権威サーバーのサー…

AWS Encryption CLI触った

AWS Encryption CLIのdockerイメージ KMSキー作る 暗号化 復号 AWS Encryption CLIのdockerイメージ hub.docker.com KMSキー作る via terraform resource "aws_kms_key" "example" { description = "example for encryption cli" deletion_window_in_days = …

IAM UserにIAM Roleの権限を委譲する (AssumeRole)

やりたいこと AWS STS AssumeRole 試す 構築 IAM Role IAM User, S3 Bucket AssumeRole前、S3にPutObjectできないことを確認する AssumeRoleし、S3にPutObjectできることを確認する まとめ IAM Roleを使わない(使いたくない)理由ってなんだろうあるのかな— …

実践Terraform ch12 設定管理

nextpublishing.jp コンテナの設定管理 SSMパラメータストア Terraformによるコード化 よくない よい コード化する必要ある? SSMパラメータストアとECSの統合 https://github.com/wand2016/terraform_ch12_example コンテナの設定管理 実行環境ごとに異なる…

Trivariate Estimates計算機を作った

作ったもの: Trivariate Estimates 計算機 例: O=1, N=2, P=6(時間) ソースコード 技術 学び React GitHub Pages 制限 相対パス対応 subtree切り出し 作ったもの: Trivariate Estimates 計算機 wand2016.github.io The Clean Coderで学んだ見積もり術 楽観的…

PHPでRAII

RAII: Resource Acquisition Is Initialization PHPのデストラクタ PHPでRAIIを試す RAII: Resource Acquisition Is Initialization 「リソース取得は初期化時に」 C++のSTLコンテナやスマートポインタが則っている概念 一般にLoan Patternと呼ばれるものの…

DNSがよくわかる教科書 ch6 自分のドメイン名を管理する ~権威サーバーの設定~

www.sbcr.jp ドメイン名の管理者が管理する範囲と権威サーバー 権威サーバーの可用性 プライマリサーバーとセカンダリサーバー ゾーン転送の仕組み プライマリサーバーとセカンダリサーバーの配置 権威サーバーが応答する情報 ドメイン名の管理と委任のため…

DNSがよくわかる教科書 ch5 自分のドメイン名を設計する

www.sbcr.jp DNSを動かすために必要なこと ドメイン名を設計するための基本的な考え方 EXAMPLE社を例にした設計・構築 会社のドメインとしてexample.co.jpを登録し、システム部門で管理する 社内の各部門のために、サブドメインを用意する DNSを動かすために…

DNSがよくわかる教科書 ch4 (2/2)

www.sbcr.jp 構成要素の連携による名前解決 Column: ルートサーバーのIPアドレスはどうやって知る? Column: 名前解決要求と名前解決の実行の違い DNSの処理の効率化と可用性の向上 キャッシュとネガティブキャッシュ キャッシュとネガティブキャッシュのメ…

DNSがよくわかる教科書 ch4 (1/2)

www.sbcr.jp 3種類の構成要素とその役割 スタブリゾルバーの役割 フルリゾルバーの役割 権威サーバーの役割 Column: DNSのクラス リソースレコードの構成 リソースレコードのタイプ Column: 統一されていない名称に注意 3種類の構成要素とその役割 スタブリ…

QiitaのLGTMボタンをLGTAにする

qiita.com content.js window.addEventListener('load', function () { document.querySelectorAll('div.likable button,div.co-Item_like button') .forEach(function(b) { b.innerHTML = ''; b.style.backgroundImage = "url(https://pbs.twimg.com/media/…

DNSがよくわかる教科書 ch3

www.sbcr.jp 名前解決の仕組み 問い合わせと応答 階層構造をたどるということ 名前解決の負荷と時間の軽減 名前解決のために必要なこと 名前解決における委任の重要性 名前解決の仕組みがもたらすメリット 実際のインターネットにおける委任関係 名前解決の…

実践Terraform ch10 バッチ

nextpublishing.jp バッチ設計 ECS Scheduled Tasks タスク定義・コンテナ定義 CloudWatch Events CloudWatchイベントIAMロール CloudWatchイベントターゲット バッチ設計 エラーハンドリング 通知 ロギング リトライ 自動 手動 リトライできるように設計さ…

実践Terraform ch9 コンテナオーケストレーション

nextpublishing.jp ECSの構成要素 ECSの起動タイプ Webサーバーの構築 ECSクラスタ(Fargate) タスク定義 ECSサービス コンテナの動作確認 Fargateにおけるロギング CloudWatch Logs ECSタスク実行IAMロール Dockerコンテナのロギング github.com ECSの構成要…

実践Terraform ch8 ロードバランサーとDNS (2/2)

nextpublishing.jp Route 53 ドメインの登録 ホストゾーン DNSレコード ACM: AWS Certificate Manager SSL証明書の検証 (DNSによる) HTTPS用ロードバランサー HTTP->HTTPSリダイレクト ここまでに作ったリスナー リクエストフォワーディング ターゲットグル…

party parrot亜種のGIFアニメを作った

発端 SVG Party Parrot (SMIL Animation)https://t.co/YQXGXQTEWUSVGでParty Parrot作ってアニメーションしたらさぞ綺麗だろうな~と思ったらすでにあって爆笑した pic.twitter.com/h5FQIO6Kjg— ですわ(D. Horiyama) (@wand_ta) 2020年3月8日 こうなった pic…

DNSがよくわかる教科書 ch2

www.sbcr.jp レジストリとは IPアドレスとドメイン名の管理の違い レジストリの役割 Column: ドメイン名のライフサイクル レジストリとTLDの関係 ドメイン名と商標権 レジストリ・レジストラモデルとレジストラの役割 レジストリ・レジストラモデル レジスト…

実践Terraform ch8 ロードバランサーとDNS (1/2)

nextpublishing.jp HTTP用ロードバランサー リスナー 【追記】terraform destroyでハング github.com HTTP用ロードバランサー resource "aws_lb" "example" { name = "example" load_balancer_type = "application" internal = false idle_timeout = 60 enab…

実践Terraform ch11 鍵管理

nextpublishing.jp KMS: Key Management Service KMS: Key Management Service 公式/AWS Key Management Service の概念 AWS KMS カスタマーマスターキー (CMK) を使用して、データキーの生成、暗号化、復号化を実行する CMKで直接暗号化・復号化は行わない …