SlideShare a Scribd company logo
1 of 21
ALIBABA CLOUD
SERVERLESS KUBERNETES
でクローラーを作ろう
WITH KANIKO
@oqmuuu
fun-tech meetup #13
2019/09/27
WHO AM I
• 名前: Kumiko Anzai (@oqmuuu)
• 所属: (株)オープンストリーム
• 仕事:Cloud Solution Architect見習い
• Alibabaブログ:グループ会社で書いてます
• アリ蔵 -> https://alikura.com/
• コミュニティ
• Cloud Native
• Kubernetes Meetup
• Serverless Meetup
• AliEaters
• Fun-tech meetup 2
今日の目的
1. Alibaba Cloudのいいところ、もう少しなところを知っ
てもらう
2. Alibaba Cloudのコンテナサービスを知ってもらう
3. Alibaba Cloudのサーバーレス環境構築パターン
(その1:サーバーレスKubernetes)を知ってもらう
3
AGENDA
1. 自己紹介
2. 今日話すこと
3. 宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 4
ALIBABA CLOUDの特徴 1/3
o 中国のタオバオなどを経営するアリババグループが運営
o 2011年にサービス開始
o 中国で売上第1位(2018年上期)
o 中国国内に1300のCDNノード
o IaaS世界第3位のシェア(2017年)
o アジアを中心に19リージョン展開
o 56アベイラビリティゾーン保持
o 中国展開への強み
o 中国内にECサイトを作るとき、中国国内のコンテンツを使用したいとき
に他のベンダーより圧倒的に有利
5
ALIBABA CLOUDの特徴 2/3
o 巨大な中国ECモールを支えるインフラ・ミドルウェアを開発
o 2017年11月11日独身の日売上は2兆
o 技術で世界をより良くしたいがモットー
o セキュリティサービスが充実
o 3種類のアカウントごとに徐々にサービスを展開
o 中国アカウント>国際アカウント>日本アカウント
o ドキュメントが中国語
o 英語ももちろんあるが、英日含め執筆中
o DepOps系のサービスが乏しいので自前構築(マルチクラウド?)
が必要
o どのクラウドベンダーにも強み・弱みがある
o 比較表 -> http://comparecloud.in/ 6
ALIBABA CLOUDの特徴 3/3
7
2019年のクラウドベンダーのマジック・クアドラント図
AGENDA
1. 自己紹介
2. 今日話すこと
3. 宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 8
クローラー全体像
9
Webサイト
NAS
ACR
NAT
EIP
EIP
SLB
RAM
ACK
VPC
CloudShell
Pod
ECI
Pod
AGENDA
1. 自己紹介
2. 今日話すこと
3. 宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 10
CONTAINER SERVICE FOR KUBERNETES
o Kubernetesとは
o ミドルウェアや冗長化構成を設定ファイルで構築できる実行環境
o Dockerを大規模なアプリ用に発展させたもの
o Alibaba Cloudでは3種類のKubernetesクラスターを用意
o 専用クラスター
o マスターノード+ワーカノードの管理
o マネージドクラスター
o ワーカノードの管理
o サーバーレスクラスター
o ノード管理不要
o 料金はPodと呼ばれる実行環境の起動時間、CPU、メモリに課金される
o クラスターを立ててすぐ使用できるミドルウェアのデプロイ機能あり11
ELASTIC CONTAINER INSTANCE
12
ACK
Kubernetes
Virtual Kubelet
Pod
ECI
Pod
oDockerやKubernetesコンテナ専用の実行環境
oKubernetesのサーバーレスクラスターのノードとしても動作する
oVirtual Kubeletが独立しているECIとKubernetesをつないでいる
oAWS Fargateと同じようなもの
oお手軽度No.1
oミドルウェアを管理しやすい
AGENDA
1. 自己紹介
2. 今日話すこと
3. 宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 13
KANIKO
o Kuberntes上でコンテナイメージビルド、プッシュができるOSS
o Googleが開発しており、GCP Cloud Buildに組み込まれている
o 後述の指定したコンテナレジストリにイメージをプッシュする
o Jenkins等のCI/CDツールを使うまでもない規模が妥当
o ビルド後はビルドしたコンテナイメージ上でプッシュ処理を実行
o キャッシュを使った高速なビルドを実現
14Dockerコンテナイメージとコンテナ実行のフロー
CONTAINER REGISTRY
o フルマネージドなコンテナレジストリ
o Docker Registry互換
o ソースコードにGithub、GitLabなどが使用できる
o ビルド後に脆弱性チェックができる
o Ubuntu,RedHat,CentOS,Oracle,Debian,Alpineの一部バージョン
o ビルド後のWebhook機能あり
15脆弱性チェック結果
AGENDA
1. 自己紹介
2. 今日話すこと
3. ちょっと宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 16
MEMORIOUS
o Pythonのクローラーライブラリ
o https://github.com/alephdata/memorious
o クローリング、スクレイピング処理のパイプラインを定義でき
る
o どのホストをクローリングするか(しないか)、どのファイルを収
集するかなどの設定を全てYAMLで宣言的に記載する
o 同時実行数や収集したコンテンツの保存先なども設定できる
o 収集するコンテンツをハッシュ値で管理
o 同一名のコンテンツでも中身が異なると収集してくる
o Dockerfileで配布されており、ハッシュ値管理のためのRedisや管
理画面を内臓 17
MEMORIOUSの実例
18
# Example scraper to demonstrate Memorious XPath narrowing
name: poc
description: Books to scraper
pipeline:
init:
# Start URL
method: seed
params:
urls:
- http://books.toscrape.com/
handle:
pass: fetch
fetch:
# Download the page passed from the seed stage.
method: fetch
handle:
pass: parse
params
# These rules specify which pages should be scraped or included:
rules:
and:
- domain: books.toscrape.com
parse:
# Crawl the HTML of the page passed in to extract specific things.
method: parse
params:
store:
mime_group: images
handle:
# If the 'fetch' rule is invoked, re-trigger the fetch stage
fetch: fetch
# Otherwise, pass data on to the store stage
store: store
store:
# Store the crawled documents to a directory
method: directory
params:
path: /data/results:
YAML例
管理画面例
AGENDA
1. 自己紹介
2. 今日話すこと
3. ちょっと宣伝
4. クローラー全体像
5. Infra
6. DevOps
7. App
8. まとめ 19
まとめ
o Alibaba CloudはECサイトの中国展開が強み
o Alibaba CloudはIaaSに少し機能をつけたサービスや、
PaaSが豊富
o サーバーレスにしたいが、大規模インフラ構成にな
りうる、ミドルウェアや実装量が多い(拡張性があ
る)アプリはコンテナ管理すると楽
o CI/CD周りは上手に他のPaaSを頼っていくとよい
20
ご静聴ありがとうございました

More Related Content

What's hot

Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3
Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3
Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3Seiya Konno
 
[Jawsug愛媛]網元ami on aws market place
[Jawsug愛媛]網元ami on aws market place[Jawsug愛媛]網元ami on aws market place
[Jawsug愛媛]網元ami on aws market placeHiromichi Koga
 
[Jaws ug香川] 網元ami on aws market place
[Jaws ug香川] 網元ami on aws market place[Jaws ug香川] 網元ami on aws market place
[Jaws ug香川] 網元ami on aws market placeHiromichi Koga
 
各社のFaaSを比較してみる
各社のFaaSを比較してみる各社のFaaSを比較してみる
各社のFaaSを比較してみるryosuke matsumura
 
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したいShinya Mori (@mosuke5)
 
Alibaba Cloud MVP 2019 これまでとこれからの道
Alibaba Cloud MVP 2019 これまでとこれからの道Alibaba Cloud MVP 2019 これまでとこれからの道
Alibaba Cloud MVP 2019 これまでとこれからの道AnzaiKumiko
 
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏Takashi Someda
 
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれからReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれからYusuke Murata
 
JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方Takuro Sasaki
 
JAWS DAYS 2017直前! AWS総復習
JAWS DAYS 2017直前! AWS総復習JAWS DAYS 2017直前! AWS総復習
JAWS DAYS 2017直前! AWS総復習Masanori Hayashi
 
Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Hiroyuki Mori
 
20191211 alieaters#14 re:Invent2019 VS AlibabaCloud
20191211 alieaters#14 re:Invent2019 VS AlibabaCloud20191211 alieaters#14 re:Invent2019 VS AlibabaCloud
20191211 alieaters#14 re:Invent2019 VS AlibabaCloudTakuya Mihara
 
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力Ryu Shindo
 
Mobingi ALM Hands-on 20170718
Mobingi ALM Hands-on 20170718Mobingi ALM Hands-on 20170718
Mobingi ALM Hands-on 20170718Masafumi Noguchi
 
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しよう
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しようAWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しよう
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しようKiminori Yokoi
 
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?Yasuhiro Horiuchi
 

What's hot (20)

Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3
Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3
Flashback 2014 / うぇぶ屋のみイントーキョー Vol. 3
 
面白いは正義
面白いは正義面白いは正義
面白いは正義
 
[Jawsug愛媛]網元ami on aws market place
[Jawsug愛媛]網元ami on aws market place[Jawsug愛媛]網元ami on aws market place
[Jawsug愛媛]網元ami on aws market place
 
[Jaws ug香川] 網元ami on aws market place
[Jaws ug香川] 網元ami on aws market place[Jaws ug香川] 網元ami on aws market place
[Jaws ug香川] 網元ami on aws market place
 
各社のFaaSを比較してみる
各社のFaaSを比較してみる各社のFaaSを比較してみる
各社のFaaSを比較してみる
 
Aws
AwsAws
Aws
 
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい
20211217 Alibaba Cloudでだってテスト駆動インフラ構築したい
 
Alibaba Cloud MVP 2019 これまでとこれからの道
Alibaba Cloud MVP 2019 これまでとこれからの道Alibaba Cloud MVP 2019 これまでとこれからの道
Alibaba Cloud MVP 2019 これまでとこれからの道
 
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
 
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれからReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
 
JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方JAWSUG初心者支部 AWSの勉強の仕方
JAWSUG初心者支部 AWSの勉強の仕方
 
Api Meetup #9 - JAZUG
Api Meetup #9 - JAZUGApi Meetup #9 - JAZUG
Api Meetup #9 - JAZUG
 
RHEL8 on Alibaba Cloud
RHEL8 on Alibaba CloudRHEL8 on Alibaba Cloud
RHEL8 on Alibaba Cloud
 
JAWS DAYS 2017直前! AWS総復習
JAWS DAYS 2017直前! AWS総復習JAWS DAYS 2017直前! AWS総復習
JAWS DAYS 2017直前! AWS総復習
 
Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!
 
20191211 alieaters#14 re:Invent2019 VS AlibabaCloud
20191211 alieaters#14 re:Invent2019 VS AlibabaCloud20191211 alieaters#14 re:Invent2019 VS AlibabaCloud
20191211 alieaters#14 re:Invent2019 VS AlibabaCloud
 
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力
はやい!?うまい!?安い!?すべてのプラットフォームに届く「 PWA 」の魅力
 
Mobingi ALM Hands-on 20170718
Mobingi ALM Hands-on 20170718Mobingi ALM Hands-on 20170718
Mobingi ALM Hands-on 20170718
 
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しよう
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しようAWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しよう
AWS+WordPress - AWSでスケーラブルなWordPressサイトを構築しよう
 
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?
ベンチャーCTO、AWSエバンジェリストを経て考える、 クラウド時代に向き合うエンジニアの心構えとは?
 

Similar to Fun tech13-alibaba cloud serverless kubernetes

virtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみようvirtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみようShinya Mori (@mosuke5)
 
Mobingi ALM Hands-on
Mobingi ALM Hands-onMobingi ALM Hands-on
Mobingi ALM Hands-onMobingi
 
OCI serverless introduction
OCI serverless introductionOCI serverless introduction
OCI serverless introductionSuguruSugiyama
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとはKoto Shigeru
 
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...オラクルエンジニア通信
 
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)Takuya Mihara
 
Cloud automator的なものを実装してみる
Cloud automator的なものを実装してみるCloud automator的なものを実装してみる
Cloud automator的なものを実装してみるsaku hatsu
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsYoshio Terada
 
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkKubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkwhywaita
 
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力![DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!オラクルエンジニア通信
 
ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発YASUKAZU NAGATOMI
 
Scala: Mobile Backend on AWS
Scala: Mobile Backend on AWSScala: Mobile Backend on AWS
Scala: Mobile Backend on AWScmaraiyusuke
 
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけDockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけShinya Mori (@mosuke5)
 
KubeFlowでどこまでいける?
KubeFlowでどこまでいける?KubeFlowでどこまでいける?
KubeFlowでどこまでいける?Yuji Oshima
 
中国・Alibaba視察ツアーのふりかえり
中国・Alibaba視察ツアーのふりかえり 中国・Alibaba視察ツアーのふりかえり
中国・Alibaba視察ツアーのふりかえり Qiu Binbin
 
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftコンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftY K
 
GCP でも Serverless!!
GCP でも Serverless!!GCP でも Serverless!!
GCP でも Serverless!!Igarashi Toru
 
Kubernets on Bluemix + DevOpsでコンテナCIやってみた
Kubernets on Bluemix + DevOpsでコンテナCIやってみたKubernets on Bluemix + DevOpsでコンテナCIやってみた
Kubernets on Bluemix + DevOpsでコンテナCIやってみたShoichiro Sakaigawa
 

Similar to Fun tech13-alibaba cloud serverless kubernetes (20)

virtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみようvirtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
virtual-kubeletってなんだ?Alibaba Cloudで動かしてみよう
 
Mobingi ALM Hands-on
Mobingi ALM Hands-onMobingi ALM Hands-on
Mobingi ALM Hands-on
 
OCI serverless introduction
OCI serverless introductionOCI serverless introduction
OCI serverless introduction
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
 
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...
[Modern Cloud Day Tokyo 2019] KubeConに登壇したCloud Native Labsのエンジニアが、初学者にも分かりやす...
 
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)
Fun tech#14 AlibabaCloud - EDAS(Enterprise Distributed Application Service)
 
AlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetesAlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetes
 
Cloud automator的なものを実装してみる
Cloud automator的なものを実装してみるCloud automator的なものを実装してみる
Cloud automator的なものを実装してみる
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
 
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkKubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
 
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力![DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
 
ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発ざっくり始めるCloud Native開発
ざっくり始めるCloud Native開発
 
Scala: Mobile Backend on AWS
Scala: Mobile Backend on AWSScala: Mobile Backend on AWS
Scala: Mobile Backend on AWS
 
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけDockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
 
KubeFlowでどこまでいける?
KubeFlowでどこまでいける?KubeFlowでどこまでいける?
KubeFlowでどこまでいける?
 
中国・Alibaba視察ツアーのふりかえり
中国・Alibaba視察ツアーのふりかえり 中国・Alibaba視察ツアーのふりかえり
中国・Alibaba視察ツアーのふりかえり
 
JAWS DAYS 2015
JAWS DAYS 2015JAWS DAYS 2015
JAWS DAYS 2015
 
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShiftコンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShift
 
GCP でも Serverless!!
GCP でも Serverless!!GCP でも Serverless!!
GCP でも Serverless!!
 
Kubernets on Bluemix + DevOpsでコンテナCIやってみた
Kubernets on Bluemix + DevOpsでコンテナCIやってみたKubernets on Bluemix + DevOpsでコンテナCIやってみた
Kubernets on Bluemix + DevOpsでコンテナCIやってみた
 

More from AnzaiKumiko

Alibaba cloud developers meetup #17 ali eaters in tokyo
Alibaba cloud developers meetup #17 ali eaters in tokyoAlibaba cloud developers meetup #17 ali eaters in tokyo
Alibaba cloud developers meetup #17 ali eaters in tokyoAnzaiKumiko
 
AI Seminar on Alibaba Cloud
AI Seminar on Alibaba CloudAI Seminar on Alibaba Cloud
AI Seminar on Alibaba CloudAnzaiKumiko
 
fun-tech meetup #16 AWS IoT
fun-tech meetup #16 AWS IoTfun-tech meetup #16 AWS IoT
fun-tech meetup #16 AWS IoTAnzaiKumiko
 
Ack and jenkins x revenge2
Ack and jenkins x revenge2Ack and jenkins x revenge2
Ack and jenkins x revenge2AnzaiKumiko
 
Ali eaterscodebranch 3-image search introduction
Ali eaterscodebranch 3-image search introductionAli eaterscodebranch 3-image search introduction
Ali eaterscodebranch 3-image search introductionAnzaiKumiko
 
Ali eaters nagoya 2-alibaba cloud ack and jenkins x
Ali eaters nagoya 2-alibaba cloud ack and jenkins xAli eaters nagoya 2-alibaba cloud ack and jenkins x
Ali eaters nagoya 2-alibaba cloud ack and jenkins xAnzaiKumiko
 
Cloud native fukuoka 2 open kruise
Cloud native fukuoka 2 open kruise Cloud native fukuoka 2 open kruise
Cloud native fukuoka 2 open kruise AnzaiKumiko
 
Fun tech11-alibaba cloud container service
Fun tech11-alibaba cloud container serviceFun tech11-alibaba cloud container service
Fun tech11-alibaba cloud container serviceAnzaiKumiko
 

More from AnzaiKumiko (10)

AliEaters #18
AliEaters #18AliEaters #18
AliEaters #18
 
Alibaba cloud developers meetup #17 ali eaters in tokyo
Alibaba cloud developers meetup #17 ali eaters in tokyoAlibaba cloud developers meetup #17 ali eaters in tokyo
Alibaba cloud developers meetup #17 ali eaters in tokyo
 
AI Seminar on Alibaba Cloud
AI Seminar on Alibaba CloudAI Seminar on Alibaba Cloud
AI Seminar on Alibaba Cloud
 
Lt 20200508
Lt 20200508Lt 20200508
Lt 20200508
 
fun-tech meetup #16 AWS IoT
fun-tech meetup #16 AWS IoTfun-tech meetup #16 AWS IoT
fun-tech meetup #16 AWS IoT
 
Ack and jenkins x revenge2
Ack and jenkins x revenge2Ack and jenkins x revenge2
Ack and jenkins x revenge2
 
Ali eaterscodebranch 3-image search introduction
Ali eaterscodebranch 3-image search introductionAli eaterscodebranch 3-image search introduction
Ali eaterscodebranch 3-image search introduction
 
Ali eaters nagoya 2-alibaba cloud ack and jenkins x
Ali eaters nagoya 2-alibaba cloud ack and jenkins xAli eaters nagoya 2-alibaba cloud ack and jenkins x
Ali eaters nagoya 2-alibaba cloud ack and jenkins x
 
Cloud native fukuoka 2 open kruise
Cloud native fukuoka 2 open kruise Cloud native fukuoka 2 open kruise
Cloud native fukuoka 2 open kruise
 
Fun tech11-alibaba cloud container service
Fun tech11-alibaba cloud container serviceFun tech11-alibaba cloud container service
Fun tech11-alibaba cloud container service
 

Recently uploaded

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 

Recently uploaded (9)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 

Fun tech13-alibaba cloud serverless kubernetes

  • 1. ALIBABA CLOUD SERVERLESS KUBERNETES でクローラーを作ろう WITH KANIKO @oqmuuu fun-tech meetup #13 2019/09/27
  • 2. WHO AM I • 名前: Kumiko Anzai (@oqmuuu) • 所属: (株)オープンストリーム • 仕事:Cloud Solution Architect見習い • Alibabaブログ:グループ会社で書いてます • アリ蔵 -> https://alikura.com/ • コミュニティ • Cloud Native • Kubernetes Meetup • Serverless Meetup • AliEaters • Fun-tech meetup 2
  • 3. 今日の目的 1. Alibaba Cloudのいいところ、もう少しなところを知っ てもらう 2. Alibaba Cloudのコンテナサービスを知ってもらう 3. Alibaba Cloudのサーバーレス環境構築パターン (その1:サーバーレスKubernetes)を知ってもらう 3
  • 4. AGENDA 1. 自己紹介 2. 今日話すこと 3. 宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 4
  • 5. ALIBABA CLOUDの特徴 1/3 o 中国のタオバオなどを経営するアリババグループが運営 o 2011年にサービス開始 o 中国で売上第1位(2018年上期) o 中国国内に1300のCDNノード o IaaS世界第3位のシェア(2017年) o アジアを中心に19リージョン展開 o 56アベイラビリティゾーン保持 o 中国展開への強み o 中国内にECサイトを作るとき、中国国内のコンテンツを使用したいとき に他のベンダーより圧倒的に有利 5
  • 6. ALIBABA CLOUDの特徴 2/3 o 巨大な中国ECモールを支えるインフラ・ミドルウェアを開発 o 2017年11月11日独身の日売上は2兆 o 技術で世界をより良くしたいがモットー o セキュリティサービスが充実 o 3種類のアカウントごとに徐々にサービスを展開 o 中国アカウント>国際アカウント>日本アカウント o ドキュメントが中国語 o 英語ももちろんあるが、英日含め執筆中 o DepOps系のサービスが乏しいので自前構築(マルチクラウド?) が必要 o どのクラウドベンダーにも強み・弱みがある o 比較表 -> http://comparecloud.in/ 6
  • 8. AGENDA 1. 自己紹介 2. 今日話すこと 3. 宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 8
  • 10. AGENDA 1. 自己紹介 2. 今日話すこと 3. 宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 10
  • 11. CONTAINER SERVICE FOR KUBERNETES o Kubernetesとは o ミドルウェアや冗長化構成を設定ファイルで構築できる実行環境 o Dockerを大規模なアプリ用に発展させたもの o Alibaba Cloudでは3種類のKubernetesクラスターを用意 o 専用クラスター o マスターノード+ワーカノードの管理 o マネージドクラスター o ワーカノードの管理 o サーバーレスクラスター o ノード管理不要 o 料金はPodと呼ばれる実行環境の起動時間、CPU、メモリに課金される o クラスターを立ててすぐ使用できるミドルウェアのデプロイ機能あり11
  • 12. ELASTIC CONTAINER INSTANCE 12 ACK Kubernetes Virtual Kubelet Pod ECI Pod oDockerやKubernetesコンテナ専用の実行環境 oKubernetesのサーバーレスクラスターのノードとしても動作する oVirtual Kubeletが独立しているECIとKubernetesをつないでいる oAWS Fargateと同じようなもの oお手軽度No.1 oミドルウェアを管理しやすい
  • 13. AGENDA 1. 自己紹介 2. 今日話すこと 3. 宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 13
  • 14. KANIKO o Kuberntes上でコンテナイメージビルド、プッシュができるOSS o Googleが開発しており、GCP Cloud Buildに組み込まれている o 後述の指定したコンテナレジストリにイメージをプッシュする o Jenkins等のCI/CDツールを使うまでもない規模が妥当 o ビルド後はビルドしたコンテナイメージ上でプッシュ処理を実行 o キャッシュを使った高速なビルドを実現 14Dockerコンテナイメージとコンテナ実行のフロー
  • 15. CONTAINER REGISTRY o フルマネージドなコンテナレジストリ o Docker Registry互換 o ソースコードにGithub、GitLabなどが使用できる o ビルド後に脆弱性チェックができる o Ubuntu,RedHat,CentOS,Oracle,Debian,Alpineの一部バージョン o ビルド後のWebhook機能あり 15脆弱性チェック結果
  • 16. AGENDA 1. 自己紹介 2. 今日話すこと 3. ちょっと宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 16
  • 17. MEMORIOUS o Pythonのクローラーライブラリ o https://github.com/alephdata/memorious o クローリング、スクレイピング処理のパイプラインを定義でき る o どのホストをクローリングするか(しないか)、どのファイルを収 集するかなどの設定を全てYAMLで宣言的に記載する o 同時実行数や収集したコンテンツの保存先なども設定できる o 収集するコンテンツをハッシュ値で管理 o 同一名のコンテンツでも中身が異なると収集してくる o Dockerfileで配布されており、ハッシュ値管理のためのRedisや管 理画面を内臓 17
  • 18. MEMORIOUSの実例 18 # Example scraper to demonstrate Memorious XPath narrowing name: poc description: Books to scraper pipeline: init: # Start URL method: seed params: urls: - http://books.toscrape.com/ handle: pass: fetch fetch: # Download the page passed from the seed stage. method: fetch handle: pass: parse params # These rules specify which pages should be scraped or included: rules: and: - domain: books.toscrape.com parse: # Crawl the HTML of the page passed in to extract specific things. method: parse params: store: mime_group: images handle: # If the 'fetch' rule is invoked, re-trigger the fetch stage fetch: fetch # Otherwise, pass data on to the store stage store: store store: # Store the crawled documents to a directory method: directory params: path: /data/results: YAML例 管理画面例
  • 19. AGENDA 1. 自己紹介 2. 今日話すこと 3. ちょっと宣伝 4. クローラー全体像 5. Infra 6. DevOps 7. App 8. まとめ 19
  • 20. まとめ o Alibaba CloudはECサイトの中国展開が強み o Alibaba CloudはIaaSに少し機能をつけたサービスや、 PaaSが豊富 o サーバーレスにしたいが、大規模インフラ構成にな りうる、ミドルウェアや実装量が多い(拡張性があ る)アプリはコンテナ管理すると楽 o CI/CD周りは上手に他のPaaSを頼っていくとよい 20