Developers Summit 2024「Kubernetesは怖くない!開発者のためのインフラトラブルシューティング入門」を見ました
2024/02/19
高橋 あおいさん
つくって、壊して、直して学ぶ Kubernetes入門という本を出版されるそうです。
面白そうです。
目次
Kubernetesの特徴を知る
- 障害発生時にコンテナの設定、復旧を簡単にする
自動で必要な数のコンテナを起動してくれる。 -
仕様の管理を簡単にする
マニフェストファイルで管理できる。 -
複数台サーバー上で起動先の決定を簡単にする
サーバー固有の設定を意識することなく、Kubernetes APIにより抽象化されている。
これらの特徴によりアプリケーションのデプロイを簡単に楽にできるのが、Kubernetes。
Kubernetesのアーキテクチャを知る
やわらかいタッチなのでとっつきやすい図ですね。
Contril Plane
コンテナの起動をコントロールするためのサーバー
* etcd データベース、設定など必要な情報が格納されている
* kube-apiserver kubectlのコマンドによる指示を受け取って処理してくれるAPIサーバー、etcdとやり取りをする
Worker Node
コンテナを起動するサーバー
Kubernetesで何が起きているか知る方法を知る
Kubernetesのコンテナログはkubectlで見れる。
永久保存できるものではないのでログ転送する仕組みもある。
基本のトラブルシューティングで使うコマンド
kubectl get <リソース名>
kubectldescribe <リソース名>
kubectl logs <Pod名>
Pod: コンテナを起動するための最小単位
ReplicaSet: Podの複数管理
Deployment: ReplicaSetを複数管理
Service: Deploymentで作成した複数Podへのアクセスを適切にルーティングする
- トラブルシューティングのコツ1 狭い範囲から調査していく
どのPodで起こっているかを切り分けていく。 -
トラブルシューティングのコツ2 仮説検証を繰り返していく
仮説に対して確かめる、これを繰り返す
デモ
デモの再現環境
https://github.com/aoi1/developers-summit-2024
シナリオ
「hello-serverが通信できなくなったみたい」
現物から調査する必要がある
kubectl get pod –all-namespaces
kubectl describe pod <Pod名>
などを使用して
「hello-server:1.3 not found」にたどり着いた。
DockerHub見たら、本当に1.3が抜けてるんですね。
https://hub.docker.com/r/blux2/hello-server/tags
Deploymentをhello-server:1.2に修正してデプロイし直して確認。
まだつながらない。
さらなる調査を進めたらselectorが「hello-serve」となっていて、最後のrが抜けていることがわかったので、修正して再デプロイ。
これでやっとつながりました。
という実演でした。
Amazon EKSでクラスター作って試してみます!
感想
トラブルシューティングから理解が深まることって、どんな技術でもよくありますよね。
ハンズオンはうまくいくより、ひっかかったほうがトラブルシューティングで理解が深くなったり。
手順がちゃんとなってないからこそ、周辺のプロパティについても知れたりします。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
Developers Summit 2018 「本番環境で使うContainer – Amazon ECS, AWS Fargate, Amazon EKS」を聞きました
※写真は展示のAmazon Echo とルンバです。 以下は、思ったことや気にな …
-
-
「DevLOVE関西 ShareWisサービス開発の現場」に行ってきました
DevLOVE関西とは 「DevLOVE関西は素振りの場、現場は実践の場」 いつ …
-
-
「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう!」に行ってきました
「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう! 」 …
-
-
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio Studioとkintoneで電話受付システムをつくろう」に行ってきました
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio …
-
-
VUIがもたらすUXの不可避な流れを感じた日
「INEVITABLE ja night インターネットの次にくるもの 第 4 …
-
-
ヤマムギvol.22 EC2のLinuxでエディタとかのデモをしました
ゴールデンウィーク10日連続朝30分のデモチャレンジ10日目最終日でした。 ご参 …
-
-
ヤマムギvol.18 AWS CloudFormationのデモをしました
ゴールデンウィーク10日連続朝30分のデモチャレンジ6日目です。 90名さんもの …
-
-
JAWS DAYS 2022で大阪サテライトスタッフ、サポーターセッション登壇、懇親会LT登壇しました
2022/10/8(土) JAWS DAYS 2022で大阪サテライト会場のスタ …
-
-
「Kansai WordPress Meetup@大阪『サイトの作り方 3種おさらい&祝☆誕生20周年』」に参加しました
WordPress Meetupにはじめて参加しました。 WordPressの勉 …
-
-
JBUG(Japan Backlog User Group) 記念すべき大阪開催の勉強会1回目に参加しました
JBUGが我らがマイタウン大阪で開催されるとのことで、お久しぶりのTAMさんにお …


