SlideShare a Scribd company logo
1 of 14
Amazon EKS への道 ~番外編~
青柳 英明
2018/06/09
JAWS-UG 大分 「クラウトのチャンスに出会おう!」 LT
祝GA! EKS を触ってみた
自己紹介
青柳 英明
職業: インフラSE(オンプレOnly)
経歴: アプリケーション開発 … 3年
インフラエンジニア … 17年
AWS歴:
JAWS-UG歴:
… 約2年
コアメンバー:
JAWS-UG福岡
Fukuoka.NET
(ふくてん)
Amazon EKS とは?
ECS … Elastic Container Service
→ AWS上でコンテナ(≒Docker)を使うためのサービス
EKS … Elastic Container Service for Kubernetes
→ ECSを 「Kubernetes」 に対応させたサービス
Kubernetes
→ コンテナオーケストレーション(管理)ソフトウェアの業界標準
もう少し詳しく知りたい人は・・・
https://www.slideshare.net/HideakiAoyagi/amazon-eks
「Amazon EKS への道 ~入門編~」 (JAWS-UG福岡#6)
EKS 環境構築の流れ
1. EKSのクラスタ(=Control Plane)(=Master Nodes)を作成する
(1) EKSサービス用のIAMロールを作成する
(2) EKSクラスタ用のVPCを作成する
(3) EKSクラスタを作成する
→ CloudFormation (サンプルあり)
→ コンソール or CLI
2. 作成したEKSクラスタへkubectlで接続する
(1) kubectlの設定ファイルを記述する (エンドポイント、認証情報)
(2) 作成したEKSクラスタに対してkubectlで接続できることを確認
EKS 環境構築の流れ
3. EKSワーカーノード用のEC2を構成する
(1) EC2接続用のキーペアを作成する
(2) ワーカーノードとなるEC2インスタンスをデプロイ
(1) ワーカーノードの構成を定義する「コンフィギュレーションマップ」ファイルを作成する
→ CloudFormation (サンプルあり)
4. 作成したEC2をワーカーノードとしてEKSクラスタへ登録する
(2) 構成したEC2インスタンスをEKSクラスタへワーカーノードとして登録・構成する
(3) ワーカーノードの構成結果を確認する → kubectlコマンド
特筆ポイント<1>
クラスタ (Control Plane) 作成時、
「指定した AZ はサポートされていない」 で作成に失敗する
・ サンプルの CloudFormation テンプレートを使用して VPC 環境を作成
[us-east-1a] [us-east-1b] [us-east-1c]
→ EKSクラスタの配置先となる3つのサブネット(AZ)が用意される
・ しかし、これらのAZを指定してEKSクラスタを作成しようとすると、以下のエラーが・・・
対処方法
・ エラーメッセージ中に対処方法が書いてある
[us-east-1a] [us-east-1b] [us-east-1d]→ を使えば OK とのこと
・ CloudFormation テンプレートを修正
→ 左図の箇所を 「2」 から 「3」 に書き換える
0 … us-east-1a
1 … us-east-1b
2 … us-east-1c
3 … us-east-1d
:
※値の意味
特筆ポイント<2>
ワーカーノード用の EC2 をデプロイする際、
「t2.micro」 は選択できないのか?
・ サンプルの CloudFormation テンプレートを使用した場合
→ 最低でも 「t2.small」 からの
選択となってしまう・・・
対処方法
・ CloudFormation テンプレートを修正 (2か所:それぞれ 「t2.micro」 を追記)
:
※ 「MaxPods」の適切な値が分からないので
とりあえず適当な値にしておきました・・・
対処後・・・
→ 「t2.micro」 が選べるようになった! ・ ワーカーノードとして登録
→ 問題なく行えた
・ コンテナ(Pod)のデプロイ
→ 問題なく行えた・・・?
あれ? 1つ動いてない・・・
さすがにリソースが足りない・・・のかな?
特筆ポイント<3>
EKS クラスタ (Control Plane) の利用料金
$0.2/時間 → $144/月
個人で使うには、なかなかの出費・・・
$4.8/日 →
・ 使わない時は 「停止」 したい!
対処方法
・ コンソールから 「停止」 ができるのか?
→ ステータス欄に 「Active」 とあって、一見 「Inactive」 にできそうだが・・・
→ 探した限り、停止するインタフェースは無さそう (´・ω・`)
対処方法
・ でもまあ、CLI ならイケるんじゃない?
→ コマンドこれしかない \(^o^)/オワタ
・ 使わない時はクラスタを一旦 「削除」 して、必要になったら作り直す
現時点では、こうするしかなさそう・・・
EKS を触ってみての所感
[マスターノード]
・ GKE や AKS に比べて設定項目が多め、手順も多め
・ マスターノードが課金対象 (GKE/AKSは無償)
[ワーカーノード]
・ EC2、VPC、セキュリティグループ、等、事前にしっかり作っておく必要がある
(GKE/AKS は必要最低限の設定で、自動的に準備される)
GKE/AKS
EKS
→ フルマネージド、管理の容易さを優先
→ セミマネージド、インフラリソースをユーザの管理下に置く
どちらが良い・悪いというのではなく、方向性の違い・・・だと思います

More Related Content

More from Hideaki Aoyagi

More from Hideaki Aoyagi (11)

「ふくてん」に来てんね
「ふくてん」に来てんね「ふくてん」に来てんね
「ふくてん」に来てんね
 
完全オンプレエンジニアがJAWS-UGへ参加してみて
完全オンプレエンジニアがJAWS-UGへ参加してみて完全オンプレエンジニアがJAWS-UGへ参加してみて
完全オンプレエンジニアがJAWS-UGへ参加してみて
 
「豆の話」の続きのお話
「豆の話」の続きのお話「豆の話」の続きのお話
「豆の話」の続きのお話
 
Azure/GCP使いの人にも知って欲しい(?) AWS Elastic Beanstalk
Azure/GCP使いの人にも知って欲しい(?)  AWS Elastic BeanstalkAzure/GCP使いの人にも知って欲しい(?)  AWS Elastic Beanstalk
Azure/GCP使いの人にも知って欲しい(?) AWS Elastic Beanstalk
 
Visual Studio 2017 事はじめ
Visual Studio 2017 事はじめVisual Studio 2017 事はじめ
Visual Studio 2017 事はじめ
 
「さくらのIoT」でやってみたいこと
「さくらのIoT」でやってみたいこと「さくらのIoT」でやってみたいこと
「さくらのIoT」でやってみたいこと
 
とある初老インフラエンジニアの憂鬱
とある初老インフラエンジニアの憂鬱とある初老インフラエンジニアの憂鬱
とある初老インフラエンジニアの憂鬱
 
はじめませんか? Bash on Windows
はじめませんか? Bash on Windowsはじめませんか? Bash on Windows
はじめませんか? Bash on Windows
 
AWS で VDI / DaaS っぽいものを作ってみた
AWS で VDI / DaaS っぽいものを作ってみたAWS で VDI / DaaS っぽいものを作ってみた
AWS で VDI / DaaS っぽいものを作ってみた
 
「Azureの動くしくみ」の片鱗を見て
「Azureの動くしくみ」の片鱗を見て「Azureの動くしくみ」の片鱗を見て
「Azureの動くしくみ」の片鱗を見て
 
ネットワーク構成から考える AWS IaaS 管理
ネットワーク構成から考える AWS IaaS 管理ネットワーク構成から考える AWS IaaS 管理
ネットワーク構成から考える AWS IaaS 管理
 

Recently uploaded

Recently uploaded (11)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

Amazon EKS への道 ~番外編~ 祝GA! EKS を触ってみた

  • 1. Amazon EKS への道 ~番外編~ 青柳 英明 2018/06/09 JAWS-UG 大分 「クラウトのチャンスに出会おう!」 LT 祝GA! EKS を触ってみた
  • 2. 自己紹介 青柳 英明 職業: インフラSE(オンプレOnly) 経歴: アプリケーション開発 … 3年 インフラエンジニア … 17年 AWS歴: JAWS-UG歴: … 約2年 コアメンバー: JAWS-UG福岡 Fukuoka.NET (ふくてん)
  • 3. Amazon EKS とは? ECS … Elastic Container Service → AWS上でコンテナ(≒Docker)を使うためのサービス EKS … Elastic Container Service for Kubernetes → ECSを 「Kubernetes」 に対応させたサービス Kubernetes → コンテナオーケストレーション(管理)ソフトウェアの業界標準 もう少し詳しく知りたい人は・・・ https://www.slideshare.net/HideakiAoyagi/amazon-eks 「Amazon EKS への道 ~入門編~」 (JAWS-UG福岡#6)
  • 4. EKS 環境構築の流れ 1. EKSのクラスタ(=Control Plane)(=Master Nodes)を作成する (1) EKSサービス用のIAMロールを作成する (2) EKSクラスタ用のVPCを作成する (3) EKSクラスタを作成する → CloudFormation (サンプルあり) → コンソール or CLI 2. 作成したEKSクラスタへkubectlで接続する (1) kubectlの設定ファイルを記述する (エンドポイント、認証情報) (2) 作成したEKSクラスタに対してkubectlで接続できることを確認
  • 5. EKS 環境構築の流れ 3. EKSワーカーノード用のEC2を構成する (1) EC2接続用のキーペアを作成する (2) ワーカーノードとなるEC2インスタンスをデプロイ (1) ワーカーノードの構成を定義する「コンフィギュレーションマップ」ファイルを作成する → CloudFormation (サンプルあり) 4. 作成したEC2をワーカーノードとしてEKSクラスタへ登録する (2) 構成したEC2インスタンスをEKSクラスタへワーカーノードとして登録・構成する (3) ワーカーノードの構成結果を確認する → kubectlコマンド
  • 6. 特筆ポイント<1> クラスタ (Control Plane) 作成時、 「指定した AZ はサポートされていない」 で作成に失敗する ・ サンプルの CloudFormation テンプレートを使用して VPC 環境を作成 [us-east-1a] [us-east-1b] [us-east-1c] → EKSクラスタの配置先となる3つのサブネット(AZ)が用意される ・ しかし、これらのAZを指定してEKSクラスタを作成しようとすると、以下のエラーが・・・
  • 7. 対処方法 ・ エラーメッセージ中に対処方法が書いてある [us-east-1a] [us-east-1b] [us-east-1d]→ を使えば OK とのこと ・ CloudFormation テンプレートを修正 → 左図の箇所を 「2」 から 「3」 に書き換える 0 … us-east-1a 1 … us-east-1b 2 … us-east-1c 3 … us-east-1d : ※値の意味
  • 8. 特筆ポイント<2> ワーカーノード用の EC2 をデプロイする際、 「t2.micro」 は選択できないのか? ・ サンプルの CloudFormation テンプレートを使用した場合 → 最低でも 「t2.small」 からの 選択となってしまう・・・
  • 9. 対処方法 ・ CloudFormation テンプレートを修正 (2か所:それぞれ 「t2.micro」 を追記) : ※ 「MaxPods」の適切な値が分からないので とりあえず適当な値にしておきました・・・
  • 10. 対処後・・・ → 「t2.micro」 が選べるようになった! ・ ワーカーノードとして登録 → 問題なく行えた ・ コンテナ(Pod)のデプロイ → 問題なく行えた・・・? あれ? 1つ動いてない・・・ さすがにリソースが足りない・・・のかな?
  • 11. 特筆ポイント<3> EKS クラスタ (Control Plane) の利用料金 $0.2/時間 → $144/月 個人で使うには、なかなかの出費・・・ $4.8/日 → ・ 使わない時は 「停止」 したい!
  • 12. 対処方法 ・ コンソールから 「停止」 ができるのか? → ステータス欄に 「Active」 とあって、一見 「Inactive」 にできそうだが・・・ → 探した限り、停止するインタフェースは無さそう (´・ω・`)
  • 13. 対処方法 ・ でもまあ、CLI ならイケるんじゃない? → コマンドこれしかない \(^o^)/オワタ ・ 使わない時はクラスタを一旦 「削除」 して、必要になったら作り直す 現時点では、こうするしかなさそう・・・
  • 14. EKS を触ってみての所感 [マスターノード] ・ GKE や AKS に比べて設定項目が多め、手順も多め ・ マスターノードが課金対象 (GKE/AKSは無償) [ワーカーノード] ・ EC2、VPC、セキュリティグループ、等、事前にしっかり作っておく必要がある (GKE/AKS は必要最低限の設定で、自動的に準備される) GKE/AKS EKS → フルマネージド、管理の容易さを優先 → セミマネージド、インフラリソースをユーザの管理下に置く どちらが良い・悪いというのではなく、方向性の違い・・・だと思います