Slide 1

Slide 1 text

Cloud Native Developers JP Kubernetesでアプリケーションが 動くまで @hhiroshell 1

Slide 2

Slide 2 text

Cloud Native Developers JP お品書き • アプリケーションを動かすための追加の予備知識 • 実際にやってみます 2

Slide 3

Slide 3 text

Cloud Native Developers JP アプリケーションを動かすための 追加の予備知識

Slide 4

Slide 4 text

Cloud Native Developers JP コンテナレジストリが必要 • コンテナレジストリから取得する • プライベートのレジストリを使うことも可能 k8sクラスター >_ kubectl (CLI) コンテナ レジストリ > kubectl run …

Slide 5

Slide 5 text

Cloud Native Developers JP クラスター外からアクセスできるようにする方法 • クラスター外からPodにアクセスできるようにするには、用途に応 じて何通りかの方法がある – apiserver経由でのアクセス – ServiceのNodePortタイプ – ServiceのLoadBarancerタイプ – Ingress (beta)

Slide 6

Slide 6 text

Cloud Native Developers JP APIサーバー経由でのアクセス • kubectlをproxyとして稼働させて、認証なしのAPIエンドポイントへ の経路を構成 • 所定のAPIエンドポイントにリクエストを投げるとPodに届く • 主な用途はDashboardや監視ツール(Grafanaなど)へのアクセス k8sクラスター kubectl > kubectl proxy … >_ apiserver リクエスト

Slide 7

Slide 7 text

Cloud Native Developers JP ServiceのNodePortタイプ • 対象のPodにルーティングされる口を、各Node上に構成する • ポート番号は、各ノードで共通 クラスター外から のリクエスト 172.17.8.104 172.17.8.103 172.17.8.102 172.17.8.104:30159 172.17.8.102:30159 172.17.8.103:30159

Slide 8

Slide 8 text

Cloud Native Developers JP ServiceのLoadBalancerタイプ • GCP, AWS, Azure上のロードバランサーを自動構成 • クラスター内にはNodePortまたはClusterIPと同等のServiceを構成 クラスター外から のリクエスト LB

Slide 9

Slide 9 text

Cloud Native Developers JP Ingress • Webフロントとしての構成情報を設定するオブジェクト • ロードバランシング、SSL/TLS終端等の機能を提供 • 実際の動作を担う実態は、別途ReplicationControllerとしてデプロ イする必要がある – 例えば、NGINXを利用した、NGiNX Ingress Controllerがある • Betaなのでご注意(Kubernetes 1.9の時点)

Slide 10

Slide 10 text

Cloud Native Developers JP それではやってみます! もう一息…!

Slide 11

Slide 11 text

Cloud Native Developers JP 今からやる作業のチュートリアルを公開済みです • 「KubernetesでWeb-AP-DBの3層アプリケーションが動くまで」 – https://qiita.com/hhiroshell/items/5e81cac3e9c059029837 – または[ qiita kubernetes 3層 ] くらいで検索するとトップに来ます 11

Slide 12

Slide 12 text

Cloud Native Developers JP 12 Fin