AWS
費用見積もりサイト
https://calculator.s3.amazonaws.com/index.html
作ったばかりのインスタンスでsu -
sudo su -
サービス集
AWS-EC2:Elastic Compute Cloud
リモートサーバ関連
AWS-EBS:EC2のストレージ周り
AWS-AMI:EC2のインスタンスを作る元ネタ
AWS-S3:Amazon Simple Storage Service
リモートストレージ関連
AWS-AMI:Identity and Access Management
ユーザー作ったり権限設定したり
AWS-Route53
DNSサービス。ドメインを買ったりできる
IAM Identity and Access Management ユーザ作ったり権限設定したり
EC2 Elastic Cloud Computing リモートサーバ関係
EBS Elastic Block Store EC2のストレージ周りを担当する
S3 リモートストレージ関係
table:用語集
IAMユーザ 会員登録したユーザだと権限が広過ぎるので、ある程度制限したユーザ
ルートユーザ IAWユーザの逆。全権限を持つユーザ
AMI アマゾンマシンイメージ。ハードウェアの定義らしい
VPC AWS内部のLANの事
インスタンス AMIをコピーして、実行中になった仮想マシン的なもの
リージョン インスタンスが実行されている地域、異なるリージョン同士では直接通信できない
ルートデバイスボリューム AMIが保存されている記憶領域。
AWS Kinesis めっちゃ性能の良いキューイング専用サーバみたいなやつ
AWS SQS SimpleQueueService。Kinesisの簡易版・・・に見える・・・
AWS Lambda EC2抜きにサーバアプリケーションを動かす環境?
AWS S3 静的ファイルホスティング
AWS Route 53 DNS。ドメインを買える。
CloudFront キャッシュサーバ・・・だと思ってるけど他にも色々出来そう
OAI オリジンアクセスアイデンティティ。論理ユーザみたいなやつ
ルートデバイスボリューム
AMIが保存されている記憶領域。
Amazon EC2 インスタンスストア backed と Amazon EBS backed から選べる。 推奨は後者
ルートデバイスタイプは、AMIに紐づいた情報なので、AMIを選ぶと勝手に決まる
AWS Kinesis
事例からAmazon Kinesisとは何なのかを学ぶ | DevelopersIO
あきんどスシロー様のAWS支援事例|クラスメソッドの事例
逐次で来る大量のデータをいったん溜め込む振る舞いをするそうな
AWS SQS(SimpleQueueService)
【AWS】SQSをただただ触ってみただけの話 - ニクニクドットミー
Amazon SQS と Kinesis はどう違うのか?~ユーザが求めるキュー(queue)の姿~|AWSを使い倒せ | GiXo Ltd.
AWS Lambda
AWS初心者入門 第7回 「Lambda」ってなにがスゴイんですか? | 連載コラム 元SEママの情シスなりきりAWS奮闘記 | マネージドクラウド with AWS
HTTPリクエスト以外にも、S3へのアップロードやKinesisのストリーミングをトリガに何か動かすこともできるらしい。
海外のニュースメディアではWebサイトに表示する画像を異なるデバイスに合わせてリサイズするような処理で使われているという。
新規アカウントセットアップ
Amazon EC2 でのセットアップ - Amazon Elastic Compute Cloud
AWSユーザの作成
IAWユーザの作成
AWSユーザの権限が広すぎるから、少し絞ったアカウント作ってねという話
Amazon EC2 でのセットアップ - Amazon Elastic Compute Cloud
キーペアの作成
上記で作成したIAWユーザでログインした後、キーペアを作ることで、ログインしているIAWユーザのPEMファイルを作れる(ここではAdministrator)
Amazon EC2 でのセットアップ - Amazon Elastic Compute Cloud
鍵(PEMファイル)作成後、SSH接続する際にPuttyだと不便が多いので、試しにRLoginを導入
Windowsターミナルソフト + Rlogin が最高すぎる!! - Qiita
VPCの作成
要するに、AWS内のローカルネットワークの定義。
Amazon EC2 でのセットアップ - Amazon Elastic Compute Cloud
セキュリティグループの作成
要するにファイアーウォール。インバウンドに許可するポートとIPを書く
Amazon EC2 でのセットアップ - Amazon Elastic Compute Cloud
EC2インスタンスの作成
基本的には画面の通りに入力すればいける
ボリュームの作成を今まで行っていなかったので、インスタンス作成時に合わせて作ってるみたい
EC2にGitLabのインストール
インストール済のAMIがあるのでそれを使う
Redirecting
インスタンス作ったのに公開されない。SSHは動く
VPC周りの設定見直し
インターネットゲートウェイがある事、VPCに紐づいていること
パブリック用のサブネットを作成
ルートテーブルに0.0.0.0/0をゲートウェイに向けた定義
ルートテーブルにパブリック用のサブネットを紐づけ
どうもダメっぽい
手作業でインストールしてみる
AmazonLnux
Amazon LinuxにGitLabをインストール - Qiita
Ubuntu
Ubuntu Linux 16.04 LTSに、GitLab Community Editionをインストールする
t2.microだとメモリが足りなくてインストールできない
t2.mediumにしたら動いた。
初回アクセス
初回アクセスしたらrootユーザのパスワード求められるので作成。
その後は普通に会員登録とかする
お値段
t2.mediumはざっくり月5千円くらい
DynamoDBのローカル環境
DynamoDBをlocal環境で動かしてみる
DynamodbLocalをダウンロード
tar zxvfで解凍
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDbで起動
AWS-CLIの用意
CentOSにAWS CLIをインストールする – kumonchu.com
CentOSの場合
pip(python-pip)インストール
code:sh
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py
AWS CLIインストール
sudo pip install awscli
AWS 値段計算ツール
Amazon Web Services Simple Monthly Calculator
AWSにSSHで接続
インスタンス作成時に作成したキーペアを用意
AWSインスタンスのデフォルトユーザはec2-user
code:ssh
Host smt-t01
HostName ec2-54-214-225-51.us-west-2.compute.amazonaws.com
user ec2-user
IdentityFile ~/.ssh/takahashi_key.pem
AWSのEC2でちょっとつまづき
新規にインスタンス作ったら、秘密鍵の拡張子がpemになっててビビる。
~/.ssh/configに普通にパス書けば良いよ
ユーザー名、いつも忘れるけどデフォルトはec2-userです。これも未定義で最初間違えた
AWS CLI
始め方
https://udemy.benesse.co.jp/development/system/aws-cli.html
認証方式が変わって、アクセスキーを使った認証は推奨されなくなった(けど、推奨の方法は敷居が高すぎる・・・)