Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications onKubernetes to Achieve Both Frequent Updates and Stability

恥ずかしながら、わたしは雰囲気で kaniko にコンテナイメージのビルドをしてもらっていることに気づきました。1年以上GitLab CI で kaniko を使っておきながら、ただ「特権コンテナを使わずにイメージつくれるやつ」くらいの認識しかしていなかったです。 続きの記事: Kanikoでcache=trueにするなら1コンテナ1ビルドで kaniko の cache=true オプション kaniko には --cache というフラグがあり、これを true にすることでコンテナのビルド時にキャッシュ保存するようになり、次回以降のビルドではそのキャッシュを使用するようになるため、コンテナイメージのビルド時間を短縮できます。 キャッシュは、コンテナレジストリ上に destinationのイメージリポジトリ名/cache というイメージリポジトリ名で格納されます。例えば gcr.io

はじめにPID 1 問題というのは、コンテナを実行した際にアプリケーションのプロセスが PID 1(プロセス番号が1番)で実行されることで、コンテナに対して SIGTERM などのシグナルを送信してもコンテナ内のプロセスが正常に終了しないというものです。ここでは2020年3月現在でこの PID 1 問題を回避する方法をDocker とKubernetes のそれぞれで紹介します。 TL;DRアプリケーションが「明示的にシグナルをハンドリングするようにする」、または「PID 1 で実行されないようにする」の2つの回避策があるアプリケーションプロセスが PID 1 で実行されないようにする場合、Docker では Tini のような軽量 init を使う、もしくはDocker 1.13 以上の場合はdocker run の --init オプションを使うで問題を回避できるKuberne

はじめに 今朝に書いたブログが思ったより反響が大きくて、「Dockerが死んだ」という勘違いをされている方も多かったので追加でエントリーを書きました。blog.inductor.me 決してそんなことはないので、対応が必要なケースを見ていこうと思います。 はじめに 対応が必要ではないケースKubernetesを使わない人たち本番はKubernetesでも、開発にDocker Composeを使っているデベロッパーの開発環境 対応が必要なケース 開発環境でも手元でKubernetesを利用する人たち NVIDIADockerをKubernetesで使っている人たちKubernetesワークロードの中で「Docker inDocker」や「DockerAPIに依存した処理」を動かしている場合Dockerの機能を使ってこれまでやっていたことについて 対応が必要ではないケース Ku

The differences betweenDocker, containerd, CRI-O and runc Containers run using a complex stack of libraries, runtimes,APIs and standards. The explosion in containers was kicked off byDocker. But soon afterwards, the landscape seemed to explode with tools, standards and acronyms. So what is ‘docker’ really, and what do terms like “CRI” and “OCI” mean? Should you even care? Read on to find out. S

The document discusses performance tuning forJava applications running onKubernetes,emphasizing the importance of JVM settings, including garbage collection tuning and resource allocation. Key recommendations include configuring JVM memory limits, selecting the appropriate garbage collector based on workload type, and understanding the effects ofCPU throttling in aKubernetes environment. The
先日Japan Container Days v18.12の基調講演で話をさせていただく機会があった.内容としてはMercari のMicroservices Platformの基盤として「なぜ」Kubernetesを選択したか?ついて現状や今後の展望を踏まえて紹介をした. Microservices Platform onKubernetes at Mercari 「なぜ」の回答としては,CRDやAdmission webhookといった拡張機構を使うことで今後起こりうる様々なWorkloadに特化したPaaSや抽象化レイヤーを書いていけるExtensibilityの高さとそのBuildingBlockとしてのEcosystemの強さを挙げた. このトークのExtensibilityの文脈で話したくて時間がなかったのが「Kubernetesがいかに我々の自動化に対する考え方を変えたか
yaml、どうしてこんなに使われているのだろうか。kubernetesにも責任があるというのはありそうな話だけど、色々考えてみるとそこまで簡単な話でもなさそうな気がする。例えばtravis-CIの設定ファイルがyamlであったりというように、この分野ではyamlは割と広く使われていたんじゃないかという気がする。思い起こせばGoogle AppEngineもapp.yamlに設定を書いていたし、設定にyamlというのは割とよくあることであった、のではないかなあ。 しかしなぜyamlなんだろうか。yamlのフォーマットには問題がたくさんあることが知られているし、自分も全く好きではない。 例えばyamlの問題の一つとして、キーに任意のデータ構造を持ってこれるという話があり、これが一部のプログラミング言語で問題を厄介にしている。またエイリアスがあってデータ構造がツリーにならない(複数の経路から同じ

つくって学ぶKubebuilder本資料ではKuberbuilderを利用してカスタムコントローラー/オペレーターを開発する方法について学びます。 Kubebuilderとは Kubebuilderは、Kubernetesを拡張するためのカスタムコントローラー/オペレーターを開発するためのフレームワークです。Kubernetesでは、標準で用意されているDeploymentやServiceなどのリソースを利用することで、簡単にアプリケーションのデプロイやサービスの提供ができるようになっています。 さらに標準リソースを利用するだけでなく、ユーザーが独自のカスタムリソースを定義してKubernetesを機能拡張することが可能になっています。 このカスタムリソースを扱うためのプログラムをカスタムコントローラーと呼びます。 また、カスタムコントローラーを利用して独自のソフトウェアのセットアップ
SREチームの長田です。 今回はカヤックで運用している「まちのコイン」というプロダクトのアプリケーション基盤をAmazon EKS(以下EKS)からAmazon ECS(以下ECS)に移行したはなしをします。 まちのコインとは coin.machino.co www.kayac.com まちのコインはカヤックが運営している、デジタル地域通貨を使ってその地域のコミュニティを活性化させるサービスです。 2019年11月から実証実験を開始し、翌年2月から正式リリースされました。2022年9月現在、20の地域に導入されています。 一般ユーザーが使用するクライアントアプリと、導入地域の運営団体が使用するブラウザ用の管理画面、 それらにAPIを提供するRailsサーバーアプリがあります。 データベースはAmazonAurora PostgreSQL、 その他AWSのマネージドサービスを組み合わせ

The content of this page hasn't been updated for years and might refer to discontinued products and projects. Enterprises often use multi-tenant and heterogenous clusters to deploy their applications toKubernetes. These applications usually have needs which require special scheduling constraints. Pods may require nodes with special hardware, isolation, or colocation with other pods running in the

2022/06/13に「ニコニコ生放送 WebフロントエンドのKubernetes移行ハンドブック2022」を公開しました。本発表で…

Kubernetes Meetup Tokyo #52 で使用したスライドです。Kubernetes において、Zone や Region の単位で Node をグループ分けしたものをTopology と呼びます。Topology は故障ドメインとしての側面を持つため、可用性の観点から見ると …

リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く