LoginSignup
2
1

More than 3 years have passed since last update.

Kubernetes the hard way を初学者目線で解説する ~ #11 Podネットワークの構築

Last updated at Posted at 2021-01-16

はじめに

30代未経験からエンジニアを目指して勉強中のYNと申します。
インフラ初学者の私ですが、Kubernetes the hard wayを進めるにあたって、インフラに関する基本的な知識を体系的に学ぶことができました。
そこで、初学者目線での学びなどを本記事にまとめておきたいと思います。

目次

こちらをご覧ください

CNIとDNSアドオンによりノードを跨ぐPodネットワークを実現する

kubernetesクラスタの中のPodのネットワークは下記のようにkube-proxyCNIDNSが連携することで実現しています。

  • CNIはノードを跨ぐネットワークを築き、Pod間通信を可能にする
  • CNIによってPodに付けられたIPアドレスを、core-DNSで名前解決する
  • kube-proxyが展開するserviceに対して送られたリクエストを、どのPod宛に振り分けるかをkube-proxyが決定する

※ Podのネットワークについて、こちらの記事が分かりやすく解説しているので、ぜひ一読ください。

Kubernetesネットワーク 徹底解説

ここからは、下図のように、それぞれのworkerノードの中にstatic-Podとしてcore-DNSWeaveをデプロイし、ノードを跨ぐPodのネットワークを実現します。
スクリーンショット 2021-01-16 16.15.49.png

Provisioning Pod Network

CNIプラグインのインストール

worker-1.node/worker-2.node
wget https://github.com/containernetworking/plugins/releases/download/v0.7.5/cni-plugins-amd64-v0.7.5.tgz
worker-1.node/worker-2.node
sudo tar -xzvf cni-plugins-amd64-v0.7.5.tgz --directory /opt/cni/bin/

Weave-Podのデプロイ

master-1.node
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"

Deploying the DNS Cluster Add-on

master-1.node
kubectl apply -f https://raw.githubusercontent.com/mmumshad/kubernetes-the-hard-way/master/deployments/coredns.yaml
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1