SlideShare uma empresa Scribd logo
1 de 47
AWS CodeDeploy の使い方
ワンコマンド・デプロイ
株式会社ソニックムーブ
メディア事業部
茅根 幸夫
(ちのね ゆきお)
2017年05月23日
About Me
・茅根 幸夫(ちのね ゆきお)
・Sonicmoov Co.,Ltd.
・基幹エンジニア歴5年、Webエンジニア歴10年
・茨城県ひたちなか市出身
(右図の茅根町とは全く関係ございません。名前が同じだったので掲載しただけです)
常陸太田航空衛星センター
オセロの生みの親
長谷川 五郎氏の出身地
誰もが知ってる
水戸黄門
社会現象にもなった
ガルパン
非公認キャラ
ねば〜る君
About Sonicmoov
・BtoB BtoC
・リッチ広告配信ソリューション
https://www.sonicmoov.com/service/guile/
・LINEビジネスコネクト活用プラットフォーム「TONARIWA(トナリワ)」
https://www.sonicmoov.com/works/tonariwa/
・ワンストップ・ソリューション(企画・デザイン・開発・運用までを社内で)
・Sonicmoov LAB
https://lab.sonicmoov.com/
アジェンダ
・AWS CodeDeploy とは?
・AWS CodeDeploy の設定
・デプロイ前に自動テストができる CircleCI とは?
・CircleCI と CodeDeployの連携
・CircleCI と Bitbucketの連携
・ワンコマンドによる デプロイ・フロー
・使ってみて分かった、 AWS CodeDeploy の問題点と対策
AWS CodeDeploy とは?
AWS CodeDeploy とは?
・複数サーバをグループ化し、グループ単位で一気にデプロイ可能
・デプロイするファイルは、S3やgithubから取得可能(今回はS3から取得)
・AutoScaleグループを指定してデプロイ可能
・デプロイ失敗や、AWS CloudWatchのアラート検知でロールバック可能
・AWS SNSにイベントを通知できる(デプロイ成功通知など)
・連携できるAWS以外の外部サービスが沢山ある
AWS CodeDeploy の設定
・IAMコンソールからデプロイ用ロールを2つ使用
・AWS CodeDeploy Agent のインストールと設定
・デプロイグループの作成と編集
・AWS CodeDeployと連携出来る外部サービス紹介
IAMコンソール
からデプロイ用
のロールを作成
この「ロールARN」で制御
AWS CodeDeploy 用のロール作成(1つ目)
IAMコンソール
からデプロイ用
のロールの信頼
関係を編集
サポートされている
全てのリージョンに
アクセスを許可する
場合の設定。
AWS CodeDeploy 用のロール作成(1つ目)
IAMコンソール
からデプロイ先
EC2用にS3アク
セス可能なロー
ルをアタッチ
今回はS3からソース
をデプロイするので
S3アクセスを許可する。
S3アクセス用のロールをEC2にアタッチ(2つ目)
AWS CodeDeploy Agent とは?
・デプロイ先サーバ上で起動しているRuby製のデーモンプログラム
・AWSマネジメントコンソールや、AWS APIからのリクエストを検知する
・リクエストを検知すると appspec.yml に書かれた内容でデプロイ実行
(各サーバの /var/log/aws/codedeploy-agent/codedeploy-agent.log にログがある)
・スケールアウトが発生した場合、最後にデプロイに成功
したリビジョンを、起動時にS3からデプロイする。
OutOfService
新規起動
EC2
(E)
InService
EC2
(B)
AutoSucaling グループ
InService
EC2
(A)
S3
デプロイ
ELB
AWS CodeDeploy Agent のインストール
・デプロイ先のEC2に、CodeDeployエージェントをインストール
[公式] http://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install.html
$sudo yum update
$sudo yum install ruby
$sudo yum install wget
$cd /home/ec2-user
$wget https://bucket-name(※).s3.amazonaws.com/latest/install
$chmod +x ./install
$sudo ./install auto
※bucket-name には リージョンを指定。
東京リージョンならば「aws-codedeploy-ap-northeast-1」
$sudo service codedeploy-agent status
The AWS CodeDeploy agent is running as PID xxxx ← running中ならOK
・インストール確認
AWS CodeDeploy Agent の設定
version: 0.0
os: linux
files:
- source: / ← デプロイファイル(「/」は全て)
destination: /var/www/release/xxxxxx ← デプロイ先を指定
hooks:
BeforeInstall:
- location: scripts/BeforeInstall.sh ← デプロイ前に実行するシェルを指定(任意)
runas: sonicmoov
AfterInstall:
- location: scripts/AfterInstall.sh ← デプロイ後に実行するシェルを指定(任意)
runas: sonicmoov
・リビジョンルートに「appspec.yml」を作成し、デプロイ内容を記載する
[公式] http://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file.html
AWS CodeDeploy デプロイグループの作成&説明
デプロイグループ名
前述で作成したAWS CodeDeploy
用の「ロールARN」を設定
デプロイグループの
作成と編集
AWS CodeDeploy デプロイグループの作成&説明
このAutoScaling
グループに対して
デプロイを実施
AWS CodeDeploy デプロイグループの作成&説明
デプロイのロール
バック有効化
AWS CodeDeploy デプロイグループの作成&説明
AWS CloudWatch
のアラーム設定
AWS CodeDeploy デプロイグループの作成&説明
AWS SNSの
通知設定
AWS CodeDeploy と連携できるサービス
・AWS CodeDeployと連携できる外部パートナーサービス
[公式] http://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/integrations-partners.html
・Ansible
・Atlassian – Bamboo and Bitbucket
・Chef
・CircleCI
・CloudBees
・Codeship
・GitHub
・Jenkins
・Puppet Labs
・SaltStack
・Solano Labs
・TeamCity
・Travis CI
上記は 2017/5/21現在のAWS公式ドキュメントより引用
今回連携します。
デプロイ時の
自動テストで
利用します
CircleCI とは?
デプロイ前に自動テストができる
・CIサービスの1つで、クラウド型のサービス
- CI(継続的インテグレーション)とはプログラムの品質改善 や納期短縮 の為の習慣や手法の事。
- CIサービスとは、CIを自動化したサービスの事。
- 具体的にはエンジニアが今まで実施したテストを一気に行い、バグ等を自動で見つける。
- バグが見つかったらデプロイを中止 するので、未然にデグレを防ぐことができる。
・コンテナ上にサーバー環境を構築することができ、
テスト環境として利用可能
・1コンテナならば無料で利用可能。
コンテナ内にソフトを自由にインストール可能。
ハードウェア
OS
コンテナ管理ソフト
コンテナ
MySQL
PHP
ライブラリ
コンテナ
MySQL
PHP
ライブラリ
.....
CircleCI とは?
CircleCI と CodeDeployの連携
CircleCI と CodeDeployの連携
(概要)
:
deployment: ← CodeDeployとの連携
production:
branch: master ← CircleCIがmasterブランチへのpushを検知したら処理
codedeploy:
prod-app:
deployment_group: prod-deploy-group ← CodeDeployで定義したデプロイグループ
application_root: /
region: ap-northeast-1
revision_location:
revision_type: S3
s3_location:
bucket: codedeploy.sonicmoov-media.com
key_pattern: master/prod-app-{SHORT_COMMIT}
・リビジョンルートに「circle.yml」を作成、circle.ymlのcodedeployブロック
を使用して、CodeDeployの詳細設定を記述します。
[公式] https://circleci.com/docs/1.0/continuous-deployment-with-aws-codedeploy
CircleCI と Bitbucketの連携
・CircleCI は Bitbucketのリポジトリと連携できる。
・連携することにより Bitbucketへのpushを検知し CircleCIを動かす事が可能
<弊社のBitbucket運用ルール>
- masterブランチ(本番環境用のブランチ)
- developブランチ(開発環境用のブランチ)
- feature/[任意名称]ブランチ(個別開発用ブランチ(※))
・ブランチやその他の詳細設定は「circle.yml」に記述する。
(概要)
CircleCI と Bitbucketの連携
CircleCI と Bitbucketの連携
CircleCIのサイトにログイン
し、Bitbucketのリポジトリ
と連携する。
このリポジトリへのpushを
検知することができる。
(サイトでの設定)
CircleCI と Bitbucketの連携
(circle.ymlの設定)
general:
branches:
only:
- master ← CircleCIが検知するブランチを指定
- develop
- /feature.*/
machine: ← CircleCiのコンテナの設定(1コンテナなら無料で使える)
timezone: Asia/Tokyo
php:
version: 7.0.11 ← デフォルトではphp7.0.4が入っているので本番サーバと同じに変更
services: ← CircleCiがデフォルトでインストールしていないものをインストール
- elasticsearch - redis
:
・リビジョンルートに「circle.yml」に詳細内容を記載する
[公式] https://circleci.com/docs/1.0/configuration/
ワンコマンドによる デプロイ・フロー
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack
API
EC2
DBチェック
API
AWS
S3
slack
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
master:develop
” master : develop ” と入力すると以下の
処理を自動で行う。
・developブランチのDBのスキーマチェック
・チェック通過後にmasterブランチにマージ
・新マスターブランチで動作テスト
・新マスターブランチ動作テスト通過後に
本番環境にデプロイ
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
1
slack
slack API
Incoming
WebHooks
(slackに表示)
slack API(Outgoing WebHooks)
にアクセス
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
2
slack
slack API
Incoming
WebHooks
(slackに表示)
slack API(Outgoing WebHooks)が開発環境
のDBチェックAPI にアクセス。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
3
DBチェックAPI が実行される。
開発環境のDB構造の方が最新なので、本番
環境のDB構造が古くないかどうかチェックする。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
エラー!
xxxxxxxxxxxxxx
xxx [詳細] xxx
xxxxxxxxxxxxxx
xxxxxxxxxxxxxx
4
もしも、本番環境のDB構造(スキーマやIndex)が不一
致だったら、デプロイ処理中断。
slackにエラーを表示する。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
4
本番環境のDB構造(スキーマやIndex)が最新
ならば、developブランチをmasterブランチに
マージし、Bitbucketへpushする。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
5
マージ完了
slackにマージが成功したことを表示
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
マージ完了
6
CitcleCIとBitbucketの連携機能により、Bitbucketに
pushされたことをCircleCIが自動検知し、以下を実
行。
・CircleCIのコンテナにサーバ環境構築
・phpunitによるUnitTestを全て実行
※このステップが一番時間がかかります。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
マージ完了
エラー!
xxxxxxxxxxxxxx
xxx [詳細] xxx
7
もしも、UnitTestで1つ以上エラーが出たら、デプロ
イ処理中断。
slackにエラーを表示する。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
マージ完了
7
UnitTestを全て通過後、masterブランチのソー
スを最新のリビジョンとしてS3にアップロード
する。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
マージ完了
8
CodeDeployとCitcleCIの連携機能によ
り、デプロイ処理要求。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
slack API
Incoming
WebHooks
(slackに表示)
マージ完了
9
S3にある最新リビジョンのソースを
AutoScalingグループ内の全てのEC2に
デプロイする。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
マージ完了
master:develop
slack
マージ完了
デプロイ完了
slack API
Incoming
WebHooks
(slackに表示)
10
以下の流れでslackにデプロイ完了を表
示する。
・CodeDeployがSNSに通知
・LambdaがSNS通知を検知して
slackにデプロイ完了を表示。
AWS
S3
本番用のEC2 ×n
(masterブランチ)
AWS
CodeDeploy
AWS
SNS
AWS
Lambda
slack API
Outgoing WebHooks
(外部要求)
Incoming WebHooks
(slackに表示)
master:develop
RDS
DB
チェック
API
EC2
RDS
開発のEC2 ×1
(developブランチ)
slack
マージ完了
master:develop
slack
マージ完了
デプロイ完了
slack API
Incoming
WebHooks
(slackに表示)
10
「master:develop」と入力
しただけでデプロイ完了!
AWS CodeDeployの問題点と対策
使ってみて分かった
AWS CodeDeploy
InService
(稼働中)
Terminate
(削除中)
EC2
(D)
EC2
(E)
InService
(稼働中)
EC2
(C)
InService
(稼働中)
EC2
(B)
AutoSucaling
グループ
InService
(稼働中)
EC2
(A)
AWS
S3
<問題点>
左図のように、CodeDeployからTerminate中(削除中)の
EC2に対してもデプロイを実施してしまい、デプロイ処
理が完了しない不具合が発生。
スケールイン等により削除中の場合、EC2(D)へ
のデプロイがいつまでも完了しないため、次の
EC2(E)のデプロイが出来ない。
<対策>
AWS Supportに問い合わせた結果、本件対策用スクリ
プトを提供いただきました。
■対策用スクリプト概要
デプロイ前にインスタンスの状態をチェックして、AutoScaling 動作を
一時的に停止 (suspend)した状態でデプロイを実行し、デプロイが完
了すれば元に戻す、という一連の操作をまとめたもの。
対策用スクリプトについて
・後日、公開いたします(公開日未定)
・ご希望の方には、メールにてご提供いたします。
・本スクリプトはAWSで公式にサポートしているものではございません。
その為、管理やメンテナンスについては弊社にて対応させていただきます。
・もし何かスクリプトに関するフィードバックがございましたら、AWSで
はなく弊社までお知らせください。
ご清聴ありがとうございました。

Mais conteúdo relacionado

Mais procurados

pythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリpythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリ
Kazufumi Ohkawa
 

Mais procurados (20)

Node red basic & node-red-ug-japan
Node red basic & node-red-ug-japanNode red basic & node-red-ug-japan
Node red basic & node-red-ug-japan
 
True Cloud Native Batch Workflow for .NET with MicroBatchFramework
True Cloud Native Batch Workflow for .NET with MicroBatchFrameworkTrue Cloud Native Batch Workflow for .NET with MicroBatchFramework
True Cloud Native Batch Workflow for .NET with MicroBatchFramework
 
Node red for-collecting_information
Node red for-collecting_informationNode red for-collecting_information
Node red for-collecting_information
 
VSCode Conference Japan 2021 kyusque
VSCode Conference Japan 2021 kyusqueVSCode Conference Japan 2021 kyusque
VSCode Conference Japan 2021 kyusque
 
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
 
開発環境をDockernizeした話
開発環境をDockernizeした話開発環境をDockernizeした話
開発環境をDockernizeした話
 
Blazor WebAssembly と Windows Forms でのロジック共有例
Blazor WebAssembly と Windows Forms でのロジック共有例Blazor WebAssembly と Windows Forms でのロジック共有例
Blazor WebAssembly と Windows Forms でのロジック共有例
 
ニュースアプリで起きた不具合から学んだ 最適への一歩
ニュースアプリで起きた不具合から学んだ 最適への一歩ニュースアプリで起きた不具合から学んだ 最適への一歩
ニュースアプリで起きた不具合から学んだ 最適への一歩
 
pythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリpythonでつくるiPhoneアプリ
pythonでつくるiPhoneアプリ
 
IoTにおけるクラウドインフラからサーバサイドまでの概要的な話
IoTにおけるクラウドインフラからサーバサイドまでの概要的な話IoTにおけるクラウドインフラからサーバサイドまでの概要的な話
IoTにおけるクラウドインフラからサーバサイドまでの概要的な話
 
【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法
【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法
【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法
 
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
 
LINEにおける GitHub Enterpriseの活用事例と LINE Notifyについて
LINEにおける GitHub Enterpriseの活用事例と LINE NotifyについてLINEにおける GitHub Enterpriseの活用事例と LINE Notifyについて
LINEにおける GitHub Enterpriseの活用事例と LINE Notifyについて
 
ヤマハルーターとクラウドをVPNで繋いでDaaS環境を構築しよう
ヤマハルーターとクラウドをVPNで繋いでDaaS環境を構築しようヤマハルーターとクラウドをVPNで繋いでDaaS環境を構築しよう
ヤマハルーターとクラウドをVPNで繋いでDaaS環境を構築しよう
 
GitHub Actions で CI/CD
GitHub Actions で CI/CDGitHub Actions で CI/CD
GitHub Actions で CI/CD
 
Bicep 入門 MySQL編
Bicep 入門 MySQL編Bicep 入門 MySQL編
Bicep 入門 MySQL編
 
【Code for向け】保育園・消火栓mapを作れるアプリを作ろう!
【Code for向け】保育園・消火栓mapを作れるアプリを作ろう!【Code for向け】保育園・消火栓mapを作れるアプリを作ろう!
【Code for向け】保育園・消火栓mapを作れるアプリを作ろう!
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャ
 
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノートIoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
 
Riotでサーバレスにした話
Riotでサーバレスにした話Riotでサーバレスにした話
Riotでサーバレスにした話
 

Semelhante a 【AWS×Deployment】TechTalk #5

CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Yuki Ando
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
Hiroki Kondo
 

Semelhante a 【AWS×Deployment】TechTalk #5 (20)

AWS SUMMIT TOKYO 2012 - BASCULE SESSION
AWS SUMMIT TOKYO 2012 - BASCULE SESSIONAWS SUMMIT TOKYO 2012 - BASCULE SESSION
AWS SUMMIT TOKYO 2012 - BASCULE SESSION
 
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
 
起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020起業家的?!エンジニアのススメ | Developer Summit 2020
起業家的?!エンジニアのススメ | Developer Summit 2020
 
さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~
 
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
 
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
 
IoT/M2M展基調講演 - 「IoTビジネスの新潮流」 by SORACOM玉川 (Japan IT week 2017)
IoT/M2M展基調講演 - 「IoTビジネスの新潮流」 by SORACOM玉川 (Japan IT week 2017)IoT/M2M展基調講演 - 「IoTビジネスの新潮流」 by SORACOM玉川 (Japan IT week 2017)
IoT/M2M展基調講演 - 「IoTビジネスの新潮流」 by SORACOM玉川 (Japan IT week 2017)
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
エンジニアのキャリア開発と国際的なコミュニティづくり #efcフェスティバル2020
エンジニアのキャリア開発と国際的なコミュニティづくり #efcフェスティバル2020エンジニアのキャリア開発と国際的なコミュニティづくり #efcフェスティバル2020
エンジニアのキャリア開発と国際的なコミュニティづくり #efcフェスティバル2020
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
 
SORACOM Conference Discovery 2017 | キーノート〜IoTの最先端を探しに〜
SORACOM Conference Discovery 2017 | キーノート〜IoTの最先端を探しに〜SORACOM Conference Discovery 2017 | キーノート〜IoTの最先端を探しに〜
SORACOM Conference Discovery 2017 | キーノート〜IoTの最先端を探しに〜
 
Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下
 
What is tmcn for isit
What is tmcn for isitWhat is tmcn for isit
What is tmcn for isit
 
パーソナルデータのあり方を変える!オープンソース分散型PDS「Personium」を使ってみよう!
パーソナルデータのあり方を変える!オープンソース分散型PDS「Personium」を使ってみよう!パーソナルデータのあり方を変える!オープンソース分散型PDS「Personium」を使ってみよう!
パーソナルデータのあり方を変える!オープンソース分散型PDS「Personium」を使ってみよう!
 
熊本 HoloLens Meetup vol.0 「HoloLensアプリ開発コンテストビジネス部門で特別賞もらってきた」
熊本 HoloLens Meetup vol.0 「HoloLensアプリ開発コンテストビジネス部門で特別賞もらってきた」熊本 HoloLens Meetup vol.0 「HoloLensアプリ開発コンテストビジネス部門で特別賞もらってきた」
熊本 HoloLens Meetup vol.0 「HoloLensアプリ開発コンテストビジネス部門で特別賞もらってきた」
 
.NET の過去、現在、そして未来
.NET の過去、現在、そして未来.NET の過去、現在、そして未来
.NET の過去、現在、そして未来
 
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッションC# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
 
IoT業界で必須サービスになってきたAzure Web PubSubとAzure IoT EdgeのEFLOWについてご紹介
IoT業界で必須サービスになってきたAzure Web PubSubとAzure IoT EdgeのEFLOWについてご紹介IoT業界で必須サービスになってきたAzure Web PubSubとAzure IoT EdgeのEFLOWについてご紹介
IoT業界で必須サービスになってきたAzure Web PubSubとAzure IoT EdgeのEFLOWについてご紹介
 
概説 Data API v3
概説 Data API v3概説 Data API v3
概説 Data API v3
 

【AWS×Deployment】TechTalk #5