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

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

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

元記事を表示

NATインスタンス を用いて、VPC内でLambdaを実行

# はじめに
APIサービスを利用するにあたり固定のIPにする必要があったため、Lambda + 固定IPのNATインスタンスを構築しましたので、まとめます。
NATゲートウェイの方が、運用は楽ですが、サービスが小規模かつ、コスト面でNATインスタンスの方が安いため、こちらを利用しました。

##コスト
NATゲートウェイ:稼働時間料金で46 USD/月、+ データ処理および転送料金
NATインスタンス:稼働時間料金で10 USD/月(t3.micro)、+ 転送料金

# 完成図

![スクリーンショット 2022-02-14 22.44.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/89af707f-3fea-37c7-cec8-fbdd81886d49.png)

# 事前構築
VPCやサブネットは以下のように作成しましょう。

![スクリーンショット 2022-02-14 22.41.56.png](https://qiita-image-store.s3.ap-nort

元記事を表示

AWSにEC2, RDS, S3のインスタンスを立ててみた

昨年、「AWS 認定ソリューションアーキテクト – アソシエイト」に合格したものの、
実際にAWSに環境構築したりする機会がほとんどないなかったため、
AWS上でWebアプリ環境を構築すべく、EC2、S3、RDSのインスタンスを作成してみました。
無料枠を使えるのもは使うようにしています。

S3にフロントを配置し、EC2にバックエンドのAPIサーバを構築、RDSはデータベースとし、
S3に配置したWebページよりAPIを実行し、データの読み書きを行うWebアプリを想定しています。

その前段階として、それぞれのインスタンスを立ててみました。

# EC2
コンソールトップより`仮想マシンの起動`を選択して始めます。

### AMIの選択
`Amazon Linux 2 AMI(HVM)`を選択します。
無料利用枠のみチェックで無料枠を絞れます。

### インスタンスタイプの選択
`t2.micro`を選択します。
t2.microのみ無料利用枠の対象のようです。(ラベルが表示されている)
ちなみに、t2.microの性能は次のようです。

### インスタンスの詳細の設定
変更な

元記事を表示

【AWS lambda】Terraformでlambda関数を作成してみよう【Terraform】

# Terraform で AWS Lambda Function を作成してみよう

Terraform で AWS Lambda 関数(Hello,Lambda!)を 一番簡単な構成で作成してみます

## バージョン

試してみたバージョンは以下の通りです

| Name | Version |
| ——— | ——- |
| terraform | 1.1.5 |
| aws | 4.0 |

## 構築リソース

– lambda function
– IAM role

IAMロールはlambdaがAWSリソースに変更を与えるために必要になります
今回はHello,Lambdaを表示するだけなのでほぼ何も権限を付与してません

## 手順

### 1. IAMロールを定義

IAMロール作成は`Module`を使います

IAMロールをterraformで作成するには、
`aws_iam_role`, `aws_iam_policy`, `aws_iam_role_policy_attachment`
の3つを定義する

元記事を表示

Svelte から AWS Lambda を API Gateway をトリガーに呼び出す

Svelte で書かれた、氏名とメールアドレスを入力する欄があるだけのシンプルなフォームの Submit ボタンが押されたとき、AWS Lambda 関数を呼び出す場合を考えます。

## Svelte プロジェクト作成

以下のコマンドを実行して、プロジェクトを作成し、バリデーションの[felte](https://felte.dev/)をインストールします。``は、任意の名前です。

“`bash
$ npx degit sveltejs/template $ cd $ npm install
$ npm install –save felte yup @felte/validator-yup
“`

ちなみに`npm install`は`npm i`に、`npm –save`は`npm -S`に置き換えられます。

`src`直下にある`App.svelte`を以下に書き換えます。felte を読み込んでいます。

“`svelte:App.svelte