Gunosy Tech Blog

Gunosy Tech Blogは株式会社Gunosyのエンジニアが知見を共有する技術ブログです。

EKS

Datadog Agentがkubeletと疎通できなくてもAWS IMDSv2からhostnameを取得させる

こんにちは。プロダクト開発部 Ads チームの johnmanjiro です。普段は広告配信の API や管理画面を開発しています。 先日、EKS 上で動いている Datadog Agent のバージョンを更新した際、Pod の起動時に複数回 Restart するという事象が発生しました。この…

コンテナがバタバタ死んだ障害と恒久対策

こんにちは。部署が変わってプロダクト開発部の広告担当のUTです。 今回は障害が発生した経緯とその障害に対してどう対策したのかというところを紹介したいと思います。 概要 どのような障害が起こったのか 障害発生詳細 恒久対応 障害の原因 自動ロールアウ…

Istio Operatorやめました

はじめに 用語 なぜIstio Operatorをやめるのか IstioctlかHelmか Istio Operatorの挙動 既存のリソースをHelmに認識させる リソースを消さずにIstioOperatorを消すには istio-operatorが利用しているラベルを剥がしてから消す あらかじめistio-operatorを止…

EKS 更新を始める前に確認しておきたい事前知識

EKS

はじめに EKS のバージョン更新時のメンテナンスは必要? Kubernetes は何をする? バージョン更新時に考慮すべきこと 1. Manifests のサポートが切れる 2. Helm などで導入しているサードパーティのサポートが切れる 3. EKS Addons 具体的な対応内容例 4. A…

マイクロサービスにおけるAZ間通信のコスト大幅削減した話 with Istio Locality Load Balancing

広告技術部のUT@mocyutoです。 大幅コスト削減シリーズ第二弾です。 前回はこちら tech.gunosy.io 今回はアベイラビリティゾーン(AZ)間通信のコストをIstioのlocality load balancingを使って削減した話になります。 概要 Istioとは どのようにコスト削減…

管理画面にGitOpsを導入しました 〜GitOpsとは編〜

はじめに 管理画面の課題 GitOpsとは Push型 Pull型 なぜPush型よりPull型なのか Push型のデメリット Pull型のメリット GitOpsにおけるPull型の構成 GitOpsで課題は解決されるのか まとめ 参考リンク はじめに こんにちは。広告技術部のjohnmanjiroです。普…

ゼロダウンタイムでPodをロールアウトする

先日GunosyAdsの管理画面をEKSに移行したのですが、Podのロールアウト時に5xxエラーが発生するという問題に当たりました。その際にダウンタイムなしにPodをロールアウトするための設定について調べたので、この記事ではそのことについてまとめようと思います…

EKS Managed Node Groupでカーネルパラメータを変更する

21卒広告技術部のyamaYuです。 マトリックスの新作が楽しみです。 過去作を見返さなくてはと思いつつこの記事を書いています。 個人的には第一作が一番好きです。 さて、こちらの記事はGunosy Advent Calendar 2021の15日目の記事になっています。 昨日は村…

Gunosy のデータ活用を支える統合データ基盤 Baikal の話

はじめに Baikal について Baikal を支える技術と工夫 AWS アカウント Terraform ワークフロー基盤 Athena Lake Formation アーキテクチャ Extract & Load データ生成元 AWS アカウントにある RDS からデータ抽出 データ生成元 AWS アカウントにある DynamoD…

10倍スパイクの速報時に耐えうるAPIのスケーリングの仕組み

広告技術部のUT@mocyutoです Gunosyではニュース記事を配信運用するメディア部門とアプリ上などに広告を配信運用する広告部門があります。 (本記事では「メディア」とはグノシーやニュースパスなどのサービスを指し、「広告」はそのメディアに出す広告を指…

既存システムをkubernetesに移行して大きくコストカットした話

この記事は Gunosy Advent Calendar 2020 の 20日目の記事です。 広告技術部のUT @mocyuto です。 チームの話 移行への決断 実際の移行 移行先のアーキテクチャ 移行の際ハマったところ 各種新規機能投入 移行後のコスト推移 まとめ 今回は既存システムをイ…

TerraformでLaunch Templateを使ったManaged Node Groupを導入する

この記事はGunosy Advent Calendar 2020の9日目の記事です。 前回の記事は大関さんの「ゼロから始めるEKS事始め(後編)」でした。 EKS関連の内容が続きますが、仕込みじゃありません! tech.gunosy.io はじめに Managed Node GroupでLaunch Templateを使う …

ゼロから始めるEKS事始め(後編)

本記事は、Gunosy Advent Calendar 2020 8日目の記事です。 前回の続きとなります。 tech.gunosy.io 今回は後編として、実際にEKSクラスター構築の途中からアプリをデプロイする環境を整える流れをご案内し、最後に運用管理フェーズで必要となるであろうオス…

ゼロから始めるEKS事始め(前編)

本記事は、Gunosy Advent Calendar 2020 7日目の記事です。 前回は、しゅんけー君の「その実験、再現できますか?pyenvとpoetryによる “そんなに頑張らない” 再現可能な実験環境構築」でした data.gunosy.io はじめに 前提条件 目指すクラスター像 使用する…

AWS Node Termination Handlerの新機能について

はじめに こんにちは。SRE部の板谷(@SItaya5)です。 Gunosyでは様々なプロダクトでEKS(Amazon Elastic Kubernetes Service)を運用しています。 Worker Nodeはスポットインスタンスを含めたEC2をASG(Auto Scaling Groups)で管理しています。 そのため、インス…