Soumettre la recherche
Mettre en ligne
Active job meets kubernetes
•
0 j'aime
•
824 vues
Yasutomo Uemori
Suivre
Kubernetes Meetup Osaka #1でのLT資料です
Lire moins
Lire la suite
Ingénierie
Signaler
Partager
Signaler
Partager
1 sur 13
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Ruby/Rails Benchmarking and Profiling with TDD
Ruby/Rails Benchmarking and Profiling with TDD
Yasutomo Uemori
Spark Streaming on AWS -S3からKinesisへ-
Spark Streaming on AWS -S3からKinesisへ-
chibochibo
Spark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with Elasticsearch
chibochibo
20140930 anything as_code
20140930 anything as_code
Sugawara Genki
Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装
Sugawara Genki
DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴
Sugawara Genki
MogileFS をバックエンドとしたPrivate S3の作り方 【後半】API 編
MogileFS をバックエンドとしたPrivate S3の作り方 【後半】API 編
hiboma
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
Takuro Sasaki
Recommandé
Ruby/Rails Benchmarking and Profiling with TDD
Ruby/Rails Benchmarking and Profiling with TDD
Yasutomo Uemori
Spark Streaming on AWS -S3からKinesisへ-
Spark Streaming on AWS -S3からKinesisへ-
chibochibo
Spark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with Elasticsearch
chibochibo
20140930 anything as_code
20140930 anything as_code
Sugawara Genki
Lambdaによるクラウド型言語の実装
Lambdaによるクラウド型言語の実装
Sugawara Genki
DynamoDBのまえにキャッシュおく奴
DynamoDBのまえにキャッシュおく奴
Sugawara Genki
MogileFS をバックエンドとしたPrivate S3の作り方 【後半】API 編
MogileFS をバックエンドとしたPrivate S3の作り方 【後半】API 編
hiboma
AWS Lambdaで作るクローラー/スクレイピング
AWS Lambdaで作るクローラー/スクレイピング
Takuro Sasaki
SQLによるDynamoDBの操作
SQLによるDynamoDBの操作
Sugawara Genki
LocalStack
LocalStack
chibochibo
Aws docker-rails-demo slideshare
Aws docker-rails-demo slideshare
Kanno Yusuke
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
Kazunari Hara
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
真乙 九龍
高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編
Kazuya Numata
AWSをコードで定義する
AWSをコードで定義する
Sugawara Genki
Capistrano紹介 at kawasaki.rb #002 #kwskrb
Capistrano紹介 at kawasaki.rb #002 #kwskrb
Tsubasa Yumura
HerokuMeetupCuon
HerokuMeetupCuon
tomoya masuri
わんくま東京#46 予告編
わんくま東京#46 予告編
Sunao Tomita
Crawler Commons
Crawler Commons
chibochibo
NoOps Japanサイトの紹介
NoOps Japanサイトの紹介
Igarashi Toru
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Python
masahitojp
serverless
serverless
Kohei Misu
ディープラーニングをAWS LambdaとStep Functionで自動化する
ディープラーニングをAWS LambdaとStep Functionで自動化する
Keita Shimizu
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
mizugokoro
Scotty を利用した "ゆるふわ" Web サービス作成
Scotty を利用した "ゆるふわ" Web サービス作成
krdlab
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
API Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探し
Ryo Nakamaru
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
emasaka
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
Contenu connexe
Tendances
SQLによるDynamoDBの操作
SQLによるDynamoDBの操作
Sugawara Genki
LocalStack
LocalStack
chibochibo
Aws docker-rails-demo slideshare
Aws docker-rails-demo slideshare
Kanno Yusuke
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
Kazunari Hara
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
真乙 九龍
高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編
Kazuya Numata
AWSをコードで定義する
AWSをコードで定義する
Sugawara Genki
Capistrano紹介 at kawasaki.rb #002 #kwskrb
Capistrano紹介 at kawasaki.rb #002 #kwskrb
Tsubasa Yumura
HerokuMeetupCuon
HerokuMeetupCuon
tomoya masuri
わんくま東京#46 予告編
わんくま東京#46 予告編
Sunao Tomita
Crawler Commons
Crawler Commons
chibochibo
NoOps Japanサイトの紹介
NoOps Japanサイトの紹介
Igarashi Toru
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Python
masahitojp
serverless
serverless
Kohei Misu
ディープラーニングをAWS LambdaとStep Functionで自動化する
ディープラーニングをAWS LambdaとStep Functionで自動化する
Keita Shimizu
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
mizugokoro
Scotty を利用した "ゆるふわ" Web サービス作成
Scotty を利用した "ゆるふわ" Web サービス作成
krdlab
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
API Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探し
Ryo Nakamaru
Tendances
(20)
SQLによるDynamoDBの操作
SQLによるDynamoDBの操作
LocalStack
LocalStack
Aws docker-rails-demo slideshare
Aws docker-rails-demo slideshare
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
アメブロ2016 アメブロフロント刷新にみる ひかりとつらみ
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編
AWSをコードで定義する
AWSをコードで定義する
Capistrano紹介 at kawasaki.rb #002 #kwskrb
Capistrano紹介 at kawasaki.rb #002 #kwskrb
HerokuMeetupCuon
HerokuMeetupCuon
わんくま東京#46 予告編
わんくま東京#46 予告編
Crawler Commons
Crawler Commons
NoOps Japanサイトの紹介
NoOps Japanサイトの紹介
serverless framework + AWS Lambda with Python
serverless framework + AWS Lambda with Python
serverless
serverless
ディープラーニングをAWS LambdaとStep Functionで自動化する
ディープラーニングをAWS LambdaとStep Functionで自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
Scotty を利用した "ゆるふわ" Web サービス作成
Scotty を利用した "ゆるふわ" Web サービス作成
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
API Gatewayで re:Inventのセッション探し
API Gatewayで re:Inventのセッション探し
Similaire à Active job meets kubernetes
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
emasaka
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Hidetoshi Hirokawa
Redux, Relay, HorizonあるいはElm
Redux, Relay, HorizonあるいはElm
chuck h
AWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンド
暁 三宅
REACT & WEB API
REACT & WEB API
Shigeru Kondoh
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
Takeuchi Yuichi
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
Yuuki Namikawa
らくちん Go言語
らくちん Go言語
株式会社YEBIS.XYZ
OpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かす
KUNITO Atsunori
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
Hideaki Aoyagi
サバカン屋のサバ缶はre:Inventで通用したのか&すぐに使える!最新運用ネタ #re:Port2016
サバカン屋のサバ缶はre:Inventで通用したのか&すぐに使える!最新運用ネタ #re:Port2016
Kohei Hoshi
Visual studio 14 CTP2 概要
Visual studio 14 CTP2 概要
Yoshihisa Ozaki
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
infinite_loop
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
崇之 清水
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
recotech
React Native GUIDE
React Native GUIDE
dcubeio
API Gateway / AWS CLI
API Gateway / AWS CLI
Operation Lab, LLC.
Openshift 20191121
Openshift 20191121
Yasushi Osonoi
OpenStack API
OpenStack API
Akira Yoshiyama
Similaire à Active job meets kubernetes
(20)
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Redux, Relay, HorizonあるいはElm
Redux, Relay, HorizonあるいはElm
AWSで開発するサーバレスAPIバックエンド
AWSで開発するサーバレスAPIバックエンド
REACT & WEB API
REACT & WEB API
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
らくちん Go言語
らくちん Go言語
OpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かす
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
サバカン屋のサバ缶はre:Inventで通用したのか&すぐに使える!最新運用ネタ #re:Port2016
サバカン屋のサバ缶はre:Inventで通用したのか&すぐに使える!最新運用ネタ #re:Port2016
Visual studio 14 CTP2 概要
Visual studio 14 CTP2 概要
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
React Native GUIDE
React Native GUIDE
API Gateway / AWS CLI
API Gateway / AWS CLI
Openshift 20191121
Openshift 20191121
OpenStack API
OpenStack API
Plus de Yasutomo Uemori
GCP・GKEで作るスケーラブルなゲーム開発環境
GCP・GKEで作るスケーラブルなゲーム開発環境
Yasutomo Uemori
サービスクラス、その前に
サービスクラス、その前に
Yasutomo Uemori
Rails on Dockerとの戦い
Rails on Dockerとの戦い
Yasutomo Uemori
Rubocopとの付き合い方
Rubocopとの付き合い方
Yasutomo Uemori
オンラインゲームのRails複数db戦略
オンラインゲームのRails複数db戦略
Yasutomo Uemori
Rails api way in aiming
Rails api way in aiming
Yasutomo Uemori
ゲーム会社でのRuby : rails活用事例
ゲーム会社でのRuby : rails活用事例
Yasutomo Uemori
Plus de Yasutomo Uemori
(7)
GCP・GKEで作るスケーラブルなゲーム開発環境
GCP・GKEで作るスケーラブルなゲーム開発環境
サービスクラス、その前に
サービスクラス、その前に
Rails on Dockerとの戦い
Rails on Dockerとの戦い
Rubocopとの付き合い方
Rubocopとの付き合い方
オンラインゲームのRails複数db戦略
オンラインゲームのRails複数db戦略
Rails api way in aiming
Rails api way in aiming
ゲーム会社でのRuby : rails活用事例
ゲーム会社でのRuby : rails活用事例
Active job meets kubernetes
1.
ActiveJob meets Kubernetes Kubernetes Meetup
Osaka #1 LT 植森 康友(wakaba260)
2.
me.inspect => { “HN”: "wakaba260", “name”:
"Yasutomo Uemori", “company”: "株式会社Aiming", “twitter”: "https://twitter.com/wakaba260yen", “github”: "https://github.com/yuemori", “skills”: ["rails api", "docker", "kubernetes", "GCP"] }
3.
ActiveJob?
4.
ActiveJob(Rails) - Ruby on
Railsの非同期ジョブの仕組み - Adapterを実装することでなんでもバックエンドに出来る - 現在の主な実装例 - Sidekiq, Resque: ruby製のjob queue worker - Shoryuken: Amazon SQSをメッセージキューに使える
5.
ActiveJobの使用例 class GuestsCleanupJob <
ApplicationJob queue_as :default def perform(*args) # 後で実行したい作業をここに書く end end # 「キューイングシステムが空いたらジョブを実行する」とキューに登録する guest = Guest.find(guest_id) GuestsCleanupJob.perform_later(guest)
6.
Rails on Kubernetesでのジョブの運用 -
SidekiqのworkerをDeploymentで立てる - ジョブキューのBackendにredisを立てる - replicas指定でworker数を増やしてスケールアウト
7.
唐突な思いつき - Sidekiqのworkerのスケールアウトを考えるとCPU使用率などでは 上手くスケールできない - Kubernetesには既にJobという仕組みがある -
リトライ、タイムアウトなど機能も充実 - Kubernetes Jobを使うことでいい感じにスケールできそう
8.
作ってみた https://github.com/yuemori/kube_queue/
9.
# app/jobs/print_message_job.rb class PrintMessageJob
< ApplicationJob include KubeQueue::Worker worker_name 'print-message-job' image "your-registry/your-image" container_name 'your-container-name' def perform(payload) logger.info payload[:message] end end PrintMessageJob.perform_later(message: ‘hello!’)
10.
class ComputePiJob <
ApplicationJob include KubeQueue::Worker worker_name 'pi' image 'perl' container_name 'pi' command "perl","-Mbignum=bpi","-wle","print bpi(2000)" cpu_limit '0.3' cpu_request '0.2' memory_limit '100m' memory_request '50m' end
11.
kube_queueの実装 - perform_laterを呼んだら指定されたJobを起動 - やってることはJob作成のAPIを呼ぶだけ
12.
やってみてわかったこと - スケールアウトがworkerのreplica数からリソースに依存するように なった - KubernetesのAPI経由でコンテナを呼ぶことで、プラットフォームや 言語に依存せずにコンテナの恩恵を享受できる -
KubernetesのAPIを呼ぶことでいろいろ面白いことが出来るので、 活用する機会があれば試していきたい
13.
ご静聴ありがとうございました
Télécharger maintenant