Suche senden
Hochladen
Cloud Programing for beginner
•
0 gefällt mir
•
1,446 views
S
Satoru Ishikawa
Folgen
Software
Melden
Teilen
Melden
Teilen
1 von 23
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
暁 三宅
Real world android akka
Real world android akka
Taisuke Oe
CloudWatch Eventを使ったamiの削除
CloudWatch Eventを使ったamiの削除
淳 千葉
AWS as MBaaS 〜APIキーとかの話〜
AWS as MBaaS 〜APIキーとかの話〜
Yuki Hirai
PHP on Cloud
PHP on Cloud
Akio Katayama
AWS VM import / export ハンズオン
AWS VM import / export ハンズオン
Emma Haruka Iwao
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪
崇之 清水
AWS ではじめる Programmable Cloud
AWS ではじめる Programmable Cloud
Takashi Someda
Empfohlen
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
暁 三宅
Real world android akka
Real world android akka
Taisuke Oe
CloudWatch Eventを使ったamiの削除
CloudWatch Eventを使ったamiの削除
淳 千葉
AWS as MBaaS 〜APIキーとかの話〜
AWS as MBaaS 〜APIキーとかの話〜
Yuki Hirai
PHP on Cloud
PHP on Cloud
Akio Katayama
AWS VM import / export ハンズオン
AWS VM import / export ハンズオン
Emma Haruka Iwao
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪
崇之 清水
AWS ではじめる Programmable Cloud
AWS ではじめる Programmable Cloud
Takashi Someda
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
Amazon Web Services Japan
Awsでword pressを作ってみよう(ハンズオン)
Awsでword pressを作ってみよう(ハンズオン)
Shingo Sasaki
AWS SDK for Java
AWS SDK for Java
Akio Katayama
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
Daigou Harada
社内システム on AWS
社内システム on AWS
kudo-jun
はじめての Elastic Beanstalk
はじめての Elastic Beanstalk
Amazon Web Services Japan
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
Amazon Web Services Japan
ドキュメント週末趣味のAWS Elastic Beanstalk 編
ドキュメント週末趣味のAWS Elastic Beanstalk 編
Namba Kazuo
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Masaru Tomonaga
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Masaru Tomonaga
ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用
Masaya Konishi
AWS Systems manager 入門
AWS Systems manager 入門
Serverworks Co.,Ltd.
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
Hideaki Aoyagi
JAWS-UG CLI #19 LT - VM Import by AWS CLI
JAWS-UG CLI #19 LT - VM Import by AWS CLI
Nobuhiro Nakayama
Movable type for AWS Starter Guide
Movable type for AWS Starter Guide
Six Apart KK
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
聡 大久保
Amazon ECS事始め
Amazon ECS事始め
じゅん なかざ
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
smokey monkey
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
Akio Katayama
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
Amazon Web Services Japan
Aws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそう
Genta Watanabe
AWS運用自動化への第一歩
AWS運用自動化への第一歩
Trainocate Japan, Ltd.
Weitere ähnliche Inhalte
Was ist angesagt?
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
Amazon Web Services Japan
Awsでword pressを作ってみよう(ハンズオン)
Awsでword pressを作ってみよう(ハンズオン)
Shingo Sasaki
AWS SDK for Java
AWS SDK for Java
Akio Katayama
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
Daigou Harada
社内システム on AWS
社内システム on AWS
kudo-jun
はじめての Elastic Beanstalk
はじめての Elastic Beanstalk
Amazon Web Services Japan
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
Amazon Web Services Japan
ドキュメント週末趣味のAWS Elastic Beanstalk 編
ドキュメント週末趣味のAWS Elastic Beanstalk 編
Namba Kazuo
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Masaru Tomonaga
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Masaru Tomonaga
ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用
Masaya Konishi
AWS Systems manager 入門
AWS Systems manager 入門
Serverworks Co.,Ltd.
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
Hideaki Aoyagi
JAWS-UG CLI #19 LT - VM Import by AWS CLI
JAWS-UG CLI #19 LT - VM Import by AWS CLI
Nobuhiro Nakayama
Movable type for AWS Starter Guide
Movable type for AWS Starter Guide
Six Apart KK
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
聡 大久保
Amazon ECS事始め
Amazon ECS事始め
じゅん なかざ
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
smokey monkey
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
Akio Katayama
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
Amazon Web Services Japan
Was ist angesagt?
(20)
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
Awsでword pressを作ってみよう(ハンズオン)
Awsでword pressを作ってみよう(ハンズオン)
AWS SDK for Java
AWS SDK for Java
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
AWSのElastic BeanstalkでWordPressを 構築レスで導入してみる。
社内システム on AWS
社内システム on AWS
はじめての Elastic Beanstalk
はじめての Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
AWS Black Belt Tech シリーズ 2015 - AWS Elastic Beanstalk
ドキュメント週末趣味のAWS Elastic Beanstalk 編
ドキュメント週末趣味のAWS Elastic Beanstalk 編
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
【改訂版】Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用
AWS Systems manager 入門
AWS Systems manager 入門
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
JAWS-UG CLI #19 LT - VM Import by AWS CLI
JAWS-UG CLI #19 LT - VM Import by AWS CLI
Movable type for AWS Starter Guide
Movable type for AWS Starter Guide
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
Amazon ECS事始め
Amazon ECS事始め
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
AWS Black Belt Techシリーズ AWS CloudTrail & CloudWatch Logs
Ähnlich wie Cloud Programing for beginner
Aws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそう
Genta Watanabe
AWS運用自動化への第一歩
AWS運用自動化への第一歩
Trainocate Japan, Ltd.
当社のawsへの取組
当社のawsへの取組
Mercari Inc.
JAWS-UG アーキテクチャ専門支部(ハイブリッド分科会) #9 EC2 Run Commnadのいいところ
JAWS-UG アーキテクチャ専門支部(ハイブリッド分科会) #9 EC2 Run Commnadのいいところ
Nobuhiro Nakayama
同じサービスをECSとOpsWorksで運用してみた
同じサービスをECSとOpsWorksで運用してみた
Jun Ichikawa
[AWSマイスターシリーズ] AWS SDK for Java / .NET
[AWSマイスターシリーズ] AWS SDK for Java / .NET
Amazon Web Services Japan
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
Hiraku Komuro
AWS Startup Use Cases 2015
AWS Startup Use Cases 2015
Eiji Shinohara
Open Source x AI
Open Source x AI
Tsukasa Kato
Osc fukuoka xAI Meetup
Osc fukuoka xAI Meetup
ru pic
Windows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWS
Amazon Web Services Japan
Amazon EC2 Container Service Deep dive
Amazon EC2 Container Service Deep dive
Amazon Web Services Japan
【17-C-2】 クラウド上でのエンタープライズアプリケーション開発
【17-C-2】 クラウド上でのエンタープライズアプリケーション開発
lalha
Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2
Amazon Web Services Japan
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
Midori Oge
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Preferred Networks
AWSマネージドサービスとOSSによるミッションクリティカルなシステムの実現
AWSマネージドサービスとOSSによるミッションクリティカルなシステムの実現
TIS Inc.
EC2でマルチキャスト
EC2でマルチキャスト
Kenta Yasukawa
AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境
Katsutoshi Nagaoka
Cm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kaji
Hiroyuki Kaji
Ähnlich wie Cloud Programing for beginner
(20)
Aws tools for power shellをつかいこなそう
Aws tools for power shellをつかいこなそう
AWS運用自動化への第一歩
AWS運用自動化への第一歩
当社のawsへの取組
当社のawsへの取組
JAWS-UG アーキテクチャ専門支部(ハイブリッド分科会) #9 EC2 Run Commnadのいいところ
JAWS-UG アーキテクチャ専門支部(ハイブリッド分科会) #9 EC2 Run Commnadのいいところ
同じサービスをECSとOpsWorksで運用してみた
同じサービスをECSとOpsWorksで運用してみた
[AWSマイスターシリーズ] AWS SDK for Java / .NET
[AWSマイスターシリーズ] AWS SDK for Java / .NET
LambdaとMobileの美味しいかもしれない関係
LambdaとMobileの美味しいかもしれない関係
AWS Startup Use Cases 2015
AWS Startup Use Cases 2015
Open Source x AI
Open Source x AI
Osc fukuoka xAI Meetup
Osc fukuoka xAI Meetup
Windows 開発者のための Dev&Ops on AWS
Windows 開発者のための Dev&Ops on AWS
Amazon EC2 Container Service Deep dive
Amazon EC2 Container Service Deep dive
【17-C-2】 クラウド上でのエンタープライズアプリケーション開発
【17-C-2】 クラウド上でのエンタープライズアプリケーション開発
Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
AWSマネージドサービスとOSSによるミッションクリティカルなシステムの実現
AWSマネージドサービスとOSSによるミッションクリティカルなシステムの実現
EC2でマルチキャスト
EC2でマルチキャスト
AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境
Cm re growth-reinvent-app304-kaji
Cm re growth-reinvent-app304-kaji
Mehr von Satoru Ishikawa
データ分析を支える技術 データ分析基盤再入門
データ分析を支える技術 データ分析基盤再入門
Satoru Ishikawa
BigData-JAWS#16 Lake House Architecture
BigData-JAWS#16 Lake House Architecture
Satoru Ishikawa
データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門
Satoru Ishikawa
re:Growth2019 Analytics Updates
re:Growth2019 Analytics Updates
Satoru Ishikawa
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
Satoru Ishikawa
re:invent 2018 analytics関連アップデート
re:invent 2018 analytics関連アップデート
Satoru Ishikawa
Re invent 2017 データベースサービス総復習!
Re invent 2017 データベースサービス総復習!
Satoru Ishikawa
20161214 re growth-sapporo
20161214 re growth-sapporo
Satoru Ishikawa
Classmethod awsstudy ec2rds20160114
Classmethod awsstudy ec2rds20160114
Satoru Ishikawa
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
Satoru Ishikawa
db-tech-showcase-sapporo-b24-20150911p
db-tech-showcase-sapporo-b24-20150911p
Satoru Ishikawa
Cmdevio2015 devday-g-3
Cmdevio2015 devday-g-3
Satoru Ishikawa
Cm re growth-devio-mtup11-sapporo-004
Cm re growth-devio-mtup11-sapporo-004
Satoru Ishikawa
Running Amazon S3 Encryption
Running Amazon S3 Encryption
Satoru Ishikawa
Mehr von Satoru Ishikawa
(14)
データ分析を支える技術 データ分析基盤再入門
データ分析を支える技術 データ分析基盤再入門
BigData-JAWS#16 Lake House Architecture
BigData-JAWS#16 Lake House Architecture
データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門
re:Growth2019 Analytics Updates
re:Growth2019 Analytics Updates
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
re:invent 2018 analytics関連アップデート
re:invent 2018 analytics関連アップデート
Re invent 2017 データベースサービス総復習!
Re invent 2017 データベースサービス総復習!
20161214 re growth-sapporo
20161214 re growth-sapporo
Classmethod awsstudy ec2rds20160114
Classmethod awsstudy ec2rds20160114
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
re:Growth ビッグデータ観点で見た AWS re:Invent 2015
db-tech-showcase-sapporo-b24-20150911p
db-tech-showcase-sapporo-b24-20150911p
Cmdevio2015 devday-g-3
Cmdevio2015 devday-g-3
Cm re growth-devio-mtup11-sapporo-004
Cm re growth-devio-mtup11-sapporo-004
Running Amazon S3 Encryption
Running Amazon S3 Encryption
Cloud Programing for beginner
1.
1Copylight © Classmethod,
Inc. 使ってわかる クラウドプログラミング AWS勉強会 in 北海道 Developers.IO Meetup 05(LT) 2014/06/28 クラスメソッド株式会社 石川 覚
2.
2Copylight © Classmethod,
Inc. 自己紹介 石川 覚 (いしかわ さとる) • SIer、IP電話開発会社を経て • CMに2014/06 join • 札幌出身、東京に8年 • Linux, Java, MySQL • 自称 何でも屋 • 当然 AWS好き クラスメソッド株式会社 ソリューションアーキテクト
3.
3Copylight © Classmethod,
Inc. 概要 • クラウドプログラミングとは • AWS SDKの紹介 • AWS SDK for Java の開発環境 • アプリ用のアカウント作成 • EC2〜起動してみよう! • S3〜DropBoxを垣間見る • EC2上で動作させる時の違い • 他のAWSサービスとの比較 • 最後に
4.
4Copylight © Classmethod,
Inc. クラウドプログラミングとは • “Programmable Infrastructure” クラウドが提供するサービスやマシーンリソースの制御 や監視ができる。 • 自社のサービスにクラウドサービスを取り込む S3をストレージサービスのバックエンドとして取り込 んだり、SaaS/PaaS/IaaSのバックエンドのインフラと して取り込む。 AWS SDK
5.
5Copylight © Classmethod,
Inc. AWS SDKの紹介(1) • AWS SDKとは – AWSの様々なサービスを操作できるSDK – 各サービスの各操作にAPIが定義 – 細かい制御や自動化が魅力 • 対応言語 • AWS SDK for Java • AWS SDK for .Net • AWS SDK for Ruby • AWS SDK for PHP • AWS SDK for Node.js • AWS SDK for Android • AWS SDK for iOS • AWS SDK for Python(boto) • AWS SDK for Javascript(Browser) ※ 正式なSDK以外にもあります
6.
6Copylight © Classmethod,
Inc. AWS SDKの紹介(2) • AWS SDKの動作イメージ 以下、PCからAWSの通信の例 (EC2の場合はIAMRole) 通信/HTTPS 起動・停止 Put、Get DB起動 バックアップ 情報取得 REST/SOAP AWS SDK Credential APIロギング
7.
7Copylight © Classmethod,
Inc. AWS SDK for Java の開発環境 • Eclipse IDE for Java EE Developers – http://www.eclipse.org/downloads/ • AWS SDK & AWS Toolkit for Eclipse – 導入手順 [Help] > [Install New Software...] [Work with]に http://aws.amazon.com/jp/eclipse と入力して [return]を押す。 「AWS Toolkit for Eclipse」を 選択してインストールする。
8.
8Copylight © Classmethod,
Inc. アプリ用のアカウント作成(1) • プログラミングその前に...IAMユーザ 普段Management Consoleに接続しているアカウント は、Unixの世界の”root”ユーザのようなもので、セ キュリティリスクが高く、公開された場合に回避する すべがありません。そのためユーザ権限でアプリを動 作させてはいけません。 以降、IAMユーザアカウントを登録します。 ※IAMとは IAM(Identity and Access Management)により、AWSサービス およびリソースへのアクセスを安全にコントロールすることができ ます。IAM を使用すると、AWS のユーザーとグループを作成およ び管理し、アクセス権を使用して AWSリソースへのアクセスを許可 および拒否できます。
9.
9Copylight © Classmethod,
Inc. アプリ用のアカウント作成(2) • アカウントの作成 Management Consoleで”IAM”の画面を開き、 “Users”をクリックします。 [Create New Users]ボタンを押す と、ダイアログが表示されるので、 ユーザ名を入力する。 今回は「hokkaido」。
10.
10Copylight © Classmethod,
Inc. アプリ用のアカウント作成(3) • Credential ファイルの取得と設定 アカウントを作成すると、上記のダイアログが表示されます。 [Download Credentials] ボタンを押し、Credentialsファイルをダウ ンロードしてください。ホームディレクトリの.aws/credentialsファ イルに “Access Key Id”と“Secret Access Key”を以下の形式で書いて ください。 [default] aws_access_key_id = AAAAAAAAAAAAAAAAAAA aws_secret_access_key = abCDEfghIJKlMNopqRSVwxyZ01234567890 ※Eclipseはプロパティファイルを生成するが上記のファイルを参照。
11.
11Copylight © Classmethod,
Inc. アプリ用のアカウント作成(4) • 権限の付与 “hokkaido”アカウントをチェック、 “Permissions”タブを選択して、 [Attched User Policy]ボタンを押す。 今回は”Power User Access” 権限を付与、[Select]ボタンを押す。ダ イアログが表示された後、[Apply Policy]ボタン押すと適用されます。
12.
12Copylight © Classmethod,
Inc. EC2~起動してみよう!(1) • AMIからEC2インスタンスを起動させる – EC2Clientインスタンスの生成 – AMIからEC2インスタンスを生成 – EC2インスタンスを起動 実行した回数分インスタンスが起動される。
13.
13Copylight © Classmethod,
Inc. EC2~起動してみよう!(2) • EC2Clientインスタンスの生成 ※リージョンを指定しないとインスタンスの情報取得に失敗する。 // EC2 Clientインスタンスの生成 ec2 = new AmazonEC2Client(); ec2.setRegion("ap-northeast-1"); “Access Key Id”と“Secret Access Key”をコードやプ ロパティに書かない! String accessKey = "AAAAAAAAAAAAAAAAAAA"; String secretKey = "abCDEfghIJKlMNopqRSVwxyZ01234567890"; credentials = new BasicAWSCredentials(accessKey, secretKey); // EC2 Clientインスタンスの生成 ec2 = new AmazonEC2Client(credential); ec2.setRegion(NORTHEAST_1);
14.
14Copylight © Classmethod,
Inc. EC2~起動してみよう!(3) • AMIからEC2インスタンスを生成 • EC2インスタンスを起動 // EC2インスタンス起動 RunInstancesResult result = ec2.runInstances(rir); // AMIからEC2インスタンス生成 RunInstancesRequest rir = new RunInstancesRequest(); rir.withSubnetId("subnet-549756926"); rir.withSecurityGroupIds("sg-37968362"); rir.withImageId(“ami-a3d23745"); rir.withKeyName(“key.pem"); rir.withInstanceType("t1.micro"); rir.withMonitoring(true); rir.withMinCount(1); rir.withMaxCount(1); … サブネット … セキュリティグループ … AMIのID … keypairのkey … インスタンスタイプ … モニタリング(CloudWatch)
15.
15Copylight © Classmethod,
Inc. S3〜DropBoxを垣間見る (1) • バケットにディレクトリ、ファイルを順に保存 – S3Clientインスタンスの生成 – Bucketの作成 – ファイルの保存 – ファイルの取得 – 期限付きURLによるファイル公開
16.
16Copylight © Classmethod,
Inc. S3〜DropBoxを垣間見る (2) • S3Clientインスタンスの生成 • バケットの作成 • ファイルの保存 ※リージョンを指定しないとインスタンスの情報取得に失敗する。 // S3 Clientインスタンスの生成 s3 = new AmazonS3Client(); s3.setRegion("ap-northeast-1"); // S3 Clientインスタンスの生成 String bucketName = "hokkaido-" + UUID.randomUUID(); s3.createBucket(bucketName); // ファイルの保存 s3.putObject(new PutObjectRequest(bucketName, "data/hoge", new File("/data/hoge.txt")));
17.
17Copylight © Classmethod,
Inc. S3〜DropBoxを垣間見る (3) • ファイルの取得 S3Object object = s3.getObject(new GetObjectRequest(bucketName, "data/hoge")); InputStream is = null; FileOutputStream fos = null; try { is = object.getObjectContent(); fos = new FileOutputStream("/tmp/hoge.bin"); byte[] buffer = new byte[1024*1024]; int readSize = -1; while( (readSize = is.read(buffer, 0, buffer.length)) != -1) { fos.write(buffer, 0, readSize); } fos.flush(); } finally { if (is != null) is.close(); if (fos != null) fos.close(); } データ受信中はS3Clientの インスタンスがGCされない ようにスコープに注意する
18.
18Copylight © Classmethod,
Inc. S3〜DropBoxを垣間見る (4) • 期限付きURLによるファイル公開 Calendar cal = Calendar.getInstance(); cal.add(Calendar.SECOND, 30); Date expiration = cal.getTime(); URL url = s3.generatePresignedUrl(bucketName, "data/hoge", expiration); 制限付きURLの例 https://hokkaido-123456a71-f2c2-468a-be84-3bb9911ce123.s3-ap- northeast- 1.amazonaws.com/data/aaa?AWSAccessKeyId=ABDEFGHHJKLMNOPSQ &Expires=1403919669&Signature=ejejfqfqjfMP669IfcuHEz%2BduniFs %3D 30秒経過後は“AccessDenied”と なります。
19.
19Copylight © Classmethod,
Inc. EC2上で動作させる時の違い(1) • IAMロールの利用 – IAMロールとはAWSのサービスやアクセスコント ロール基盤。 – EC2に対してアクセス権限を割り当てることでインス タンスのファイルシステム上にCredentialsファイル を持たない。 – 侵入されCredentials奪われた場合に悪用されるリス クが回避できる他に、EC2のAMIのポータビリティが 向上する。
20.
20Copylight © Classmethod,
Inc. EC2上で動作させる時の違い(2) • IAMロールに作成と権限の付与 • EC2の起動設定時にIAMロールの指定 EC2をLaunchの”Step 3: Configure Instance Details” に て、作成したIAMロールを指定する。 • Credentialファイルは不要 ホームディレクトリの.aws/credentialファイルは不要 Management Consoleで”IAM”の画面を開き、 “Roles”をクリックします。 以降は、IAMユーザを作成した方法で作成する。
21.
21Copylight © Classmethod,
Inc. 他のAWSサービスとの比較 • 他のAWSの制御や自動化との相違点 – AWS CLI Amazon Linuxではインストール済みなので、shellコマンドと 容易に組み合わせることができる。AWS SDKのような細かな 制御には向かない。 – CloudFormation 構成をテンプレート化により、一発で環境構築ができる。構築 後の変更に対応していないので、使い捨ての環境や基本的な構 成の構築に向いている。 – OptWorks(ベータ) AWS版のchef。今後の改善を期待する。
22.
22Copylight © Classmethod,
Inc. 最後に • SDKのAPIに触れることでAWSの仕組みを理解 • IAMユーザ/IAMロールを使いこなして安心・ 安全なAWSの利用 • Management Console以上にAWSを制御する 手段 • これまで以上にAWSのサービスを効果的に活用
23.
23Copylight © Classmethod,
Inc. ご清聴ありがとうございました。
Jetzt herunterladen