タグ

ブックマーク / blog.father.gedow.net (39)

  • エンジニアの成長における過去と現代の違い | 外道父の匠

    自身の過去の成長過程と現在の環境を思い浮かべたときに、得やすいもの得づらいものの違いを強く感じ、良好な成長のために一考してみた次第です。 といっても既にある Tweet のセルフまとめに、思い出と昔話なポエムを追加したようなチラ裏回です。 時代の変遷によるステータス変化 要約すると、現代は技術力の向上に必要な環境と既定路線があって向上速度が早いのに対し、昔(2010年以前とか)は頭を悩ませまくって乗り越えるべき壁が大量にあったおかげで解決力は相当鍛えられたよねってところ。 個人的には誰であれ、今!自分が!解決しないと!詰んでしまう!! てかもう詰んでるだろコレ!!!! って状況でひたすら悩んでから、寝て起きたら解決したよぉ!みたいのを体験してほしいし、一度は死の淵まで行ってこいって思っている — 外道父 | Noko (@GedowFather) July 17, 2024 これについて、

    エンジニアの成長における過去と現代の違い | 外道父の匠
  • AWS 新CPU Graviton4 の性能検証 | 外道父の匠

    公式の説明による大きな変化点は、 Graviton 2 → 3 の時は、性能25%UP で費用6%UP、Network/EBS 帯域幅が向上、 Graviton 3 → 4 では、性能30%UP で費用10%UP、最大スペックが3倍、 に加えて、細かいところでも色々少しずつ向上しているという感じです。 特にスペック3倍は、データベース用途におけるスケールアップが強力で、一時的な緊急負荷対策としても強いし、クラスタデータを3分割するくらいなら1クラスタで分割なしで貫けばいいじゃない、など安定と選択の幅が広がるのは間違いないでしょう。 ベンチマーク それでは、疑り深い外道父さんによる、いつもの Phoronix による検証です。 今回は R系 という点と、あまり古いのと混ぜると共通成功テスト数が減ってしまうことから、R6g, R7g, R8g での比較としています。C7i 以前なども知りたけれ

    AWS 新CPU Graviton4 の性能検証 | 外道父の匠
  • これからはじめる Azure の基礎知識 | 外道父の匠

    まいど AWS の犬が、少々 Azure に触れてみましたので、絵は描かずに基礎知識の整理と共有だけしていきたいと思います。 全然ド素人な状態なので、なにかしら間違ってたり不足していると思われますが、同じようにイチから調べる人の足がかりにでもなれば、くらいの質感で進めていきます。 はじめに 今のところ少々用事があっただけなので、これから Azure を掘り下げるぞとか、Azure の犬になるぞ、とかは考えていなく一発ネタで終わる可能性が高いです。雑なメモをブログに起こして、いったんの区切りとする個人的な清書のため、詳しくはちゃんとリンク先のドキュメントなどを読んでくださいませ。 さて、AWS に似たパブリッククラウドはいくつもあり、Azure もその1つです。公式ドキュメントに何箇所も AWS との比較が出てくるくらいには、Azure も AWS を意識しています。 例)AWS サービスと

    これからはじめる Azure の基礎知識 | 外道父の匠
  • インプットのすゝめ | 外道父の匠

    絶賛成長期にあるだろう若手エンジニアは、どういう流れで自身の成長を促したら良いのだろうか、とふと思いつつ口頭で説明してみたけどよくわからんくなったので整理してみたいお気持ちです。 当ブログではアウトプットの効用みたいなものは書いてきましたが、インプットそのものについてはお初なので、自身を振り返る良い機会にもなりそうです。 はじめに これは私が二十数年間、プログラマー・インフラ・SRE といったエンジニアとして通ってきた中で、どのようにインプットをしてきたかを整理してみるチラ裏です。 自分は一般(?)と比べれば少々特殊な経歴で、情報学を学んだことも、新卒研修を受けたことも、IT系資格も、転職したこともない…… ほぼ独学による野良エンジニアとして生息してきましたので、あまり参考にはならないかもしれません。 それでも一応長く生き抜いてきたエンジニアの経験として、インターネットに数多くある参考例の

    インプットのすゝめ | 外道父の匠
  • AWS VPC のネットワーク小話~Public/PrivateとIPv4/6~ | 外道父の匠

    日々何気なくお世話になっている VPC 含むネットワークは、ちゃんと理解しようとすると思ったより多い情報量と、それに対するパターンの経験が必要になります。 私自身、正直ネットワークのお話は好きじゃないのですが、現行の事情を踏まえてこの辺の基と雑学を振り返っておくと、技術力のベースが整ってよろしいのではと思って整理することにしました。 はじめに 新年度なので、学習教材シリーズです。今回はネットワーク周りで、基礎に味付けするような内容です。もしかしたらお嫌いなジャンルでしょうか、でも少しだけやりましょうそうしましょう。 関連情報としては、このあたり。 公式 ENOG81: AWSIPv6とPublic IPv4のおはなし – Speaker Deck Amazon VPC とは? – Amazon Virtual Private Cloud 外道父の匠 AWS VPCルーティングの基から

    AWS VPC のネットワーク小話~Public/PrivateとIPv4/6~ | 外道父の匠
  • AWSが教えてくれないコスト削減の小話いろいろ | 外道父の匠

    米ドル/円 が150円と計算しやすくなり、コスト削減の圧力が日々強まる中、皆様お宝探しと垂れ流し回収の真っ最中でございましょうか。 最近はコスト削減や予算について見ることが多いので、その中で出てきた面白げな話に雑談を加えてとりとめなく書いてみようと思います。 削減余地はある 昨年にご好評いただいた AWSコスト削減とリソース管理 | 外道父の匠 を含め色々な削減施策を試みてきましたが、サクッと成果になる箇所から泥沼に動かない所まで様々あったりします。 ただ、どんなアカウントでもトラフィックや処理負荷には波があり、それに対する余剰リソースを確保して構成しているので、その辺をキュッと絞ることまで含めればやれることは必ず一定以上存在することになります。 そういう大きなお宝ではない小さなお宝だと様々あり、古びたとか退職者が作ったとかで、ほぼ使っていない垂れ流しリソースやデータをかき集めれば、チリツ

    AWSが教えてくれないコスト削減の小話いろいろ | 外道父の匠
  • AWSコンテナ系アーキテクチャの選択肢を最適化する | 外道父の匠

    これまでもコンテナ関連の記事はそれなりに書いてきましたが、改めて最新事情に合わせて練り直したり見渡してみると、大きなところから小さなところまで選択肢が多すぎると感じました。 コンテナ系アーキテクチャを丸っと他所の構成で真似することって、おそらくほとんどなくて、参考にしつつ自分流に築き上げていくでしょうから、今回は築くにあたってどういう選択肢があるのかにフォーカスした変化系で攻めてみようと思った次第です:-) 目次 今年一発目の長いやつです。半分は学習教材用、半分は道楽なテイストです。 はじめに 基盤 インスタンス or コンテナ ECS or EKS on EC2 or FARGATE X86 or ARM64 ロードバランサー メンテナンス:ALB or ECS Service 共有 or 1環境毎 アクセスログ:ALB or WEBサーバー ECS / EKS デプロイ:Blue/Gr

    AWSコンテナ系アーキテクチャの選択肢を最適化する | 外道父の匠
  • Terraformのループ記法を基礎から学ぶ | 外道父の匠

    Terraform のコーディングにおいて、似た構成の複製をどのように表現するかは結構重要な課題です。放っておくと汚いコピペだらけになっていくからです。 色々な目的とやり方があると思いますので、その表現を実現するためのパーツにでもなればと思い、学習用教材的に書いてみるやつでございます。 目次 説明はそんなに多くないですが、コードのせいで縦長になったので目次を置いておきます。Terraform バージョンは v1.5.7 で動作確認しています。 単体の複製 count for_each セットの複製 module count + module 条件分岐 三項演算子 入れ子 ループ構造 for 複製の方法 階層構造 Pythonの入れ子ループ Terraform の入れ子ループ 続・階層構造 単体の複製 あるリソースに対して、単体の場合は count や for_each を使うことで、lis

    Terraformのループ記法を基礎から学ぶ | 外道父の匠
  • エンジニアの勉強と技術力と育児 | 外道父の匠

    仕事力と技術力と不安に関する雑文 | YuheiNakasaka’s Diary を読んで、自分も勉強とは技術力とはなんぞやと考えてみたくなったのでポエムです。 詰まるところ人それぞれではあるものの、考えることは少なからず良い方向に向かう、そう願いたいものです。 勉強とは 世の中にある意見として、エンジニアは生涯勉強だとか、強々エンジニアになるための勉強だとか、色んなモノを見かけます。そういう勉強に対する意見ってたいていネガティブな印象の内容が多く、なんだか迷走しているなぁという感想を持つことが多いです。 良い子ちゃん視点では、学ぶこと、その全てには意義がある、と言いたいところですが、こと仕事においては無駄な学びもあるし、将来無駄になる学びもあります。また、自発的かどうかでその効果は天地の差があるので、他人に向かってこれくらいやるべきとか言うことの意味は薄く、突き詰めると自己責任の範囲の話

    エンジニアの勉強と技術力と育児 | 外道父の匠
  • エンジニアは寛容かつ建設的でありたい | 外道父の匠

    前回の記事でイィ感じの燃え方してイラつきはしたけど、ちゃんと調べず適当に公開したのはマズかったし、どっちみちそれまで理解が浅かったのは事実で認識してたので、それはもういいんです。 それよりもなんで、昨今はこんなにクソコメが蔓延るようになったんやろって考えてみたくなりました。エンジニアに限らず、ジャンル問わず社会的な話でもあるのですが。 社会的な風潮 要は『叩く』という行為が流行を通り越して当然になってる風潮ですね。 エンジニア関連でも、昔から技術掲示板では、そんなことも知らんのかい!とツンツンしながらも教えてあげる文化みたいなものはありましたが、そういう『限定的な場』に自分から踏み入れない限りは、エンジニア同士の交流の多くは所属や個人サイトが判明している人だったりして、誤りや改善点があれば、スマートに指摘して、素直に受け入れる、ような流れが多かったように思います。 SNSが流行りだしてか

    エンジニアは寛容かつ建設的でありたい | 外道父の匠
  • AWS ALB+ACMの意外な落とし穴 | 外道父の匠

    全然たいした話ではないのですが、へーって思ったので記録しておきます。 ALB にて外部からの不正アクセスを塞いだ話になります。 はじめに注意 ※追記3 この記事は、知識不足な状態で始まり、知識不足なまま初出した未熟な内容であり、外部の助力によりそれが解決に向かう、という流れになっています。 調査環境がAWSだったために、タイトルがこうなっていますが、実際はALB+ACM単独の問題ではなく、SSL/TLS としての仕様の話になっている、 ということを念頭において、読んでいただければと思います。 ※追記3ここまで 構成と問題点 手動で作成された ALB → EC2 環境があって、ワイルドカードなACM を使って 0.0.0.0:443 のみ開いており、EC2 は Global からのアクセスは遮断してありました。 にも関わらず、不正系なHostヘッダでアクセスされた形跡があり、コイツどこから来

    AWS ALB+ACMの意外な落とし穴 | 外道父の匠
  • AWS Aurora MySQL Parallel Query の基礎研究 | 外道父の匠

    AWS Aurora MySQLには、高性能を期待できる Parallel Query という機能があります。 実際、良いモノっぽいのですが、非常に情報が少ないので私めがいつものように掘り下げて、お役に立てればという徳を積む行為であります。 目次 Parallel Query とは リンク集 速度比較 費用の仕組み 設定による有効・無効 有効にできない条件 Parallel判定されるクエリ 結合クエリ innodb_buffer_pool_size との関係 その他 実践では Parallel Query とは 詳しくは下記リンクを見たほうがいいのですが、頑張って要約してみます。 通常のDB処理は、データを可能な限りメモリ上に置いておいて処理しようとしますが、オンメモリじゃないデータはストレージから取得する必要があり、データ取得後はDB体における1スレッドがクエリ処理を行います。 Aur

    AWS Aurora MySQL Parallel Query の基礎研究 | 外道父の匠
  • SRE四大行 | 外道父の匠

    元々なんでも屋ってたけど、我が部署名もSREになったし、インフラエンジニアって書くと『IT』警察が寄ってくるからSREでいきましょう。短いのはイィ。 SREがやることは書籍『O’Reilly Japan – サイトリライアビリティワークブック』がほぼ語っていますが、もうちょっと噛み砕いて自分的にはこの四大行を軸に活動すれば、いっぱしのSREになれんじゃねっていう戯れであります。 SREのお仕事を大雑把に表現すると、サービス開発者が作成したアプリケーションを、動かす環境を用意し、安全・効率的に動かし続けることだと思っています。 IT業界の事情変化につれて、SREの重要性は高まる傾向にあり、それに伴いSREとして活動を希望する人材も増えたような、そうでもないような。気がするけど、SREとしてってく気ならこれら四大行が基であり奥義になるよって話です。 『構築』 アプリケーションを動かすための

    SRE四大行 | 外道父の匠
  • PythonでMySQLのスロークエリログを集計 | 外道父の匠

    久々に溜まったブログネタ放出をしようかなと、その前に下書きから掘り起こしてきた、いまさらなスロークエリ関連で準備運動です。 RDSのスロークエリ情報は当然、集計を自動化していつでも見れるようにしてあるのですが、ちょいと必要があったので、今回はあえて単発ログを集計する形に切り出したものを用意してみました。 スロークエリログの必要性 最近はNewRelicとかで、アプリケーションの処理を分別して処理時間などを集計するので、それで課題となるクエリを確認したりもします。 非常に便利な仕組みですが、アプリケーション外のジョブなどが実行したクエリは集計されないことや、負荷試験で課題を炙り出すときだとテスト環境にエージェントやライブラリを仕込む必要がある、といったデメリットとまでは言わないまでも面倒さがあります。 その点、スロークエリはサーバー側で記録するものなので、0.1秒とかでONにしておけば、対象

    PythonでMySQLのスロークエリログを集計 | 外道父の匠
  • AWS ECS Fargate のリージョン格差 | 外道父の匠

    前回が思いのほか反響があったので、インドカレーのナンの如くおかわりです。 今回は完全に蛇足っ……圧倒的蛇足っっ……です!同じことを他のリージョンで確認したら、どんなもんなのかという、おまえ暇ナンかと言わてれもおかしくないやつ、参りましょう。 おまえ暇なん……? 暇っちゃ暇。つーか、チャットとかで今忙しいですか?って話しかけられたら、俺はいつでも暇やでって応えるスタンスや。 元々趣味でやってるモンだから、休日にゲームしようか映画みようかエンジニアリングしようかって考えたときに、気になることがあったら先にやっちまうべき優先度が高いのがエンジニアリングってだけ。 こんなどーでもいい釈明をしたくなるくらいには、蛇足回……。 ……と思うやん? リージョン別CPUモデル とりあえず結果を見たらよいと思うやつです。選択したリージョンは基USで、一部適当にやってみただけです。 まずは出現CPUを、CPU

    AWS ECS Fargate のリージョン格差 | 外道父の匠
  • AWS ECS Fargate のCPU性能と特徴 | 外道父の匠

    ちょいとした用途において、カジュアルにFargateの起動/停止を繰り返して、気ままに負荷全開かけていたら、あまりの違和感にCPU割り当てについて調査することにしました。 最近こんなことばっかやってる気がしますが、気にわんかったからムカムカ解消に書くしかないんや。半分くらいブラックボックス与太話な感じで夜露死苦です。 はじまり とある処理を全開でFargateにやらせて、cpu=1024(100%), 2048(200%), 4096(400%) でどのくらい RPS (requests per second) でるかを計測していると、想定通りならほぼ比例でRPSが伸びるはずが、全然そうならないパティーンに遭遇。 並列過剰やエラー・バグ起因ではないことをほぼ確させた上で、まさかCPUガチャじゃあるまいなと試したら、まんまCPUガチャでしたということで、EC2からある話ではありますが、現在

    AWS ECS Fargate のCPU性能と特徴 | 外道父の匠
  • AWS ECS Exec を使ってみたTips | 外道父の匠

    ここ1ヶ月半くらい、ちょっとした独自システムを創っていたのですが、そこで編み出したテクニックを紹介してみます。 要はECS Execを使い込んだよってだけなんですが、こういうオモチャを使ったオモチャを作らせたら一級品の自負、ある。 ECS Exec の概要 基的なところは他に任せたいのでリンクだけ貼っておきます。 New – Amazon ECS Exec による AWS Fargate, Amazon EC2 上のコンテナへのアクセス | Amazon Web Services ブログ [アップデート] 実行中のコンテナに乗り込んでコマンドを実行できる「ECS Exec」が公開されました | DevelopersIO デバッグに Amazon ECS Exec を使用する – Amazon ECS 外からコマンドを実行できる旨味 ECSっていっても自分の中では Fargate の話にな

    AWS ECS Exec を使ってみたTips | 外道父の匠
  • 続・AWS Graviton2 の性能検証 | 外道父の匠

    なんと前回の続きになります、懐疑的な漢ですよろしくおねがいします。 半分は掘り下げるべき部分があったこと、もう半分は試験方法の最適化をしたくなった欲望によるものございます。 目的 検証の掘り下げ 前回の結論を要約すると、こんな感じだったのですが Good 😄 平均的な性能は第6世代(Graviton2)は第5世代より1割ほど高い 費用が第5世代より20%ほど安い 多数スレッド数になるほど性能を発揮するっぽい(情報収集より) Bad 😧 第6世代は処理の得手不得手の差が激しい 特に暗号化の性能が低い 第5から第6に切り替える場合、向上するかどうかは処理内容による 自分AWSの犬じゃないですけど、こう見ると期待が大きめだった分、少しネガティブな印象を残してしまったかなと。思ったので一部を深堀りすることで、もう少し特徴を捉えていくことにしました。 試験の最適化 前回はキレて Phoronix

    続・AWS Graviton2 の性能検証 | 外道父の匠
  • AWS Graviton2 新CPUの性能検証 | 外道父の匠

    C5が一歩抜けた強さの割に全部 ECU=10 な時点でアレですが、さらに6g系は該当なしです。で、費用的には c5/m5 の比率と c6g/m6g の比率は同じ 86% です。 第5世代では、C5 はメモリが少ない分、安くCPUが高速だったので強い選択肢でしたが、第6世代ではメモリが少ない分、安い。だけになるので、C系を選ぶメリットがだいぶ弱くなりそうです。 単純に、14%安くしてc6gにするって考えよりも、14%高くしてメモリ倍の方がよくねっていう。そういうパターンのほうが多いんじゃないかと、いうだけで全然絶対じゃないですけど。 考えようによっては、AutoscalingGroupに複数のインスタンスタイプを指定するとき、c6g, m6g, r6g と混ぜてもCPU使用率の格差がAZ以外で起きづらくなるだろうから、扱いやすくなると言えなくもない。 vs C5 あまりに差が付きすぎて、自分

    AWS Graviton2 新CPUの性能検証 | 外道父の匠
  • AWS API Gateway HTTPのAuthorizer設定 | 外道父の匠

    あけおめ☆ 年末年始を長期休暇にしたせいで、起ち上がりが悪い。エンジニアたるもの、そんな時はコーディングだ。Pythonでモチベーションを取り戻すんだ! その気持ちだけでクールなシステムを考案・構築してしまったので、書いていきたいんだけど、物事には順序がある。まずは HTTP API Gateway に認証をつけるとこから、ブログの暖機運転なのだ。 おさらいと公式 前に、API Gateway の基的な部分は↓↓に書きました。 AWS API Gateway v2 の Terraform構成 | 外道父の匠 AWS API Gateway v2 HTTPの基礎練習 | 外道父の匠 認証の仕組みがなかったので、まぁこんなこともできるよねって意味で、オレオレ認証も書いたんだけど、その後すぐに公式で対応されたわけです。 API Gateway HTTP APILambda および IAM

    AWS API Gateway HTTPのAuthorizer設定 | 外道父の匠