Apache OpenWhisk
FaaS
DS-1
• 2008
•
•
•
• API Gateway
l Apache OpenWhisk FaaS
l Apache OpenWhisk
l FaaS
1. Yahoo! JAPAN
2. FaaS
3. FaaS
4. Apache OpenWhisk
5.
6. Demo
7.
1. Yahoo! JAPAN
Yahoo! JAPAN
• : 100+
• 713 PV/Month
• : 15 +
0
2. FaaS
FaaS
• Function as a Service
•
•
•
FaaS
FaaS
3. FaaS
FaaS
• •
4. Apache OpenWhisk
Apache OpenWhisk
• FaaS
• Java Node.js
• 2016 2
• IBM OSS
• 2016 11
• Apache Incubator
• 6
•
Provider
•
Controller
•
Invoker
NGINX
Controller
Invoker InvokerInvoker
Provider
NGINX
Controller
Invoker InvokerInvoker
Provider
•
CouchDB
NGINX
Controller
Invoker InvokerInvoker
Provider
• Provider
• CouchDB
• Kafka Publish
• Invoker D
B CouchDB
C
• CouchDB
NGINX
Controller
Invoker InvokerInvoker
Provider
•
CouchDB
NGINX
Controller
Invoker InvokerInvoker
Provider
5.
•
• VM Docker
• 3 B
• Invoker 10
• DI/F C
• UI SDK
• Java Node.js
NGINX
Controller
Invoker InvokerInvoker
Provider
Azure AD
UI
Prometheus Alertmanager
Apache
OpenWhisk
Athenz
Gateway
MQ ProviderMYM Provider
SSO
Azure ADUI Athenz
Cookie
Cookie
Azure AD
UI
Prometheus Alertmanager
Apache
OpenWhisk
Athenz
Gateway
MQ ProviderMYM Provider
Gateway
Apache
OpenWhisk
Athenz
Gateway
1. namespace
namespace
2. Athenz ⇔ Basic
OpenWhisk Basic
namespace
Athenz
Provider
Apache
OpenWhisk
MQ Provider Provider
1. MQ Provider
Publish
2. MYM Provider
MYM Provider
Azure AD
UI
Prometheus Alertmanager
Apache
OpenWhisk
Athenz
Gateway
MQ ProviderMYM Provider
Prometheus Alertmanager
NGINX
Blackbox Exporter
Invoker
Controller
JMX Exporter
Grafana
6. Demo
MQ
UI(MYM)Apache
OpenWhisk
MQ Provider
1. publish
2. 3.
MYM Post
4.
MYM
UI(MYM)Apache
OpenWhisk
1. URL Post
2. 5. URL
MYM Post
6.
MYM Provider
4.
3.
7.
•
• Kubernetes
•
•
•
• S3
• WebAction
•
•
•
•
•
•

Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev