AWS関連のことを調べてみた2022年02月17日

AWS関連のことを調べてみた2022年02月17日
目次

AWS StepFunctionsを使って CodeCommitでプルリク時にそのブランチ名を自動的に既存のCodeBuildの対象ブランチにしてテスト実行する。

# 動機

CodePipelineを使ってCodeCommitにpush時にCodeBuildでテストを実行できるようにはしたけれど、プルリクしてきたそのソースに対してマージ前にテストを行なってテストが通ったものをレビューしてマージしたいという思いがありました。

ビルドプロジェクトのソースを都度手で修正して行うのは実行自体は簡単ですが、ブランチ戦略によりプルリク元のブランチ名が様々である場合手動で行うとその手間が多く無駄であるということから自動で既存のビルドプロジェクトの対象ブランチをプルリクをフックにそのブランチ名を使って更新できないかということを調べていていました。

lambdaによる実現の情報はあったのですが、もっとeasyに実現できないかと他の方法も考えたときに「そういえばStep Functionsというのがあったな、、、」ということから実際に行ってみました。

タイトルには「ブランチ名を」と書きましたが、同じ考えでコミットIDを指定することもできます。(そちらの方がビルドプロジェクトの実行完了は早いようです。)

## ユースケース

– コードレビュ

元記事を表示

djangoアプリをAWSでデプロイする時にハマったこと

djangoアプリをAWSでデプロイする時にハマったことを個人用にメモ。

【参考】
https://qiita.com/Bashi50/items/d5bc47eeb9668304aaa2
https://qiita.com/Bashi50/items/db0b6b3343d51e0fc598
https://zenn.dev/ryo_t/articles/71e4ee16d76274

【メモ】
■gunicornを起動してもソケットファイルが作成されなかった。
 原因⓵:ソケットファイルを作成するフォルダに書き込み権限を付与していなかった。
 原因⓶:「gunicorn.service」に誤字があった。
 原因③:wsgyファイルがあるアプリフォルダ名とプロジェクトフォルダ名を違う名称にしていたため、wsgyファイルパスが間違っていた。
 原因④:「Procfile」ファイルを配置していた。

■Postリクエストする時に403エラーが発生する。
 原因:自分のブラウザ設定でcookieをブロックしていた。

元記事を表示

AWS Certified Solutions Architect Associateの試験対策

AWS Certified Solutions Architect Associateの認定試験を受ける後輩社員向けに話す内容をまとめます。実際には、記載内容に留まらず、テクノロジーの基礎知識やAWSの用語や技術について、分からない部分の質疑応答の時間を設けて進めます。

## はじめに

試験対策をおこなう前に、試験されるのはエンジニアとしての知識ではなく、AWSのリセラーとしての知識であると認識するべきです。この試験では、エンジニアとしてAWSのテクノロジーに精通しているかどうかではなく、AWSのリセラーとして主要なサービスの特徴やよくある適用事例をカスタマーへ説明できるかどうかを試されます。

従って、試験対策として押さえるべきは、AWSの各サービスの特徴とよくある適用事例です。更に言えば、リセラーとしてAWSが現時点で特に訴求したいサービスをより深く押さえる必要があります。AWSの各サービスを理解するため、各サービスを支えるテクノロジーの基礎知識は必要ですが、各テクノロジー分野のスペシャリストである必要はありません。

テクノロジーの基礎知識は、基本情報技術者試験レベルの用語や

元記事を表示

【AWS】【Salesforce】CTIフローのCTI Actionでオペレータが見ている画面を転送する

#1.概要
どうも、ARIの名古屋支社に勤務している愛知県民です♪
(/・ω・)/

**CTI Adapterの機能の一つであるCTIフローを使用して、
オペレータが見ている画面を転送することができたので、その方法をまとめました。**
(今のところ、1画面のみの転送となります。)

CTIフローについて勉強中の方の参考になれば幸いです。

最後に、この記事が面白いと思った方はLGTM、ストックしていただけると励みになります♪
(*^^)v

#2.はじめに
#2.1.CTI Adapterとは
AmazonConnectとSalesforceを連携させる際に使用するクラウドサービスのことです。
(厳密にはAWSのサービスです。)

CTI Adapterを使用することで、Salesforceのコンソールからソフトフォンを開いたり、
着信時にSalesforceの取引先責任者をポップアップしたりすることができます。

#2.2.CTIフローとは
CTIフローとはCTI Adapterの機能の1つで、
ボタンのクリックや着信をトリガーとして特定のレコードを作成したり、
ポップアップを表示

元記事を表示

【サーバレス】静的ウェブサイトの問い合わせフォーム送信できる仕組み

## 初めに
今回は静的ウェブサイトの問い合わせフォームを実装し、送信を押すことでメールに転送するという形になります。使ったものは何なのか、どういうものか、どいう原理で実装できたかをメモするという意味で記事を作成しました。具体的なやり最後の参考リンクを見てください。

## 必要なもの
必要なものは以下になります。

### 1.ウェブサイト
問い合わせフォームがある静的サイト

### 2.Amazon S3
オブジェクトストレージサービスの一種であり、データ容量を気にすることなく保存することができます。静的サイトをこのストレージに入れることで設定を変更すると、サイト公開できます。

### 3.Amazon API Gateway
★API:大雑把に言うとアプリケーションが呼び出せば予期した結果を返されるような仕組みである

Amazon API Gatewayは、規模にかかわらず、簡単にAPIの作成と保護、そして公開、モニタリングが可能なフルマネージドサービスである。REST API、HTTP API、WebSocket APIがありる。

今回はREST APIを使う。REST

元記事を表示

AWS 5冠達成後にクラウドプラクティショナーを受けてみた

こんにちは。パエリアです。

今回はAWS 5冠取得した後、Specialty取得前にクラウドプラクティショナーを受けてきましたので、そのレビューをしていきたいと思います。

AWSを勉強し始めて、これから資格取得を考えている人や、上位資格を持っているし、今更クラウドプラクティショナーを受けるのもなーと考えている人の参考になればと思います。

## まずは簡単に試験の概要
https://aws.amazon.com/jp/certification/certified-cloud-practitioner/

AWS クラウドプラクティショナーを受験する方として下記のような方を対象としています。

* AWS クラウドに 6 ヶ月間触れている
* IT サービスのベーシックな知識と、AWS クラウドプラットフォームにおけるそれらのサービスの使用に関するベーシックな知識がある
* AWS のコアサービスとユースケース、課金、料金モデル、セキュリティコンセプト、クラウドがビジネスに与える影響についての知識がある

試験内容としては実務経験がまったく無くてもしっかり勉強すればそれほど難しく

元記事を表示

Amazon Managed Streaming for Apache Kafka(MSK) 概要

# 背景・目的
– Amazon Managed Streaming for Apache Kafka(以降、MSKという。)をさわる機会があったので整理する。

# 内容
## 特徴
– フルマネージドの Apache Kafka。以下の機能を有する。
– サーバーのプロビジョニング
– Apache Kafka クラスターの設定
– 障害時のサーバーの交換
– サーバーのパッチとアップグレードのオーケストレート
– 高可用性のためのクラスターの構築
– データの永続的な保存とセキュリティの確保
– モニタリングとアラームの設定
– 負荷変動をサポートするためのスケーリングの実行

– オープンソースで安全性の高い Apache Kafka クラスターを複数のアベイラビリティーゾーン (AZ) に分散して提供し、耐障害性と可用性の高いストリーミングストレージを実現する。
– 他のAWSのサービスとの緊密な統合により、アプリケーション開発がよりシンプルになる。
– セキュリティのためのIAMおよび、AWS Certific

元記事を表示

Cloud Watch Alermの設定周りがよくわからなかったのでまとめる(Terraform)

# 悩み

結局なにをどう設定すれば意図したタイミングでアラートが飛ぶの??

を整理したい。

# やってみよう

terraformの公式の[サンプル](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm)をベースにアレンジしながら解説。

“`go
resource “aws_cloudwatch_metric_alarm” “foobar” {
alarm_name = “terraform-test-foobar5”
comparison_operator = “GreaterThanOrEqualToThreshold”
evaluation_periods = “2”
metric_name = “CPUUtilization”
namespace = “AWS/ECS”
period

元記事を表示

【2022年2月版】4週間でAWSクラウドプラクティショナーに合格した勉強方法

先日AWSクラウドプラクティショナーを受験し合格したので学習方法や受験した感想を書こうと思います。

#背景

私は新卒入社して10ヶ月目の正社員エンジニアとして働いています。
今回、会社の研修を通してAWSを学習することになり、1日5時間程AWSの学習をしました。
学習時の実力としては、EC2やS3の名前は聞いたことがある程度で特にAWSを業務でガッツリ扱った経験はこれまでありませんでした

#使用した教材

・ [図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書](https://www.amazon.co.jp/%E5%9B%B3%E8%A7%A3%E5%8D%B3%E6%88%A6%E5%8A%9B-Amazon-Web-Services%E3%81%AE%E3%81%97%E3%81%8F%E3%81%BF%E3%81%A8%E6%8A%80%E8%A1%93%E3%81%8C%E3%81%93%E3%82%8C1%E5%86%8A%E3%81%A7%E3%81%97%E3%81%A3%E3%81%8B%E3%82%8A%E

元記事を表示

AWS クラウドプラティクショナー 流し見用 part5

●AWS Directory Serviceの特徴
AWS Managed Microsoft Active Directoryとも呼ばれるAWS Directory Service for Microsoft Active Directory はディレクトリ対応ワークロードとAWSリソースが、AWSクラウド内のマネージド型Active Directoryを使用することを可能にする
・Simple Active Directoryを利用し、AWSに新規ディレクトリを構築する
・Microsoft Active DirectoryをAWSに構築する
・Active Directory Connectorにより既存のActive Directoryと連携する

●Amazon Elastic Transcoder
Amazon Elastic Transcoderはクラウドのメディア変換サービス
高度なスケーラビリティ、使いやすさ、高い費用効率性を実現する設計で、開発者や企業は、メディアファイルを変換元のソース形式からスマートフォン、タブレット、PCなどのデバイスで再生可能できるバージョン

元記事を表示

Amazon Textractってみた

# Amazon Textractとは?

いわゆるOCRです。ではないです。
手書き文字などを抽出してくれますが以下にある通り単なるOCRにとどまらないとのこと!

>Amazon Textract は、スキャンしたドキュメントからテキスト、手書き文字、およびデータを自動的に抽出する機械学習 (ML) サービスです。これは、単純な光学文字認識 (OCR) のレベルにとどまらず、フォームやラベルからデータを識別、理解、および抽出します

https://aws.amazon.com/jp/textract/

# 東京リージョンではまだ使えない

バージニア北部 `us-east-1` を選択しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/119864/f3dfcb1a-1a80-4c66-acfa-aee8ab19b944.png)

以下、`Amazon Textract`を試すをポチと

![image.png](https://qiita-image-store.s

元記事を表示

CloudWatchLogsにあるログを30日経過後S3にエクスポートする方法

#はじめに
こんにちは、山田です。
今回は、CloudWatchLogsにあるログを30日経過後S3にエクスポートする方法について記載していきます。

#構成図
構成図は以下の通りです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1096361/4e862dfc-e291-535d-6789-9507ba280c4a.png)

**①:EC2インスタンスにCloudWatchエージェントを導入し、対象のログがCloudWatchLogsに送られるように設定する。
②:S3バケットを作成し、CloudWatchLogsからのアクセスを許可するようにバケットポリシーを変更する。
②:30日前のログをS3にエクスポートするLamnbda関数を準備する。
④:EventBrigdeにて毎日23:59にLambda関数が実行されるようにスケジューリングする。**

#S3バケットの作成
①:AWS管理コンソール -> S3 -> バケット -> バケットを作成をクリックし、一意の名前でバ

元記事を表示

Visual Studio Codeを用いたLambda関数ローカルデバッグ方法メモ

* vscodeでLambdaをデバッグする方法についてメモする。

## 事前準備

* SAMプロジェクト作成

* ひな形作成

“`shell
sam init
“`

※ランタイムはPython3.8を選択。

## 手順

**1.vscodeでSAMプロジェクトを開く。**

**2.Lambda関数`app.py`を開き、テスト用にコメントアウトを外す。**

“`python
import json
import requests

def lambda_handler(event, context):
“””Sample pure Lambda function

Parameters
———-
event: dict, required
API Gateway Lambda Proxy Input Format

Event doc: https://docs.aws.amazon.com/apigateway/latest/develope

元記事を表示

CloudFrontのBasic認証をTerraformで手っ取り早く設定したい

## 参考記事
関数の実装は以下を参考にさせていただきました。ありがとうございます。
https://dev.classmethod.jp/articles/apply-basic-authentication-password-with-cloudfront-functions/

## IDとPASSの生成

“`
$ echo -n “id:pass” | base64
“`

`aWQ6cGFzcw==`が生成されます。

## Terraform定義

CloudFront FunctionをTerraformで定義します。
関数の実装は、上述の記事を参考にさせていただきました。

“`terraform
resource “aws_cloudfront_function” “basic_auth” {
name = “basic_auth”
runtime = “cloudfront-js-1.0”
comment = “Basic Auth”
publish = true
code = <

元記事を表示

Redshiftに格納されている文字列データから特定の文字に囲まれた文字列を抜き出す方法

# はじめに
こんにちは、株式会社ジールの[@Suguru-Terouchi](https://qiita.com/Suguru-Terouchi)です。
今回はRedshiftに格納されている文字列データから特定の文字に囲まれた文字列を抜き出す方法について記載したいと思います。

# やりたきこと
「xxx-12345678-xxx」というようなデータがあった場合に「12345678」だけを抜き出したい。

Redshiftでは [POSITION関数](https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/r_POSITION.html) を使うことで文字列中にある任意の文字を検索して、その位置を取得することが出来ますが、
今回のデータの場合、1つ目の「-」の位置を検索してから [SUBSTRING関数](https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/r_SUBSTRING.html) を使って、
「xxx-12345678-xxx」から1つ目の「-」以降の文字列「123

元記事を表示

AWS SAA-C02に合格した勉強法(22/02/13 受験)

#はじめに
##私のAWSの事前知識
無料利用枠のEC2インスタンスを立ち上げたことがあるだけ

##試験結果
![awsq.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2528939/84852d92-7e04-34f4-5948-a2b52fab8064.png)
一度目の受験で合格することができました。
あまり余裕のある点数ではありませんでしたが。。。

#勉強方法
##Udemy(有料)
[Udemy](https://www.udemy.com/)の下記の動画で勉強しました。
メインの教材はこれだけです。

[【2022年版】これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座](https://www.udemy.com/course/aws-associate/)

SAA試験はC02にバージョンアップしているため、書籍よりも上記の動画での勉強のほうが最新の試験に対応していると思います。
(書籍は購入していないので比較はできませんが)
AWSは更新が頻

元記事を表示

エンジニア目線で始める Amazon SageMaker Training ②エンジニアが①を読んで浮かぶQA

## 記事一覧

[エンジニア目線で始める Amazon SageMaker Training ①機械学習を使わないはじめての Training Job](https://qiita.com/kazuneet/items/795e561efce8c874d115)

## 前回の記事の落穂拾い

前回は、「Amazon SageMaker Training とは、①用意したコードを②用意したデータと③用意した環境で実行してくれ、④結果を自動で保存してくれる、バッチ処理サービスです。」という個人のお気持ちを表現しました。

その中で、用意したコードの実行、用意したデータの利用、結果の自動保存のやり方にフォーカスしてチュートリアル的記事を書き、とにかく読者の皆様が SageMaker SDK を用いて SageMaker Training を動かすことに集中した記事を書きました。

よく聞く疑問に答えた記事を書いたつもりではありますが、それでも私が最初に学習した疑問を全部入れられてはいないので、拾っていく記事とします。

## 実行環境周り

### ストレージの容量は?
[Estimat

元記事を表示

ec2にgitをインストールしてgithubからgit pullできるようになるまで

## 経緯
ec2にアプリをデプロイするためにgitをインストールし、githubからリポジトリをクローンしようと思ったのですが、githubのssh設定でつまづいたため記事として残しておきます。

## 結論
ssh接続のための鍵はroot(sudo)で作成する

## やったこと
### 1. ec2にssh接続
“`
$ ssh -i {ec2に接続するための鍵} ec2-user@{ec2のpublicIP}
“`

### 2. gitインストール
“`
$ sudo yum install git
“`

### 3. githubにssh接続するための鍵を作成する
“`
$ ssh-keygen -t ed25519 -C {自分のメールアドレス}
“`
3回ほど質問されますが、全てEnterを押せばOKです
これで~/.ssh/id_ed25519(秘密鍵)と~/.ssh/id_ed25519.pub(公開鍵)が生成されます

### 4.githubに公開鍵を登録する
https://github.com/settings/ssh/new
こちらから公開

元記事を表示

1時間で出来る!?Alexaスキル開発入門

## はじめに
– 素人がAlexaスキルを作ってみて、割とさっくりスキルができたので、その感動を共有したい!と思い立ち、ここに記します
– Alexaスキル開発については、公式のガイド(ブログ)が充実しており、それをなぞるだけで、実際にスキルが動くところまで確認ができます
– https://developer.amazon.com/ja-JP/alexa/alexa-skills-kit/get-deeper/tutorials-code-samples/build-a-skill
– 本記事では、ガイドをなぞりつつ、補足情報を残していきます

## Amazon開発者アカウントの登録
– https://developer.amazon.com/ja/blogs/alexa/post/31c9fd71-f34f-49fc-901f-d74f4f20e28d/alexatraining-firstskill
– 「準備. Amazon 開発者アカウントの作成」まで
– AWSアカウントとは別のアカウントとなるため、注意!

## 新規スキルの作成

元記事を表示

【AWS】PrivateLinkを利用した閉域網なWeb環境をCloudFormationで構築

#1. はじめに
職場でPrivateLinkという単語を聞き、「PrivateLinkってエンドポイント貼るやつっすよね!」って発言したところ、そんな単純な概念ではないと冷静に返されました。。

考えてみたら、今までエンドポイントを強く意識して環境構築をしたことって無かったので、改めてエンドポイントを意識したハンズオンでもやってみるかと本記事を執筆した次第です。

#2. 概要
本記事の概要を以下に記載します。

##2.1 本記事の概要
PrivateLinkを利用したプライベートなWeb環境を構築します。
環境構築にはCloudFormationを使用します。

##2.2 システム構成図
![Privatelink-handson-web-env.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/570694/ff06b6ba-1d92-6c81-dc3f-5abb0ec03275.png)

##2.3 作業工程
– プロパイダークラスター
– ネットワーク環境を構築(VPC,Subnet

元記事を表示

OTHERカテゴリの最新記事