- 0.1. [2018文系卒 実務経験0 勉強期間1ヶ月]AWS ソリューションアーキテクト 合格
- 0.2. AWS上のRHELでファイルシステムの拡張が必要になったらどうする?
- 0.3. AWS上のWindowsでファイルシステムの拡張が必要になったらどうする?
- 0.4. Webシステム構築(超基礎)③:DBサーバ構築と基本動作
- 0.5. M5StackでAmazon FreeRTOSを使用する 1
- 0.6. Node.jsの”Error: Cannot find module ‘cfn-response'”の解決方法
- 0.7. AWS Solution Architect Professionalを取得した話[2019年度版]
- 0.8. CloudFormationからのWAFの設定(CloudFront/APIGateway)
- 0.9. rails+froala+s3 froalaのエディタ内に画像をアップロードしてそれを、S3に保存するのにつまずいた
- 1. つまずいたところ
- 2. 解決策
- 2.1. 業務でのAWS活用〜LambdaからGCPのサービスを利用/AWS PrivateDNSで名前解決〜
- 2.2. AWS Lambdaとre:Invent 2019のUpdate
- 2.3. Amazon EKSをVPC内部通信のみで利用してみる
- 2.4. Elastic Beanstalkで、Node.js+expressアプリを動かそう [ハマりポイント説明]
- 2.5. AWS Amplify の Analytics カテゴリまとめ
- 2.6. Amazon RDSプロキシって?Lambdaじゃなくても効果ある?フェイルオーバー早くなるって本当?
- 2.7. EKS ManagedNodegroupとEKS on Fargate①
- 2.8. 2段階認証死ぬほど面倒くさいときのやつ
- 2.9. EC2リザーブドインスタンスの購入制限について
- 2.10. RDSの証明書機関更新対応
- 2.11. IT知識ゼロの(新卒1年目)文系エンジニアがAWS認定SAAに挑戦してみた
[2018文系卒 実務経験0 勉強期間1ヶ月]AWS ソリューションアーキテクト 合格
#はじめに
今回記事を書こうと思った経緯は、業務で訳の分からんAWSとか言うのを使うにあたって***資格勉強したら理解深まるんじゃね?***です。浅い。浅すぎる。文系でなぜプログラマになろうかと思ったかについては、単純に就活が早く終わったからでした。自分の脳みその出来の悪さに情けなくなってきます。
本題は、どのようにして`AWSの高い受験料を無駄にすることなく資格に受かるのか`の話なので、オーソドックスな流れで他のブログと同じことを言います。
試験を受ける前は自分もブログ記事などで一生懸命試験の範囲や情報などをせっせと集めていました。結局、ブログをたくさん見たところで***本番になんねえと何が出てくるかわからない***ので一緒なのではと思ったりもしました。はい。こういう文章の長さに頭の悪さが感じれると思いますが、言いたいことは
***アホでも受かるよって話***
です。
は?って感じですが、一応受かった身としてこれから受ける皆さんのために少しでも情報を共有できたらと思ってます。試験問題については触れないです。確か禁止されてるはず。。。
#受験日
2018/11/28
AWS上のRHELでファイルシステムの拡張が必要になったらどうする?
# はじめに
AWSの大きなメリットとして「スモールスタートが可能」が歌われています。ストレージの観点で言うと、AWS上の既存インスタンスにEBSを追加したり既存EBSを拡張したりするのは簡単です。したがって、スモールスタートして、ビジネスの拡大に応じてディスク容量を拡張していくのは容易に思えます。ただし、本当に必要なのは、EBSの容量を増やすことではなく、ファイルシステムの容量を増やす事であり、且つ拡張作業をビジネスへの影響を最小限にとどめながら行う事です。特に、クラスタリングされているようなシステムの場合、いかにしてサービスの停止時間をゼロもしくは少なくしながらファイルシステムの拡張が行えるかが重要です。前述したように、AWS上のインスタンスのストレージ容量を増やす手法は、以下の2種類があります。
**1.既存EBSの拡張**
**2.EBSの新規追加**本記事では、上記2つについて、それぞれの特徴と拡張の際の手法について、クラスター構成である事を前提に説明します。尚、前提となるクラスター構成は以下の図の通りです。
AWS上のWindowsでファイルシステムの拡張が必要になったらどうする?
# はじめに
AWSの大きなメリットとして「スモールスタートが可能」が歌われています。ストレージの観点で言うと、AWS上の既存インスタンスにEBSを追加したり既存EBSを拡張したりするのは簡単です。したがって、スモールスタートして、ビジネスの拡大に応じてディスク容量を拡張していくのは容易に思えます。ただし、本当に必要なのは、EBSの容量を増やすことではなく、ファイルシステムの容量を増やす事であり、且つ拡張作業をビジネスへの影響を最小限にとどめながら行う事です。特に、クラスタリングされているようなシステムの場合、いかにしてサービスの停止時間をゼロもしくは少なくしながらファイルシステムの拡張が行えるかが重要です。前述したように、AWS上のインスタンスのストレージ容量を増やす手法は、以下の2種類があります。
**1.既存EBSの拡張**
**2.EBSの新規追加**本記事では、上記2つについて、それぞれの特徴と拡張の際の手法について、クラスター構成である事を前提に説明します。尚、前提となるクラスター構成は以下の図の通りです。
#目的
Webシステム構築を目的として、超基礎的なDBサーバの構築と動作を確認する。
(DBサーバとしてはMySQLを利用する。)#環境条件
– DBサーバ
– EC2:t2.micro
– OS:Red Hat Enterprise Linux 8 (HVM), SSD Volume Type
– Disk:汎用SSD(GP2) 10GB
– MySQL:MySQL 8セキュリティグループの設定等はいい感じに。
#構築手順
“`
ec2-userでログインrootユーザにスイッチ
$ sudo su –rpmの存在確認
# yum info mysql*serverインストールされたMySQLのバージョン確認
# mysqld –version
/usr/libexec/mysqld Ver 8.0.17 for Linux on x86_64 (Source distribution)MySQLサービスの停止を確認
# service mysqld status
Active: inactive (dead)のM5StackでAmazon FreeRTOSを使用する 1
# はじめに
仕事で関わっている[Record Meeting](https://www.recordmeeting.jp/)という自動議事メモ作成サービスでM5Stackを利用しているのですが、デバイスが増えてくると管理が大変です。Raspberry Piくらいリソースがあれば選択肢が増えてきますが、M5Stackの場合皆さんどのように管理されていますか?ということで、唯一の候補になりそうなAmazon FreeRTOSがM5Stackで使えるかを検証してみました。
![COET Record Meeting](https://www.tis.co.jp/images/jp/news/2019/tis_news/0725_1/20190725_1_01.png)
# 検証
M5StackでAmazon FreeRTOSを動かしている情報は見つけられませんでしたが、[「Espressif ESP32-DevKitC と ESP-WROVER-KIT の開始方法」](https://docs.aws.amazon.com/ja_jp/freertos/latest/usergui
Node.jsの”Error: Cannot find module ‘cfn-response'”の解決方法
# Error: Cannot find module ‘cfn-response’
Lambda-Backedカスタムリソースにおいて、Node.js 8がEOLとなるため、コードはそのままでランタイムの指定だけをNode.js 12.xに変更したところ、このようなエラーが発生しました。“`エラーメッセージ
Response:
{
“errorType”: “Runtime.ImportModuleError”,
“errorMessage”: “Error: Cannot find module ‘cfn-response'”,
“trace”: [
“Runtime.ImportModuleError: Error: Cannot find module ‘cfn-response'”,
云々
“`Node.js 8では以下の指定で同じ階層のファイルrequireできるのですが、
“`Node.js8:
const response = require(‘cfn-response’);
“`Node.js 12では、パスを明記する必
AWS Solution Architect Professionalを取得した話[2019年度版]
([こちらのブログ](https://www.uglyflight.com/?p=284) から抜粋・転載。)
AWS Solution Architect Professionalを取得したので、やってきたことのまとめ。
※問題の解き方や、本番試験問題の中身に関する内容はありません。## 最初に伝えておきたいこと
※個人の感想です。
**学習後期の段階で、落ちるの覚悟で一度本番試験を受けた方が良い!**
●理由●
本番試験では、WEB問題集サイト等の練習問題以上の難易度の問題が平気で出てくる。
体感としては、**見たことのある問題は3割程度**。言い換えると、本番同等の問題に触れる事ができる既存の学習コンテンツが無い。。
このため、本番試験の問題文の長さ・複雑さには早い段階で触れておいた方が良いと個人的に思った。他のAWS認定に合格していれば半額バウチャー持っていると思うので、合格までの投資と思ってまず1回受験しましょう。
WEB上のSAP合格者経験談でも2回目・3回目受験で合格ってのはよく見るので、
【最終的に合格できるのであれば、途中の不合格もいい経験】と割り
CloudFormationからのWAFの設定(CloudFront/APIGateway)
# はじめに
AWSでサーバレスなアーキテクチャを採用していて、 各エンドポイント(CloudFront や API Gateway)にIP制限をかけたい場合 [AWS WAF](https://aws.amazon.com/jp/waf/) を用いることが多いかと思います。
この記事では、CloudFormation から各リソースと WAF のリソースを生成する際にハマりポイントが多かったのでまとめてみました。# AWS::WAF と AWS::WAFRegional
まずハマりやすいのが、この2つのリソースタイプがあること。
設定できるリソースやパラメータにあまり違いはないのですが、使い分けとしては、リージョンを持つサービスに紐づけるか、リージョンを持たないサービス(CloudFront)に紐づけるか、でどちらを選択するか決まります。– **AWS::WAF → API Gateway, ALB, etc…**
– **AWS::WAFRegional → CloudFront**と考えておけばOKだと思います。(これを逆にすると権限のエラーで失敗します。)
#
rails+froala+s3 froalaのエディタ内に画像をアップロードしてそれを、S3に保存するのにつまずいた
froalaの設定
https://www.froala.com/wysiwyg-editor/v2.0/docs/framework-plugins/rails
https://www.froala.com/wysiwyg-editor/docs/sdks/ruby
上のようにgemをいれて設定する。
つまずいたところ
froala-editor-s3の設定を終えた後に、いざ画像をアップロードしようとしたときに、consoleで
403(forbidden)がでてずっと止まっていた。解決策
s3側の設定で、バケットのアクセス権限で
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508016/23b83cc4-ce62-73da-f407-d3d5c2d0eb9d.png)
のように設定する。froalaの公式にはs3側の設定について書いていなかった。
業務でのAWS活用〜LambdaからGCPのサービスを利用/AWS PrivateDNSで名前解決〜
[AWSアドベントカレンダー](https://qiita.com/advent-calendar/2019/aws)の25日目を担当させていただきます。サンタさんにインフルにかからない快適な冬が欲しいとお祈りしておこうと思います。
さて初めてのアドベントカレンダーになるのですが、自分が勤めている会社のアドカレに記事を書こうと思ったのですが、かなり早い段階で埋まっていたため、他のカレンダーを探していたところ、このAWSのアドカレがスカスカで書きやすそうだったので(失礼!)書くことにしました。(能書きが長い、、)
# 概要
自分が今年業務で使ったAWSをその業務シーンと共に自分の振り返りのため(PrivateDNSは同じチームの他のメンバーが構築してくださったため、改めて自分で構築して再確認)に書いていきます(アウトプット駆動学習)。![スクリーンショット 2019-12-25 22.39.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/274080/8531429f-1433-f0b7-8052
AWS Lambdaとre:Invent 2019のUpdate
今回はServerless技術の中心役となっているLambdaについて、いくつかの実装事例を紹介したいと思います。AWSの他のサービスと連携してシステムのServerless化することも最近増えてきてます。またAWS Lambdaと連携できるサービスもどんどん増えているので今度はAWSのManagedサービスを利用して簡単実装できるサービスと増えることが期待できます。AWS Lambda は自分たちが使いなれている言語で
# Lambdaについて一言
我々が管理する必要なく必要なだけ利用して利用したンピューティング分の料金だけ支払えば利用できるコンピューティングサービスのことです。詳細はこちらの公式サイトの[AWS Lambda とは](https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/welcome.html)で参考できます。
コードを書いてLambdaへDeployするだけで、ワークロードのサイズに合わせてスケールされます。AWS Lambda では、コードが実行される 100 ms ごとの請求になるため、従来のシステムよりも
Amazon EKSをVPC内部通信のみで利用してみる
本記事は個人の意見であり、所属する組織の見解とは関係ありません。
こちらはAmazon EKS Advent Calendar 2019の18日目の記事です。現在の時刻は、12/18 190時ぐらいでしょうか
re:Inventでの EKS on Fargete 発表もあり、改めてEKSに注目されている方も多くいらっしゃると思います。re:Inventで発表された内容そのものではありませんが、今回はVPC内部の通信のみでEKSを利用できるかを手順のウォークスルーを通じて確認していきます。
# 確認結果
12月24日現在の動作として次の様な挙動をします。* Worker Node としてEC2 インスタンスを利用している場合、 VPC 内部通信のみで利用可能
* AWWS Fargete を利用している場合、インターネット通信が必要である。結果としては、EKS を VPC 内部通信のみで利用する事が可能です。もちろん、利用している add on 等のツールがインターネット通信を必要とするケースもあると思います。実際の利用においては、手持ちの環境で事前検証をする事をおす
Elastic Beanstalkで、Node.js+expressアプリを動かそう [ハマりポイント説明]
#? はじめに
Lambdaの方が使い勝手がいいので、あまり使わないElastic Beanstalkですが、いざ使おうと思うと、いくつか躓くポイントがあるので、その点も含めて、Node.js+expressで作ったサンプルアプリを動かすまでの手順を紹介します。##? Elastic Beanstalk
https://aws.amazon.com/jp/elasticbeanstalk/
Java、.NET、PHP、Node.js、Python、Ruby、Go、Dockerなどで作られたプログラムをデプロイ、実行する環境。
実態としては、EC2の上にApacheやNginx等のサーバーを立てて提供してくれる。#? 作業手順
大きくは以下の手順になります。1. Node.js+expressでアプリを用意する。
2. ソースコード+node.jsモジュールをZIPファイルにまとめる。
3. Elastic Beanstalk実行環境構築、デプロイ。
4. 実行。##? Node.js+expressでアプリを用意する
今回は、`express myapp`コマンド作成さ
AWS Amplify の Analytics カテゴリまとめ
メリークリスマス、この記事では AWS Amplify で行える色々な分析機能について話します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1490/30500bc7-387f-62cc-36d0-735bcc5c419b.png)
[AWS Amplify](https://aws-amplify.github.io/docs/) は Web およびモバイルアプリを開発するためのフレームワークです。
Amplify CLI を通じてアプリケーションにカテゴリを追加、設定することで、開発者は自分のアプリに欲しい機能を使えるようになります。例えば GraphQL API を使いたいなら `amplify add api` からの `amplify push` といった具合です。
“`shell-session
$ amplify add api? Please select from one of the below mentioned services GraphQL
Amazon RDSプロキシって?Lambdaじゃなくても効果ある?フェイルオーバー早くなるって本当?
いかがでしたかブログ風のタイトルですが、調べてみたがわかりませんでしたというオチでは無いのでご安心下さい。
# はじめに
re:Invent2019でAmazon RDSプロキシが発表されました。発表された時はLambdaからRDSへの接続パターンが主に取りざたされていて、直近でLambdaからRDSを使う予定が特に無かった私はシュッと興味リストから外してしまっていました。がしかし、ある日、[同僚のre:Invent参加レポート](https://tech.speee.jp/entry/2019/12/24/144252)を読んでいたら興味深い文言を発見しました。
> RDS Proxy を使うとフェイルオーバーが 66% くらい速くなる
まじか!これならLambda云々関係なく導入した方が幸せになりますね。実際に[RDSプロキシのページ](https://aws.amazon.com/jp/rds/proxy/)を見てみると
> With RDS Proxy, failover times for Aurora and RDS databases are reduced b
EKS ManagedNodegroupとEKS on Fargate①
AWS re:Invent 2019で新しく発表されたたくさんのサービスの中でも、一番興味深く、すぐ使いたいと思ったサービスは EKS on Fargate でした。re:Inventの直前に発表されたEKS Managed Nodegroup と Fargateを併用する形で試してみました。
### まず注意点
1. eksctl versionは1.11以上。古いバージョンではFargateが作られない。
2. Managed NodegroupはPublic Subnetに作る。Private Subnetには作られない。
3. Managed Nodegroupには以下2つのPolicyが必須。
arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy
arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy4. Managed NodegroupとFargateにデプロイする物の使い分けはKubernetesのNamespace。FargateのselectorにFargateにデプロイ
2段階認証死ぬほど面倒くさいときのやつ
Google Authenticatorのあれ
`oathtool`入れてるの前提
適当な名前をつけてシェルをつくる“`bash
#!/bin/shTOTP=`oathtool –totp –base32 XXXXXXXXXXXXXXX`
expect -c ”
set timeout 5
spawn ssh AAAAAAAAAAAAA
expect \”Verification code:\”
send \”${TOTP}\n\”
interact
”
“`これでaliasも登録すればいっぱつ。やったぜ。
ちなみにAWSの2段階認証はaws-mfa入れてなんやかんやできます。やったぜ。
“`bash
pip3 install aws-mfa
“`設定とかは割愛
EC2リザーブドインスタンスの購入制限について
# リザーブドインスタンスの購入制限とは
AWSのEC2リザーブドインスタンス(RI)には購入量に上限があり、それを超えて購入することはできません。
制限の仕様は[こちら](https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-reserved-instances.html#ri-limits)で説明されています。以下は制限の仕様について抜粋したものです。
>1 か月当たりに購入できる リザーブドインスタンス の数は制限されています。リージョンごとに 1 か月当たり 20 個のリージョン リザーブドインスタンス に追加して、アベイラビリティーゾーンごとに 1 か月当たり 20 個のゾーン リザーブドインスタンス を購入できます。
>たとえば、リージョンに 3 つのアベイラビリティーゾーンがある場合、リザーブドインスタンス の制限は 1 か月当たり 80 です。つまり、そのリージョンのリージョン リザーブドインスタンス 20 と、3 つのアベイラビリティーゾーンそれぞれで 20 のゾーン リザーブドインスタンス
RDSの証明書機関更新対応
# RDSの証明書機関更新対応についてのメール
* AWSからRDSのSSL認証機関を変更するから対応して下さいとのメールが再三きていた(2019年12月)
* メールやリンク先の説明がやたら長く分かりづらいので超簡潔にまとめた
* 内容は以下の通り(翻訳)“`
件名:Update Your Amazon RDS SSL/TLS Certificates by October 31, 2019
こんにちは、
RDSとオーロラ・データベース・インスタンスを使用して、アプリケーションの今後の中断に対処するために2019年10月31日の前に行動してください。
RDSデータベースインスタンスを使用して通信を保護するために、認証局(CA)は、情報を交換する前に、RDSデータベースインスタンス(複数可)を認証するために、データベースクライアントソフトウェアによって確認されている期限付き証明書を生成します。業界のベストプラクティスに続いて、AWSは、CAを更新し、RDSの顧客の接続が正しく、今後数年間のために保護されることを保証するために定期的に新しい証明書を作成します。現在のCAは
IT知識ゼロの(新卒1年目)文系エンジニアがAWS認定SAAに挑戦してみた
#前提
・***2019年に入社したて***の新人エンジニア・学部卒で法律学科出身、暗記は得意な方。数字は大の苦手。
・入社するまでITについて、***何も理解していませんでした。***
なんでIT企業に入社したかは***覚えてない***です。
(サーバーという単語を聞いたのは入社年4月の新人研修)・入社年の8月に***AWS Cloud Practitioner***を取得済
(点数は700ぴったりくらいのギリッギリ合格でした。)
→余談ですがこちらは2週間本をパラ読みで取れた気がします。・学生時代はPCを使ったことがほとんどなかったです。
(年に1回のレポート提出で利用するくらい)#AWS SAA試験について
AWS認定ソリューションアーキテクト アソシエイト試験の略。
なんとなくカッコいいなーと思って受けました。動機はそれだけです(笑)試験日:2019年10月
点数820くらい。
→合格ラインは720/1000なので、良くも悪くもない感じ。。。?#勉強について
・***勉強期間は1ヶ月ほど(平均1日1~2時間程度、勉強しました。)***
※勉強開始時