- 1. 【これからプログラミング&クラウドを始める人向け】AWS Cloud9 を利用して Ruby の開発環境を作ってみる② – AWS Cloud9 の環境構築
- 2. 【これからプログラミング&クラウドを始める人向け】AWS Cloud9 を利用して Ruby の開発環境を作ってみる① – AWSアカウント準備編
- 3. AWS ElasticBeanstalk 環境を切り替える方法(EB CLI)
- 4. EC2 インスタンスの作成手順
- 5. バーチャルホストのやり方
- 6. LambdaでCloudWatchLogsのログ保存期間を変更する
- 7. Amazon EKS のチュートリアルで Kubernetes を理解する #02 アプリのデプロイ
- 8. Amazon EKS のチュートリアルで Kubernetes を理解する #01 クラスタ作成
- 9. CFnの戻り値(Ref,Fn::GetAtt属性)が少しわかったので共有
- 10. AWS認定SysOpsアドミニストレーターアソシエイトを受験した時の話
- 11. CloudWatch Eventsで別のアカウントをイベントターゲットに出来る「Event Bus」
- 12. デプロイグループのメモ
- 13. クラウドアーキテクチャ構築指針 まとめのまとめ
- 14. コンピューティングサービス
- 15. 【AWS完全に理解したへの道】 ELB 基本編
- 16. EC2上のWordPressの乗っ取りを放置していたら不正利用のメールが来た話
- 17. AWS IAM について
- 18. あえて継続的にデプロイしないElasticBeanstalkへのデプロイ環境を構築しました。
- 19. 【API Gateway】HTTP API 使ってみた
- 20. EFS ファイルサーバーへの移行 – Nextcloud 環境の構築を通じて AWS での環境構築を体験する③
【これからプログラミング&クラウドを始める人向け】AWS Cloud9 を利用して Ruby の開発環境を作ってみる② – AWS Cloud9 の環境構築
# はじめに
この記事は [【これからプログラミング&クラウドを始める人向け】AWS Cloud9 を利用して Ruby の開発環境を作ってみる① – AWSアカウント準備編](https://qiita.com/KCbogard/items/3cd4605f54c27377da38) の続きになります。# AWS Cloud9 のセットアップ
– 前回作成した IAM ユーザーを利用してコンソールに入り Cloud9 と検索し選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321336/8754dd52-e64f-7d78-9785-8fd8c5d4e796.png)– AWS Cloud9 のコンソールから「Create environment」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321336/9ebb8153-5406-1514-93fa-9a4ae08
【これからプログラミング&クラウドを始める人向け】AWS Cloud9 を利用して Ruby の開発環境を作ってみる① – AWSアカウント準備編
# はじめに
## 前置き
プログラミングを勉強しよう!と思ったときに躓くポイントでもある開発環境の構築
今回は AWS を利用してクラウド上に開発環境を作っていく手法を紹介していきます
勉強をスタートしたタイミングで同時にクラウドを触ることでモダンな開発環境も理解していきましょう## AWS Cloud9 とは
– Cloud9 というブラウザで利用できる IDE (統合開発環境)をAWSが買収
– AWS の各種サービスと連携しやすいサービスとして2017年末にリリース
– クラウド最大手からクラウド上での開発サービスを提供し、開発環境もクラウド上で持つトレンドが出来つつある## 利用にあたって必要なもの
– AWS 登録のために以下の登録が必要です
– メールアドレス
– クレジットカード(課金が発生しない無料利用も可能)
– ユーザー認証用の電話番号– ブラウザの設定
– 広告ブロック用のアドオンを導入している場合はオフ## AWS Cloud9 の利用料金の話
– 課金の仕様
– AWS Cloud9 の利用そ
AWS ElasticBeanstalk 環境を切り替える方法(EB CLI)
# はじめに
一つのサービスを提供する場合でも、Blue-Green Deploymentをする時は複数の環境を使用することになります。
EB CLIを使って、 ElasticBeanstalk の環境を切り替える方法をすぐに確認できるようにまとめさせていただきました。#### 関連リンク
関連リンクを下記に載せておくので、必要であれば参考にしてください。。* ElasticBeanstalk Blue-Green Deployment
* https://qiita.com/syukan3/items/28eba7462c26409773e6
* AWS CLI アカウントを切り替える方法
* https://qiita.com/syukan3/items/d01824e5b8f6ac9c387c# EB CLI
Elastic Beanstalk コマンドラインインターフェイス(EB CLI)の略。
Elastic Beanstalk をターミナルからコマンドを操作することで、ローカルリポジトリからの環境の作成、更新、およびモニタリングを簡素化すること
EC2 インスタンスの作成手順
マネジメントコンソールへログインし、EC2のダッシュボードへ移動します。
##インスタンスの作成
1.EC2>インスタンスのダッシュボードへ移動し、「インスタンスの作成」ボタンをクリック。
2.次にマシンの選択。初学者の方は基本的の無料利用枠の下記のマシンを選択。
3.インスタンスタイプの選択。こちらも無料
バーチャルホストのやり方
サイトを5個立ち上げたとき、やったこと。
#AWS Beanstalkの利用
#バーチャルホスト化
LambdaでCloudWatchLogsのログ保存期間を変更する
# 0. 筆者環境
AWS Lambda: Python 3.8
# 1. 概要
今回はLambda Functionのロググループを大量にログ保持期間の変更が必要になったので、
Lambdaを叩けば一括で変更できるような仕組みを作った。# 2. 使い方
こーど1とこーど2でLambdaを作成、Lambdaの環境変数に以下を設定し実行。
pattern: 変更したいロググループの名前(正規表現)
days: 変更したいログ保存期間![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/237765/4e706f18-5c55-d9c1-1f72-7f28c5655c7b.png)
# 3. こーど1
“`Python3
import boto3
import osdef setLogretention(func_list):
policies_dict = {}
policies = []
days = os.environ[‘days’]
Amazon EKS のチュートリアルで Kubernetes を理解する #02 アプリのデプロイ
# はじめに
本記事は、以下の内容の続きになります。– [Amazon EKS のチュートリアルで Kubernetes を理解する #01 クラスタ作成](https://qiita.com/takanorig/items/6068aff9b52c71610609)
前回、k8sクラスタを作成したので、そこにアプリケーションをデプロイしてみます。
## 前提条件
– k8sのクラスタが作成されており、ワーカーノードが稼働していること。# チュートリアル:Guestbook
Kubernetesのサンプルアプリケーションである **Guestbook** を利用します。
フロントエンドの画面と、Redis(マスター/スレーブ構成)からなるアプリケーションです。Guestbook の詳細については、以下のページを参照してください。
– https://github.com/kubernetes/examples/blob/master/guestbook-go/README.md
## Pod/Serviceの登録
PodやServiceの定義ファイルは、すでに上
Amazon EKS のチュートリアルで Kubernetes を理解する #01 クラスタ作成
# はじめに
これまで Kubernetes をちゃんと触ったことが無かったのですが、2019年11月に [マネージド型ノードグループがリリース](https://aws.amazon.com/jp/blogs/containers/eks-managed-node-groups/) されて、ノードの管理などもより簡単になったそうなので、Aamazon EKS のチュートリアルを元に、Kubernetes の理解をしていこうかと思います。
今回、クラスタの作成には “`eksctl“` を利用します。– Aamazon EKS のチュートリアル
– https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/getting-started.html# 環境
開発環境は以下の通りです。
| 環境/ツール | バージョン |
| —- | —- |
| macOS | Catalina(10.15.2) |
| Python | 3.7.6 |
| Homebrew | 2.2.2 |
| awscli
CFnの戻り値(Ref,Fn::GetAtt属性)が少しわかったので共有
#CFnの戻り値(Ref,Fn::GetAtt属性)の説明
###戻り値とは、指定されると何かしらの値を返してくれる値と言うイメージです。
自動販売機でボタン押すと指定したものに準じて、飲み物を提供してくれる的な感じ?いい例が浮かびません(笑)###GetAttはリソースごとに決められている物理ID(*)を引っ張ってくる感じです
なので**リファレンスを見に行かないとわかりません。**
Fn::GetAtt属性リファレンスです。
>パラメータ
logicalNameOfResource
必要な属性を含むリソースの論理名 (論理 ID とも呼ばれます)。>attributeName
必要としている値のある、リソース固有の属性の名前です。各リソースタイプで使用できる属性の詳細については、リソースの参照ページに説明されています。CFnのテンプレートの中で決めたリソース名のことを論理名と言います。
attributeNameはリソース固有の属性名で、**指定されると物理IDとして返してくれます**
(※)物理IDとはリソースが作られたときにAWSによって割り振られたIDのこと
AWS認定SysOpsアドミニストレーターアソシエイトを受験した時の話
## この記事の概要
2020/01/13に
**AWS認定SysOpsアドミニストレーター – アソシエイト**
(AWS Certified SysOps Administrator – Associate (SOA))
を受験したので、その時の記録## 試験の概要
![aws_cer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140013/09c3ce3a-8b31-28ee-6380-e349cde4f5dd.png)
アソシエイトレベル(下から2番目)の**管理・運用者向け**試験です。
「AWSプラットフォームでの**デプロイ、管理および運用に関する技術的な専門知識**を認定します。AWSベースのアプリケーションの**運用に関する1年以上の実務経験**を持つ方が対象です。」
AWS公式より引用:[引用元](https://aws.amazon.com/jp/certification/benefits/)**◼︎ 試験要項**
問題数 :65問
試験時間 :130分
受験
CloudWatch Eventsで別のアカウントをイベントターゲットに出来る「Event Bus」
https://dev.classmethod.jp/cloud/aws/cloudwatch-events-event-bus/
アカウントBでEvent Busへの権限設定
↓
アカウントAでEvent Bus(アカウントB)をターゲットにしたルールを作成
↓
アカウントBでルールを作成(ソースでアカウントAのみに絞るなどできる)
デプロイグループのメモ
アプリ作成
デプロイグループ作成
デプロイコンフィグ作成
リビジョンのアップロード
デプロイ
チェック
リデプロイ> CodeDeploy アプリケーション用に 1 つ以上のデプロイグループを指定できます。
> デプロイグループには、デプロイ中に使用される設定と構成が含まれています。ほとんどのデプロイグループ設定は、アプリケーションで使用される compute platform によって異なります。ロールバック、トリガー、アラームなどの一部の設定は、どの compute platform 用のデプロイグループでも設定できます。
> デプロイグループでは、新しいバージョンの Lambda 関数にトラフィックをルーティングする方法を指定します。また、アラームとロールバックを指定する場合もあります。
クラウドアーキテクチャ構築指針 まとめのまとめ
以前書いたクラウド環境構築の指針に関する記事を整理しました。
#### AWS Well-Architedted フレームワーク ホワイトペーパー
AWS ソリューションアーキテクトのための設計方針。
試験でもベースラインの知識として問われます。[AWS Well-Architected Framework ホワイトペーパーまとめ 1 【導入編】](https://qiita.com/Catetin0310/items/6e5bd6cb573aa38f0fc0)
[AWS Well-Architected Framework ホワイトペーパーまとめ 2 【運用上の優秀性】](https://qiita.com/Catetin0310/items/179f9c587a6b8b540a8a)
[AWS Well-Architected Framework ホワイトペーパーまとめ 3 【セキュリティ】](https://qiita.com/Catetin0310/items/08e1c4843cc5571cd3a5)
[AWS Well-Architected Framework ホ
コンピューティングサービス
出展:[AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー](https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E8%B3%87%E6%A0%BC%E8%A9%A6%E9%A8%93%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88-AWS%E8%AA%8D%E5%AE%9A-%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89%E3%83%97%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%BC-%E5%B1%B1%E4%B8%8B-%E5%85%89%E6%B4%8B/dp/4797397403/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=3ERB303UT76DT&keywords=aws%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89%E3%83%97%E3%83%A9%E3%82
【AWS完全に理解したへの道】 ELB 基本編
# 【AWS完全に理解したへの道】 ELB 基本編
![スクリーンショット 2020-01-13 10.16.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/70486/6d0f1abe-433d-0ccb-c09b-0ff140abe0ce.png)##### AWS過去記事
[IAM 基本編](https://qiita.com/y-u/items/cef40fd249947687810e)
[VPC 基本編](https://qiita.com/y-u/items/40fa729d54ebab52fcb3)
[S3 基本編](https://qiita.com/y-u/items/9517ab2570a4e823fbb8)
[データベース(RDS/ElastiCache/DynamoDB)基本編](https://qiita.com/y-u/items/0d4a9e4ec6844b16b65c)
[EC2 基本編](https://qiita.com/y-u/items/cafed0ab3
EC2上のWordPressの乗っ取りを放置していたら不正利用のメールが来た話
# はじめに
WordPressの勉強に、AWSハンズオンのWordPressインスタンスをそのまま利用していました。その後、WordPressにログインすると、身に覚えのない英語の記事が増えていました。その後、放置していたら、AWSから、EC2の不正利用レポートが届きました。
# 使用していたインスタンスの詳細
– OS
– Amazon Linux AMI release 2016.09
– Apache(httpd)のバージョン
– 2.2.34
– MySQLのバージョン
– 5.5.62
– PHPのバージョン
– 5.3.29
– WordPressのバージョン
– 4.7.2# WordPressの乗っ取り
WordPressに1週間ぶりにログインすると、見慣れない記事が増えていました。
![スクリーンショット (19).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/483911/27abcf2e-2e77-caba-ac7d-9972d7f
AWS IAM について
AWSはサービスが豊富でぽちぽちと簡単に設定できてしまいますが、
1つ1つ理解していないと大変なことになるので拙いですが概要をまとめます。
間違ったこと書いてたらご指摘ください。#IAMの概要
IAMとは・・・Identity and Access Management。安全に操作を実施するための認証・認可の仕組み
ユーザ・グループ・ポリシー・ロールと4つの主要トピックがある。
###ユーザ
⇨ルートユーザ:AWSアカウント作成時に作られるIDアカウント。全てのサービスにアクセスできるため、
**普段からこのルートユーザを使うことは非推奨となる。**神様みたいなアカウントなので気をつけましょう!!⇨IAMユーザ:普段から使用されるであろうアカウント。アクセス権があるサービスのみ使用できる。
1アカウントで5000ユーザ、10のグループまでに所属することができる###グループ
⇨IAMグループ:IAMユーザの集合体。学校のクラスみたいな!
複数のユーザに対してアクセス許可を設定でき、また管理することができる。
1アカウントで300グループまで作成可能
あえて継続的にデプロイしないElasticBeanstalkへのデプロイ環境を構築しました。
お疲れさまです。@naokiurです。
最近ElasticBeanstalkを用いて、
アプリケーションを構築・稼働させることが、たまにあります。開発を続けていく上で、欲しい仕組みの一つとして、
継続的デプロイ(Continuous Deployment)があるかと存じます。
AWSの公式でも、クイックスタートとして
[AWS CodePipeline を使用した AWS Elastic Beanstalk 環境へのデプロイ](https://aws.amazon.com/jp/quickstart/architecture/blue-green-deployment/)が掲載されています。
(Continuous DeploymentとContinuous Deliveryは意味が異なる、ということを初めて認識しました…。)これはとても素晴らしいものだと思うのですが、
局所的な例で恐縮ながら、以下があるとき、
この例を組み替えると、よりマッチしたもの
(いざリリースするときにできなくなったりしなかったり、
作成するリソースを減らすことができたり)
になるのでは、とおもい、検
【API Gateway】HTTP API 使ってみた
AWSのAPI Gatewayで、HTTP API(ベータ版)が利用出来るようになったので、使ってみました。
※正式リリース版ではなくベータ版であることに、ご注意ください。# HTTP APIとは
AWSの公式ドキュメントには下記のようなことが書かれています。>HTTP API を使用すると、REST API よりも低いレイテンシーとコストで RESTful API を作成することができます。
>HTTP API を使用して、AWS Lambda 関数またはルーティング可能な HTTP エンドポイントにリクエストを送信できます。
APIを低レイテンシー、低コストで利用できるようになるのは、とてもありがたいことですね。
# HTTP APIの作成
AWSマネージメントコンソールから作成していきます。
[APIを作成]をクリックします。
![68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302
EFS ファイルサーバーへの移行 – Nextcloud 環境の構築を通じて AWS での環境構築を体験する③
「Nextcloud 環境の構築を通じて AWS での環境構築を体験する」 の第 3 回となります。
これまでの記事が下記からどうぞ。* 【第 1 回】[EC2 と RDS を利用した Nextcloud 環境の構築](https://qiita.com/S_Katz/items/756ca04ecece844ce503)
* 【第 2 回】[ElastiCache サービスの導入](https://qiita.com/S_Katz/items/280642e437c709052781)# はじめに
今回は、[前回記事](https://qiita.com/S_Katz/items/280642e437c709052781) で作成した環境構成から Nextcloud に保管されているファイル群を Amazon Elastic File System (EFS) を利用した外部のファイルサーバーに移してみます。
これを分離することで、将来的に EC2 サーバーをロードバランサ等を利用して複数台運用としても、Nextcloud 保管ファイルを Web サーバーで共有することが