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
AppsodyでNode-REDを動かす
Search
Yosuke Enomoto
March 04, 2020
Programming
0
670
AppsodyでNode-REDを動かす
Kubernetesへのデプロイまでを紹介します。
Yosuke Enomoto
March 04, 2020
Tweet
Share
More Decks by Yosuke Enomoto
See All by Yosuke Enomoto
ドクターメイトエンジニアカルチャーブック
motuo1201
0
68
もう話すことに困らない! カジュアル面談の “型” 全部見せ
motuo1201
0
340
CROSS Party online 2022 ~自重トレ~
motuo1201
0
380
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
570
Watson Assistant×Slack Botがリモートで働く社員を繋ぐ
motuo1201
0
560
Other Decks in Programming
See All in Programming
ACES Meet におけるリリース作業改善の取り組み
fukucheee
0
130
4年間変わらなかった YOUTRUSTのアーキテクチャ
daiki1003
1
630
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
400
CSC509 Lecture 04
javiergs
PRO
0
150
現場から考えるソフトウェアエンジニアリングの価値と実験
nomuson
1
130
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
0
180
게임 개발하던 학생이이 세계에선 안드로이드 개발자?
pangmoo
0
110
Pythonによるイベントソーシングへの挑戦と現状に対する考察 / Challenging Event Sourcing with Python and Reflections on the Current State
nrslib
3
1.3k
データフレームライブラリ徹底比較
daikikatsuragawa
2
100
"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス
boykush
2
250
Re:PandasAI:生成AIがデータ分析業務にもたらすパラダイムシフト【増補改訂版】
negi111111
1
1.1k
GrafanaのHTTP API を眺めてみよう
rinchoku
0
150
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Writing Fast Ruby
sferik
626
60k
Debugging Ruby Performance
tmm1
73
12k
The Invisible Side of Design
smashingmag
297
50k
Raft: Consensus for Rubyists
vanstee
136
6.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Scaling GitHub
holman
458
140k
What's new in Ruby 2.0
geeforr
341
31k
A Tale of Four Properties
chriscoyier
156
22k
Transcript
appsodyで楽々実現! Node-REDをKubernetesで 動かす!
1. (ざっくりと) Kubernetesに関する説明。 2. appsody is 何 ? 3. appsodyを使ってNode-REDモジュールをK8s
にデプロイするデモ 本日の流れ
自己紹介 3 千葉県松戸市のWeb系ベンチャー企業Joolenのエンジニア。 motuoという名前でQiita書いたりしてます。 埼玉西武ライオンズのユニフォームロゴが目印。 現在の業務で使うのは主に、PHP(Laravel,EC-CUBE)ですが、好 き嫌いなく何でも食べる子(実はCobolとかもイケる) もちろんNode-REDも! 2020年の IBM
ChampionとKabanero(OSS)のContributorを 認定頂きました! ※今回お話するappsodyはKabaneroにも組み込まれています。
kubernetesって?
kubernetesをザックリ理解しよう 【出典】 https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/#what-does-kubernetes-mean-k8s - Googleが中心となって開発したコンテナを統合し て管理するツール - 複数のホストを跨いだ構成も、上手く制御でき る。 -
オートスケールやコンテナの自動回復にも対応 している。 - 様々な部品を独立したコンテナで構築できるの で、マイクロサービスに適している。
つまり。。。 • コンテナが何かの原因で落ちても、自動的回復してくれる • 必要な機能にリソースを集中させやすい 例:Webサーバは小さく、バッチ処理のリソースは大きく • ローリングアップデート機能で、機能のアップデートを 不停止で実現 •
容易にシステムをスケーリング可能!
でも実際に使おうとすると、、、
なかなか手が進まない現実 - どうやって環境作るの?? - yamlってどう書く? 一人でK8s上にNode-RED構 築できますか??
そんな開発者の 壁を取り去るOSS
appsody is 何? クラウドネイティブなアプリケーション開発を支援するために作られたIBM製のオープ ンソース。主に下記の3つのコンポーネントで構成されています。 1. Appsody Stacks 予め、コンテナの依存性やセキュリティ情報(フローエディタの利用可否)等の構 成を保管することが出来ます。開発者はこれらを気にすることなくアプリケーショ
ンの開発が可能です。 2. Appsody Hub Appsody Stacksを管理するためのリポジトリです。ここを更新することで、 Appsodyで構築されたアプリケーションの構成を変更することができます。 3. Appsody CLI Appsodyのコマンドラインツールです
appsodyを使った開発の流れ 用意されている スタックをローカ ルへ ローカルでの開発 Kubernetesへデプロイ
appsody stackの構成 my-stack ├── README.md ├── stack.yaml # 最初に適用するテンプレートの指定など ├──
image/ | ├── config/ | | └── app-deploy.yaml # プロジェクトをデプロイする時の設定 (ポートなど) | ├── project/ | | ├── [デプロイする時に必要なファイル群をここに配置 (Node-REDの設定など)] | | └── Dockerfile │ ├── Dockerfile-stack # ローカル環境へデプロイする際の環境変数などを記述 | └── LICENSE └── templates/ ├── my-template/ └──[Appsdy init をしたときに始めに作成されるアプリケーション ] Node-REDのAppsody stackがGithubで公開されています!フローエディタの設定などは /image/project/server.jsに! https://github.com/appsody/stacks/tree/master/incubator/node-red
実際にK8sへのデプロイを 行います。
ローカルクラスタへのデプロイ(デモ) 今回お見せする手順はQiitaの appsodyがNode-REDに対応したので使ってみた で公開しています! ぜひ、ご自分でも試してみてください。