Kubernetes上のアプリケーションをtcpdumpでデバッグする

2021-01-31

こんにちは、もーすけです。休日はもっぱら住宅購入の検討で忙しいマンです。
さて、本日は、Kubernetesのアプリケーションのデバッグに関して書きます。

Kubernetesで運用中のアプリケーションの障害対応で、ネットワーク関連のデバッグをしたいことはよくあります。 このブログでは具体的にtcpdumpを取得したいという場面を想定して書きます。 コンテナアプリケーションの開発・運用をしていると、イメージのサイズを小さく保っておきたいと思うはずです。 その理由についてはいろいろとありますが、イメージの展開のスピードを高めることで、デプロイや障害時の復旧を早めるなどが代表的なところです。(関連するトピックとして「コンテナイメージを軽くする方法と、その原理原則を考える」も読んでみてください。)

それゆえに、アプリケーションの動作に必要なライブラリ以外は入れないことが多く、デバッグツールを除外しておくことが多いでしょう。 しかし、障害発生時にいざtcpdumpやstrace, ping ,digなどを打ちたいと思ってもインストールされておらず困ることがあります。 そんな場面に遭遇しても焦らないようにあらかじめ対応策を頭に入れて練習しておきましょう。

続きを読む

分散システム構築の良書「データ指向アプリケーションデザイン」を動画で解説する

2021-01-24

あけましておめでとうございます(いまさらw)。もーすけです。
最近は呪術廻戦にハマっています。ぜひまだ見てない方見てみてください!

さて本題ですが、新年はじめの投稿はデータ指向アプリケーションデザインという書籍についてです。 最近読んだ中で一番良かった本ではないかと思っています。 実は、勤めている会社内でこの書籍の輪読会を行っていて、自分が12章(最終章)を担当しました。 12章はこの本の一番言いたいことが書いてある章でもあったので、本の魅力を理解してもらうのにもしかして役立つのでは!?と思い、この書籍の紹介しつつ、輪読会で発表した内容を動画で解説していきたいと思います。

続きを読む

「絆」2020年振り返り

2020-12-31

@mosuke5です。2020年もあっという間に終わりを迎えてしまいました。
毎年恒例の振り返りブログも7回目となります。今年はコロナで3月からずっと在宅勤務だったので、どこかに行ったという思い出は当然ながら少ないですが、こういう状況だからこそできたことや心の変化などもありました。 そのあたりを振り返りながらまとめてみたいと思います。

過去の振り返りブログ

気になる過去の振り返りはこちらです。

続きを読む

OpenShift on NVIDIA GPU(導入編)

2020-12-17

こんにちは、もーすけです。
今回は前回に続き、OpenShiftにGPUのノードを追加して利用する方法(導入編)として書いていきます。 インストールの細かな方法については英語ですが公式ドキュメントに譲るとして、実行していくにあたってのポイントなどを経験者としてまとめておきます。 概要編につきましては以下をご覧ください。

続きを読む

OpenShift on NVIDIA GPU(概要編)

2020-12-16

こんにちは、もーすけです。
本日はOpenShiftにNVIDIA GPUのノードを追加して利用する方法2つのブログ(概要編と導入編)に分けて紹介したいと思います。 あまりまだ日本語での情報がないので、挑戦したいと考えている人の参考になればと思います。 また、非常に進化が速く、情報が古くなる可能性もあります。なるべく更新していきたいと思っていますが、最新情報は公式情報をみてください。。 導入編では、OpenShiftを取り扱いますが、他のKubernetesディストリビューションをお使いの方も参考になるところはあると思います。

続きを読む

P2Pでコンテナイメージを配信できるDragonflyとAlibaba Cloudのなぞ

2020-12-02

こんにちは、もーすけです。
ここ最近、ワケアッて少しAlibaba Cloud関連のKubernetesについて調べています。 ちなみにこちらの記事はAlibaba Cloud Adovent Calender 2020の2日目の投稿です。

Alibaba Cloudの中の人をやめて、もう1年半以上たちますが、まだこうやって調べるとは思わなかったです。いまになっていろいろAlibaba Cloudが取り組んでいるコンテナ関連のことがよく理解できるようになってきました(笑) 本日はアリババ/Alibaba Cloudが開発するP2Pのファイル配信ソフトウェアのDragonflyについて少し書いてみたいと思います。(まだ調べ中のところもあるので許してください)

Dragonflyとは

Dragonflyは、アリババおよびAlibaba Cloudがメインとなって開発している、オープンソースのP2Pファイル配信の仕組みです。
よくコンテナイメージの配信のためのソフトウェアといわれることもありますが、実態はコンテナイメージだけでなく、どんなファイルにも活用できるものです。 コンテナ時代より前からアリババが研究していた効率的なアプリケーションの配布、キャッシュの配布、ログの配布、画像の配布がもとになっています。 現代のクラウドネイティブの環境になってコンテナイメージの配布にも活用されてきているということです。 その目標は、クラウドネイティブのシナリオにおけるすべての配布問題に取り組むことです。現在、Dragonflyは以下の点に焦点を当てています。

続きを読む

[Alibaba Cloud] KubernetesのProfessional managed clustersは何が違うのか?

2020-11-29

こんにちは、もーすけです。
Container Service for Kubernetes (ACK) では、新しくマネージドクラスタの中でサービスレベルを選べるようになりました。 Professional managed clustersというものです。 このクラスターは通常のマネージドクラスタと比べて何が違うのでしょうか? 調べてみたのでまとめました。

続きを読む

Docker Hubのダウンロード回数制限の対策を考える

2020-11-18

こんにちは。もーすけです。
今日は最近開始されたDocker Hubのイメージダウンロードの回数制限について書きたいと思います。 動向だけはなんとなく追っていたのですが、先日に自分がこの問題に向き合わなければいけないケースに遭遇したため、残しておこうと思い立ちました。

きっかけ

本ブログの記事のビルドやデプロイにはWeckerというサービスを利用しています。 ある日、記事を投稿しようとしたところCIのビルドがコケて記事を投稿できませんでした。 エラーは以下のとおりで、調べるとDocker Hubのイメージダウンロードの回数制限に引っかかっていることがわかりました。

fetch failed to pull image debian: API error (500): {"message":"toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit"}

docker-rate-limit-error

続きを読む

【翻訳】Kubernetes as a serviceの謎を解く。Alibaba Cloudが1万個のKubernetesクラスタを管理する方法

2020-11-17

※本記事は、著者であるZhimin Tangの許可をとって翻訳した記事となります。(原文)
また本記事の内容は、2020/12/11のAliEaters Tokyo #16にて発表しており、スライドは以下です。

概要

2015年以来、Alibaba Cloud Container Service for Kubernetes(ACK)は、Alibaba Cloud上でもっとも急速に成長しているクラウドサービスの1つです。今日では、ACKは多数のAlibaba Cloudの顧客にサービスを提供しているだけでなく、Alibabaの社内インフラストラクチャやその他多くのAlibaba Cloudサービスをサポートしています。

世界的なクラウドベンダーが提供する他の多くのコンテナサービスと同様に、ACKでは信頼性と可用性が最優先事項となっています。これらの目標を達成するために、セルベースでグローバルに利用可能なプラットフォームを構築し、数万個のKubernetesクラスタを稼働させています。

今回のブログ記事では、クラウドインフラ上で大量のKubernetesクラスタを管理した経験と、その基盤となるプラットフォームの設計についてご紹介します。

続きを読む

Googleアドセンス合格に必要なサイトのレイアウトについて

2020-10-17

こんにちは、もーすけです。
ふだんはあまりブログ運用のことは書きませんが、Googleアドセンスの合格について非常に重要な知見を得たのでまとめます。 ずばり、Googleアドセンスの合格には実は「サイトのレイアウトが重要である」ということです。

続きを読む