Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
初心者でもKubernetesを体験しよう
Search
Yosuke Enomoto
April 26, 2019
Business
0
590
初心者でもKubernetesを体験しよう
IBM Cloud Community Summit 発表資料
Yosuke Enomoto
April 26, 2019
Tweet
Share
More Decks by Yosuke Enomoto
See All by Yosuke Enomoto
ドクターメイトエンジニアカルチャーブック
motuo1201
0
40
もう話すことに困らない! カジュアル面談の “型” 全部見せ
motuo1201
0
290
CROSS Party online 2022 ~自重トレ~
motuo1201
0
360
IoT LT Vol7 LT
motuo1201
0
210
IBM Cloud Fest Online 2020
motuo1201
0
750
IBM Championが考えるアプリケーション基盤の勘所
motuo1201
0
200
社内定例LT1回目の資料
motuo1201
0
100
codewindで実現!簡単コンテナ開発
motuo1201
0
540
Watson Assistant×Slack Botがリモートで働く社員を繋ぐ
motuo1201
0
510
Other Decks in Business
See All in Business
モベンシス会社紹介資料
movensys
0
560
リーダーシップについて-20240704.pdf
fshin2000
1
230
ブレイン・ラボ‐会社説明資料
blhr_nktk
0
18k
20240629_CMCCentral_CMBasics
hideki_ojima
2
420
devsumi-2024-summer
onigra
2
510
世界一「エモい」アジャイルマニフェストの授業 / Value of the Agile Manifesto
fkino
1
460
(5枚)KPIマネジメントにおけるPDCAサイクルの全体像
nyattx
PRO
1
1.4k
クラスメソッド_会社紹介資料_202407 / introduction to classmethod for engineers
classmethod_jinji
1
1.3k
240722_CobeAssocie_121-changes-in-lifestyle-2024_vol18.pdf
nozomi
0
110
自社サービスをお客様が簡単に利用出来る為にやったこと
yako1060
0
110
Muture 会社紹介資料
muture
1
2.6k
株式会社STANDARD_会社紹介資料
std2017
0
130
Featured
See All Featured
Design by the Numbers
sachag
277
18k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
2.9k
How to train your dragon (web standard)
notwaldorf
79
5.5k
Faster Mobile Websites
deanohume
303
30k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
16
1.6k
No one is an island. Learnings from fostering a developers community.
thoeni
17
2.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
52k
Atom: Resistance is Futile
akmur
261
25k
Large-scale JavaScript Application Architecture
addyosmani
506
110k
Ruby is Unlike a Banana
tanoku
96
10k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Transcript
bmxug.tokyo 初心者でも体験できる! kubernetes on IBM Cloud bmxug.tokyo @Yousuke Enomoto
bmxug.tokyo Speaker Motuo 普段は千葉県某所の物流系企業で社内SEしています。 汎用機開発・PHP果ては社内PCのキッティングまでも全部やる雑食系。得意 分野はPHP(Laravel)を使ってのWeb開発。 IBM Cloudとの出会いは、Laravelをデプロイする先として選んだPaaS。クレ ジットカード情報不要の、ライトアカウントが作れることと、簡単にCI/CDまでの 環境構築ができることに感動して、IBM
Cloudに触れるようになりました。 2019年IBM Champion(Cloud)を頂きました!
bmxug.tokyo bmxug.tokyo - IBM Cloud PaaSをもっと使いこなしたい、分からないことを解決したいという目 的で始まったコミュニティ。(月1で勉強会を開催) - 勉強会のテーマに縛りはありません。 -
Laravelの話題も大歓迎。 (最近の活動実績) - 10/3 開発相談会#4 : IBM CloudFunction/Laravel - 11/7 開発相談会#5 : DevOps(CI/CD,Test) - 1/16 Docker/Kubernetes - 2/6 Code Patterns - 3/6 Code Patterns(その2)
bmxug.tokyo ここからが本題
bmxug.tokyo まずはKubernetes(K8s)をザックリ理解しよう 【出典】 https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/#what-does-kubernetes-mean-k8s - Googleが中心となって開発したコンテナを統合 して管理するツール - 複数のホストを跨いだ構成も、上手く制御でき る。
- オートスケールやコンテナの自動回復にも対応 している。 - 様々な部品を独立したコンテナで構築できるの で、マイクロサービスに適している。
bmxug.tokyo メリット(一部)を並べてみる • コンテナが何かの原因で落ちても、自動的回復してくれる • 必要な機能にリソースを集中させやすい 例:Webサーバは小さく、バッチ処理のリソースは大きく • ローリングアップデート機能で、機能のアップデートを 不停止で実現
• 容易にシステムをスケーリング可能!
bmxug.tokyo 話題だし、便利なら使ってみたいですよね?
bmxug.tokyo でも…構築するには壁も高い。 - チュートリアル難しい! - サーバ用意するの大変! - どうやって環境作るの?? 何から手を付ければ…
bmxug.tokyo IBM Cloud ユーザーなら 簡単にKubernetesの構築を体験できます!
bmxug.tokyo IBM CloudにはCode Patternsがあるんです Code Patterns ⇒ 具体的な要件を定義し、IBM Cloud上での開発手順と共に公 開しているステキなサイトです。
bmxug.tokyo 一例をご紹介! Watson + Node RED ブロック チェーン IoT Platform
bmxug.tokyo ここにKubernetesを体験するヒントが!! https://developer.ibm.com/jp/patterns/run-drupal-website-on-kubernetes/
bmxug.tokyo ちなみにdrupalとは - オープンソースのCMS - PHPで構築されている - 汎用性が高く、複雑なシステムでも構築できる
bmxug.tokyo ここからは・・・ このサンプルを元に、 特に初心者がつまずきがちなポイントを 押さえながら、どうやってIBM Cloudで Kubernetesを構築するかを紹介します。
bmxug.tokyo まずは、システム全体の構成図 【出典】 https://developer.ibm.com/jp/patterns/run-drupal-website-on-kubernetes/
bmxug.tokyo 実際にKubernetesを構築してみよう! 1. まずはgithubからソースをローカルに Cloneします。 git clone https://github.com/IBM/drupal-on-kubernetes-sample 2. IBM
CloudでKubernetesクラスタを作成します。 ポイント! • ライトプランでは利用不可! • 無料タイプなら課金0(※制限あり) • クラスタ作成には15分くらいかかる (気長に待つこと!)
bmxug.tokyo 自分のローカル環境に開発ツールを導入 3. ローカルからIBM Cloudを操作するためのCommand Line Interfaceを導入しておく。 ※Kubernetesクラスタ⇒アクセスに書いてありますが、 意外とハマりポイント ※
ローカルのOSがWindowsの場合の表示です。
bmxug.tokyo Kubernetesにローカルからアクセス 4. IBM CloudのKubernetesクラスタ⇒アクセスに書かれている手順に沿って、 Kubernetesと のやり取りを出来るようにしておく。 (ここも初心者は忘れがち! ) ちなみに、config取得時に下記のメッセージが出たらクラスタ作成中。
しばらく待つと下記のエラーは解消されます。 The cluster is not fully deployed yet. Wait a few minutes, then try again.
bmxug.tokyo Kubernetesにコンテナを置こう! 5. 最後にローカルにCloneしたyaml(=Kubernetesに乗せるコンテナの設定情報 )を、自分のクラ スタに作成する3つのコマンドを実行する。
bmxug.tokyo おしまい 手順的にはこれだけのステップで、 Kubernetesを使ったDrupalのサイトが構築できます!
bmxug.tokyo 最後に稼働を確認してみよう! パブリックIP:30080ポートで、Drupalにアクセス出来る!
bmxug.tokyo 稼働状況等もIBM Cloudから見れます IBM CloudからKubernetesのダッシュボードを見る事もできる!
bmxug.tokyo 構築した後は・・・ 自分自身が作成した環境を確認して、理解を深めていきましょう。 Code Patternsには「実際の構築の仕方」はありますが、「なぜ、動くのか」は書いてありません。 • cloneしたリポジトリに書かれているyamlを 見て分析してみる。(/kubernetes配下にあります。) • 作成したクラスタのダッシュボードを触って、機能を確認
する。 • 更にシステムを自分で改造してみる。
bmxug.tokyo 改造のヒントとして・・・ TryIBMDevがあります。 IBM Developer Advocate や IBM Champion が
Code Patterns を元に開発したアプリをソースコード付きで 紹介してくれています。 Code Patternsを元に作られているので次のステップに最適な内容です。
bmxug.tokyo 他のKubernetesのサンプルもたくさん ← Container Orchestrationという分類をクリック! (Kubernetesという名前ではない点に注意! )
bmxug.tokyo それでも、つまずいてしまったときは 共有してみんなで解決しましょう!! その為にユーザーコミュニティがあると思います。 是非、bmxug.tokyoにも遊びに来てください