- 1. [AWS Kendra]Slackをデータソースとして設定できるようになったのでやってみた
- 2. Web負荷テストツールの紹介(JMeter・AWS分散負荷テストソリューション)
- 3. Amazon ECS & Fargate と Docker on AWS CICDの学習まとめ(超初心者向け)
- 4. 【AWS環境構築メモ⑩】EC2インスタンスにLaravel環境を構築してアプリのデプロイをする
- 5. AWS認定試験11冠達成したので、更新時の自分に向けてアドバイスを残す
- 6. 営業職からエンジニアに転向してAWS資格11冠制覇したので振り返ってみる
- 7. Amazon Athena どうしても日本語カラムを使ったテーブルをcliでCREATEしたい場合
- 8. AWS SDK for Python (boto3) のリトライ・タイムアウト制御
- 9. .DS_Storeが邪魔するのでmacOSはcdkの開発に注意
- 10. AWS cliが使えないときに試したこと
- 11. GitHub ActionsによるCDKアプリのデプロイ自動化 (エンタープライズ向け)
- 12. AWS Systems Manager Runbook(旧 Automation Document)の`aws:createStack`にパラメーターを渡すやり方を考える
- 13. CloudFormationで権限周りのエラーにハマったとき
- 14. SageMaker の各モデル開発方法まとめ
- 15. SNSトピックのunsubscribeの無効化設定
- 16. はじめに
- 17. unsubscribeとは
- 18. AWS日記37 (AWS IoT)
- 19. AWS Amplifyを用いたAndroidでのGoogle認証
- 20. 消せなくなったCloudFormationのスタックを消す
- 21. Amazon Lightsailで構築したWordpressにReally Simple SSLプラグインを入れる
- 22. Amazon Sagemaker ~trainingからCompileまで~
[AWS Kendra]Slackをデータソースとして設定できるようになったのでやってみた
## AWS Kendraとは
> 自然言語処理および高度な検索アルゴリズムを使用して非構造化データおよび構造化データを検索できるようにする、高精度でインテリジェントな検索サービスです要するに自然言語で色々検索できちゃうよ〜〜〜っていうすごいやつです
## 今回行うこと
3/23にデータソースとしてSlackを設定できるようになったのでそちらを試してみたいと思います!https://aws.amazon.com/jp/about-aws/whats-new/2022/03/amazon-kendra-slack-connector-messaging-search/
## やってみる
### 事前準備
検索を行うSlackで適当にメッセージを送信しておく今回は事前に、英語の適当な文字列,「AWS SAAの試験ガイド英語版のPDF」を送っておきました

# はじめに
社内向けにWebサイト・Webシステムの負荷テストツールであるJMeterとAWS分散負荷テストソリューションの基本的な使い方をまとめた資料を作成したのですが、どちらも汎用的なツールなのでQiitaにも投稿することにしました。
メモ的な要素が強いので、画像が少なくツールの説明としてはあまり優しくありませんが、そのあたりはご了承ください。# JMeterの使い方
## インストール
以下のWebサイトで、Binariesのzipファイルをダウンロード&解凍
[Apache JMeter – Download Apache JMeter](https://jmeter.apache.org/download_jmeter.cgi)
## 起動
JMeterを展開したフォルダ/binにあるjmeter.
Amazon ECS & Fargate と Docker on AWS CICDの学習まとめ(超初心者向け)
# これからはAWSのFargateだ!
ということで学習しながら設定の流れをメモとして随時更新します。学習内容 ECS & Fargate, Load Balancing, Auto Scaling, ECR, CICD for ECS
最終的には、Rubu on Rails をFargateで動かすところまで目指します。## AWSの準備&ユーザ設定
* AWSのアカウント作成
* IAM ユーザーの設定
ルートユーザ→Adominユーザ
* AWS アクセスの種類を選択(全部選択)
* アクセス許可の設定
→既存のポリシーを直接アタッチを選択
→AmazonECS_FullAccessを選択
* タグの追加 (不要)
* 認証情報(コンソールのサインインリンク保存)
* アクセス権限の追加
→既存のポリシーを直接アタッチを選択
→AdministratorAccess## Fargateの設定
* リージョンを選択(東京)
* Elastic Container Service (ECS)を選択
* 2022/04時点では、ECS
【AWS環境構築メモ⑩】EC2インスタンスにLaravel環境を構築してアプリのデプロイをする
## 0.はじめに
**作成したEC2インスタンスにLaravel環境を構築します。**
**また、RDS(MySQL)との接続とチェックも行います。****今回のタスクでAWS本番環境構築はおおよそ完了します!!**
**EC2 : Nginx, php-fpm**
**RDS : MySQL**## 1.前回の記事
**[【AWS環境構築メモ⑨】RDSを作成する](https://qiita.com/yuuichimizuta/items/ac43d5e2be0c1d8f1bc2)**
## 2.前提条件
– **AWSアカウント作成済み**
– **リージョンはアジアパシフィック(東京) ap-northeast-1**
– **VPC作成済み**
– **セキュリティーグループ作成済み**
– **EC2インスタンス作成済み**
– **SSL証明書発行済み**
– **ELB作成済み**
– **Aレコードのエイリアス作成済み**
– **RDS作成済み**
– **RDS作成時のマスターユーザー名、パスワード、DB名をメモしている**## 3.作成手順
AWS認定試験11冠達成したので、更新時の自分に向けてアドバイスを残す
# はじめに
いつの間にか、 AWS 全冠制覇は珍しいものではなくなりましたね。
合格に特化した RTA 的な記事や詳細な学習方法について記載された記事もたくさんありますので、本記事ではタイトル通り、数年後の更新のため、自分に向けたアドバイスを残します。# この記事が役に立つ人
– 自分
– 全冠制覇目指す人も若干役に立つかもしれません# 受験履歴
勉強は長くても 1 ヶ月くらいがダラけなくて丁度よかったです。
以下を見ると、更新時には 15 hくらい勉強すれば、五分五分で合格点ギリギリには達しそうです。|試験名|取得日|スコア|勉強期間|正味勉強時間|
|:———–|:———–|:———–|:———–|:———–|
|CLF|2021/1/11|921|1ヶ月||
|SAA|2021/3/21|777|1ヶ月半||
|SAP|2021/5/23|895|1ヶ月|80h|
|SOA|2021/7/17|839|1週間|2h,公式サンプル問題のみ(実務と被りが多い)|
|DVA|2021/8/8|93
営業職からエンジニアに転向してAWS資格11冠制覇したので振り返ってみる
# はじめに
先日、AWS認定資格11冠を達成しました。
(最後に取得したAWS Certified Machine Learning – Specialtyの会場 高田馬場駅をとても好きになりました)
また、AWS認定資格取得で得た知見を大いに活用することができ、
昨年は2021 APN AWS Top Engineersにも選出されました。11冠を目標に走ってきた3年半の取り組みを振り返ってみたいと思います。
この記事が、AWS認定資格にこれから取り組む人だけでなく、
他の認定資格を取得されようとしている方や未知の領域にチャレンジしようとしている方、
何か高い目標に向かって日々努力されているロマンティックな方など、
自己実現を遂げようとする全ての人に少しでも響けば嬉しいです。
※結構ざっくりした内容です
※試験対策的な部分はがっつり別の機会にもう少し詳細に書こうと思います# 経歴とAWS認定資格
に出会った時に活用していただければありがたいです。# 使用する環境
vagrant(amazonlinux2) amazon athenaを使用できる環境構築は完了しているものとする(awscliのインストールなど)。# 結論
日本語カラムはバックスラッシュ + バッククォーテーションで囲みます。
その他注意点として、WITH SerDePropertiesのカッコ内はダブルクォーテーションではなくシングルクォーテーションを使うほうが望ましいです(エスケープしようとするとぐちゃぐちゃになるため)。下記は日本語カラムを用いたテーブル作成クエリです。s3に保存されたcsvをデータとして使用します。
“`テーブル作成クエリ
aws athena start-query-execut
AWS SDK for Python (boto3) のリトライ・タイムアウト制御
AWS SDK for Python (boto3) を使用してエラーが発生した場合のリトライについて、簡単に整理しました。
## リトライ・タイムアウト設定
参考) [Config Reference – botocore documentation](https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config)
|クライアント設定|環境変数|説明|未設定時|
|:–|:–|:–|–:|
|connect_timeout||接続タイムアウト時間 (秒)|60|
|read_timeout||データ受信タイムアウト時間 (秒)|60|
|retries.mode|AWS_RETRY_MODE|リトライモード|legacy|
|retries.total_max_attempts|AWS_MAX_ATTEMPTS|最大リクエスト試行回数|5 (legacy) / 3 (standard)|
|retries.max_attemp
.DS_Storeが邪魔するのでmacOSはcdkの開発に注意
# TL; DR
.DS_Store ファイルが Lambda Layer などの中に紛れ込むと Lambda Layer 用 Asset のための hash 値に影響を与えるので macOS は CDK に向かない。 Windows とか Linux 使おう。# 例
Lanmbda Layer はこんな感じに定義できます
– https://qiita.com/hrkzmaaa/items/afcf08a549c03e23e8a9
“`dk-stack/lib/cdk-stack.ts
new LayerVersion(this, ‘NodeModulesLayer’,
{
code: AssetCode.fromAsset(‘../backend/src/layer/SharedLayer’),
…
}
);
“`ここの例では `AssetCode.fromAsset(‘../backend/src/layer/SharedLayer’)` として `../backend/src/layer/SharedLayer` フォルダの内容から Lam
AWS cliが使えないときに試したこと
cloud 9ではデフォルトでv1がインストールされている状態でした。
またpipコマンドはない状態です。
AWS CLIコマンドを叩くと、コマンドがv2対応らしくエラーになり、
そのままv2のインストールを行いました。
v1とv2の共存は推奨されていませんが、
それよりもまず、v1のプライオリティが高いようでコマンドは利用できないままでした。## 行ったこと
1.AWS CLI v1のアンインストール
2.AWS CLI v2のアンインストール
3.AWS CLI v2のインストール### 1.AWS CLI v1のアンインストール
[【参考】AWS CLI バージョン 1 のバンドルされたインストーラのアンインストール](https://docs.aws.amazon.com/ja_jp/cli/v1/userguide/install-linux.html)“`
sudo rm -rf /usr/local/aws
sudo rm /usr/local/bin/aws
“`フォルダを消すことで完了
下記コマンドで確認
“`
aws –version
GitHub ActionsによるCDKアプリのデプロイ自動化 (エンタープライズ向け)
# はじめに
CDKアプリケーションの開発を行っていたプロジェクトにて、GitHub Actionsによりデプロイ自動化の仕組みを構築しました。
その際、エンタープライズでのチーム開発に最低限必要そうな機能を含めたのですが、その辺りがひと通りまとまっている記事があまり見当たらなかったため、簡単にまとめてみました。– 想定読者
– チーム開発向けにデプロイ自動化の仕組みを構築したい。
– GitHub Actionsでワークフローを組んだことがある。
– AWSのCDK、CloudFormation(以降CFNと記載)、IAMなどについて基礎的な知識がある。– 主な技術要素
– [GitHub Actions](https://docs.github.com/en/actions)
– [AWS CDK](https://aws.amazon.com/jp/cdk/)# この記事のポイント
– デプロイ自動化の実現に至るための要点に絞っています。(基礎的な説明は省略してます)
– ブランチ毎に異なるAWS環境(アカウント)へデプ
AWS Systems Manager Runbook(旧 Automation Document)の`aws:createStack`にパラメーターを渡すやり方を考える
こんにちは。kosukeです。(すみませんがまだちゃんと書けてないです)
## はじめに
突然ですがAWS Systems Manager Runbookは好きですか!!!
私は最近Solrの環境構築をRunbookで実装する機会がありました。
これの中でずっと頭を悩ませていた`aws:createStack`にパラメーターを渡すやり方について考えたことを忘れる前にまとめようと思います。## Runbookとは
> オートメーションは、AWS のサービス (Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Relational Database Service (Amazon RDS)、Amazon Redshift、Amazon Simple Storage Service (Amazon S3) など) でのメンテナンス、デプロイ、および修復に関する一般的なタスクを簡素化するための、AWS Systems Manager の一機能です。
>オートメーションは、AWS リソースを大規模にデプロイ、設定、管理のための、自動化され
CloudFormationで権限周りのエラーにハマったとき
## 何がツライか
* CloudFormationでリソースを作るとき、以下のようなエラーにハマるのが辛い(Action教えてくれ)

## 何が私を救ってくれたか
* [`aws cloudformation describe-type`](https://awscli.amazonaws.com/v2/documentation/api/2.3.2/reference/cloudformation/describe-type.html) なる神コマンド
> Description
Returns detailed information about an extension that has been registered.
If you specify a VersionId , DescribeType returns info
SageMaker の各モデル開発方法まとめ
# 初めに
前回、[Amazon SageMaker Studioのアーキテクチャ](https://qiita.com/ishidahra/items/41132cb9ff1f2b838236)でSageMaker Studioのアーキテクチャについて整理しましたが、SageMakerを実際に使ってモデル開発をする方法は複数提供されています。
どのような場合に、どの方法を使うのが良いかまとめたいと思います。# 機械学習レンズ – AWS Well-Architected フレームワーク
AWS Well-Architected は、AWSにおいて、各種アプリケーションやITシステムを、高い安全性、性能、障害耐性、効率性を備えたアーキテクチャで構築する際に参照するベストプラクティスフレームワークですが、AWSにおける機械学習開発にも同様に参照できるベストプラクティスフレームワークとして、「機械学習レンズ」が公開されています。
https://docs.aws.amazon.com/ja_jp/wellarchitected/latest/machine-learning-lens/
SNSトピックのunsubscribeの無効化設定
はじめに
今回業務の中でSNSのサブスクリプションを誤って解除してしまうのを無効化したいという要件があったため、調べた中で作り直しが必要と記載のある記事が多く、作り直さなくても設定できたので、メモとして残そうと思います。
unsubscribeとは
一言でいうと、SNSトピックに設定しているサブスクリプションを解除することです。
SNSトピックにサブスクリプションを設定しているとインスタンスが起動したなど必要なメッセージを特定のメールアドレスに送信することができます。
そのメッセージの中のリンクをクリックしてしまうとunsubscribeされて、SNSトピックからサブスクリプションが削除されてしまいます。
サブスクリプションの通知先としてメーリングリストを設定していると誰かしらが誤ってリンクを触ってし
AWS日記37 (AWS IoT)
# はじめに
今回は [AWS IoT](https://aws.amazon.com/jp/iot/) を試します。
AWSコンソールから Raspberry Pi のLEDを点滅させます。# AWS IoTの設定
### AWS IoT ポリシーの作成

– ポリシー名を入力し、アクションとポリシーリソースを “*” に設定し、「作成」をクリックします。
### モノを作成
を選択
1. [新しいプロジェクト]を選択
1. [プロジェ
消せなくなったCloudFormationのスタックを消す
CloudFormationの削除が失敗そうとしたら、以下のようなエラーが出てスタックが消そうにも消せないという現象がおきた
エラー
“`
Role arn:aws:iam::xxxxxxxx:role/service-role/hogehogeCloudFormation is invalid or cannot be assumed
“`これの解決策を備忘録的に記載する
### 原因
私の場合は、エラーに記載されているrole `arn:aws:iam::xxxxxxxx:role/service-role/hogehogeCloudFormation`が先に削除されてしまっていたためにCFnのroleが見つからず削除ができないというのが原因だった
### 解決策
ロールを作って必要なポリシーを付与することでスタックを削除できるようになる
また同じことが起きる気がするのでスクリプト化した。
shell で以下のコマンドを実行することでロールを復活させることができる。
“`
# エラーに記載されているロールの名前を変数に入れる(上記の例の場合”hogeh
Amazon Lightsailで構築したWordpressにReally Simple SSLプラグインを入れる
# はじめに
プラグイン入れたら問題が発生。
# Lightsailのシェルにログインする
AWSコンソールからLightsailの管理画面へ。
赤枠のシェルのボタンを押す。
# トラブル対応手順
“`
# wp-config.phpのあるディレクトリに移動
cd /opt/bitnami/wordpress# 念の為バックアップ_wp-config.phpを取得
cp wp-config.php _wp-config.php# グループに書き込み権限を付与
chmod g+w wp-c
Amazon Sagemaker ~trainingからCompileまで~
## 概要
* AWSのSagemakerを使ってモデルをトレーニングし、Compileまでやってみる!
## はじめに
AWSのSagemakerを勉強した機会があったので、せっかくだからまとめたいなと記事に起こしました。
意外とCompileまで説明している人は少なかったので、AWS IoT GreenGrassを使う人とかの参考になればなと思います。## 実験環境
* Amazon SageMaker Notebooks
* Tensorflow Keras## Sagemakerとは?
Sagemakerとは何なのかということは他のサイトで詳しく解説されていますので、具体的なことは割愛して、
簡単に言うと、**機械学習の諸々の処理をクラウド上で行うためのツール**みたいなものです。
例えば、アノテーション、モデルの学習推論、コンパイルなどをSagemaker上だけで行うことができます。
本記事では、モデルの学習~コンパイルまでをメインに扱っていきます。> Sagemakerについて
>* [Amazon SageMakerとは何なのか、使い方について。](htt