Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kubernetes概要 / kubernetes_outline

yu-yama
January 31, 2019

Kubernetes概要 / kubernetes_outline

yu-yama

January 31, 2019
Tweet

More Decks by yu-yama

Other Decks in Business

Transcript

  1. 本日の内容 • Dockerとは(軽く復習) • Kubernetesとは – 機能紹介 – アーキテクチャ –

    どこで動かすか • まとめ 今日のゴール:kubernetesの概要を理解する 2
  2. Dockerとは • コンテナ型仮想化 – Dockerイメージを基にミドルウェア込み込みでアプリを起動する • 特徴 – ポータビリティ性が高い •

    アプリ動作環境丸ごと持ち運べる – 高速な起動・停止 – Infrastructure as Code – Immutable Infrastructure 4
  3. コンテナ型仮想環境運用の課題 • 複数のDockerホストの管理 • どのDockerホストにコンテナを立ち上げるか • コンテナのデプロイ方法 • 複数のコンテナ間の連携 •

    コンテナの死活監視 • コンテナの保持するデータの管理 • 外部ネットワークからコンテナへのアクセス経路の設定 6
  4. 7 # alpine 3.7ベースのgolang 1.10.1のイメージをベースとして使用 FROM golang:1.10.1-alpine3.7 # 8080ポートを外部に公開 EXPOSE

    8080 # ビルドを行うマシン上のmain.goファイルをコンテナにコピー COPY ./main.go ./ # コンテナ内でコマンドを実行 RUN go build -o ./go-app ./main.go # 実行ユーザをnobodyに変更 USER nobody # コンテナ起動時に実行するコマンドを定義 ENTRYPOINT ["./go-app"] Dockerfile例
  5. Kubernetes • 読み方 – クバネティス、クバネテス、クーベルネティス、ク ーバネティス • 略記 – K8s

    • ギリシャ語で「船の舵取り」 • 開発言語 – Go • Google製OSSで、現在はCNCFがメンテ 9
  6. Kubernetesの競合 • Docker Swarm • Apache Mesos • Rancher Labs

    Cattle • DC/OS(Data Center Operations System) • 現時点デファクトはKubernetes 13
  7. Kubernetesをどこで動かすか 1. オンプレ上に構築 – 構築ツールがある (kubeadm, Rancher) 2. クラウド上のマネージドサービスを利用する 1.

    Google Kubernetes Engine (GKE) 2. Azure Kubernetes Service (AKS) 3. Elastic Container Service for Kubernetes (EKS) • 上記いずれもマスターノードが複数のアベイラビリティゾーンに配置され ており、可用性を確保している 24