- 1. AWS SAMがStep Functionsをサポートしたのでやってみる
- 2. github actionsを使って aws + terraform + ansible でCI/CD環境を構築してみた
- 3. AWS IoT Events は IoT デバイスの「ステートマシン」
- 4. Route53でドメインを購入方法
- 5. AWS 利用方法メモ(EC2、EBS)
- 6. AWS DiscoveryService
- 7. eksctl でクラスター作成して Fargate 利用し ALB Ingress Controller デプロイまで
- 8. 【AWS】S3ストレージの種類についてのアウトプット
- 9. CDK(TypeScript)で既存のS3 Bucket上のLambdaを指定する
- 10. CodeBuildのテストレポート機能が一般公開されたから使ってケチつけてみた
- 11. SnowBall
- 12. AWS認定クラウドプラクティショナー合格体験記
- 13. S3
- 14. EFS
- 15. AWS CLI on dockerで死なないためのalias設定
- 16. エクセルから参照するオンプレのSQLserverをAWSに移行する
- 17. Amazon Elastic Block Store (Amazon EBS)
- 18. マイグレーションについて
- 19. AWSメモ
- 20. BeanStalk
AWS SAMがStep Functionsをサポートしたのでやってみる
## はじめに
AWS::Serverless::StateMachine リソースを使用して、SAM テンプレート内で AWS Step Functions の
ステートマシンを定義できるようになりました。:rocket: **AWS SAM adds support for AWS Step Functions**
https://aws.amazon.com/jp/about-aws/whats-new/2020/05/aws-sam-adds-support-for-aws-step-functions/AWS SAM CLI も v0.52.0 で Step Functions Resource をサポートしています。
:rocket: **Support for a new Step Functions Resource in SAM**
https://github.com/awslabs/aws-sam-cli/releases/v0.52.0
## やってみる
前述のとおり、AWS SAM CLI は v0.52.0 以上である必要があります。`
github actionsを使って aws + terraform + ansible でCI/CD環境を構築してみた
## 概要
最近github actionsが楽しいのでaws環境でteraform + ansible実行してみた。
EC2を構築し、httpdをインストールする所まで実施。## 目次
・事前準備
・ディレクトリ構成
・バケット作成
・IAMユーザ作成
・terraformコード作成
・ansible コード作成
・github actions 作成
・githu actions 実行結果##事前準備
– EC2のIPの自動取得にdyanamic inventoryが使用できること
##ディレクトリ構成
“`
├── README.md
├── ansible
│ ├── ansible.cfg
│ ├── ec2.ini
│ ├── ec2.py
│ ├── roles
│ │ ├── common
│ │ │ ├── files
│ │ │ │ └── main.yml
│ │ │ └── tasks
│ │ └── nginx
│ │ ├── files
│ │
AWS IoT Events は IoT デバイスの「ステートマシン」
[AWS IoT Hero になった](https://aws.amazon.com/jp/developer/community/heroes/kohei-matsushita/)ので、やっぱ AWS IoT 関連のアウトプットは必要でしょう、ということでお送りしております。
## AWS IoT Events は「ステートマシン」
AWS では[目的に応じた IoT 向けサービス](https://aws.amazon.com/jp/iot/)が数多く存在しています。
その中でも今回取り上げる [AWS IoT Events](https://aws.amazon.com/jp/iot-events/) は~~説明で損をしている[^1][^2]~~素晴らしいサービスですので、皆さんに知ってもらいたいと思い、紹介しています。以下は AWS IoT Events の実装画面です。見たことありませんか?そうです、「**ステートマシン**」です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.c
Route53でドメインを購入方法
#目的
個人アプリを制作していてssl化が必要だったため
筆者の備忘録
##ssl化がどうして必要なのかsllとはサーバとブラウザ間の通信を暗号化させる役割を担っているいます。
暗号化することにより、ハッカー、盗聴などを防ぎ、データ送受信を安全に行うことができるようです。
鍵のついたサイト下がsslしているサイトです。urlの頭にはhttpsと書いてあるサイトです。(httpではない)
わかりやすく言うとsslは、
安全なサイトの証明!今までは、決済(クレジットカード等)や個人情報に関わるページ等でsll化すればよかったが、セキリティーに対する高まりから「常時ssl化」が必要になっているようです。
Google ChromeでもSSL対応されていないWebサイトに対して警告アラートがでてい
AWS 利用方法メモ(EC2、EBS)
##書いてあること
– EC2、EBSの利用方法メモ##EC2インスタンスを起動
1. EC2
1. インスタンスを起動
1. AMIを選択
1. インスタンスタイプを選択
1. 次のステップ
1. 次のステップ
1. 次のステップ
1. 次のステップ
1. タイプの「HTTP」「HTTPS」を追加
1. 確認と作成
1. 起動
1. キーペア名を入力
1. キーペアのダウンロード
1. インスタンスの作成##SSH接続(Mac)
1. pemファイルを`.ssh`ディレクトリにコピー
1. 下記コマンドでSSH接続“`shell
# パーミッション設定
$ chmod 600 ~/.ssh/●●●.pem# SSH接続
$ ssh -i ~/.ssh/●●●.pem ec2-user@パブリックIPまたはパブリックDNS
“`##SSH接続(Windows)
###ppkファイルを生成
WindowsでPuTTYやWinSCPでSSH接続する際に必要なppkファイルを生成する
1. PuTTYgenを起動
1. Conversions
1. Imp
AWS DiscoveryService
#AWS DiscoveryService
> AWS Application Discovery Service では、オンプレミスサーバーに関する使用状況と設定のデータを収集することで、AWS クラウドへの移行を計画できます。Application Discovery Service は AWS Migration Hub と統合されています。これにより、移行ステータスの情報が 1 つのコンソールに集約されるため、移行の追跡が簡単になります。検出したサーバーを表示し、これらをアプリケーションとしてグループ化して、各アプリケーションの移行ステータスをホームリージョンの Migration Hub コンソールから追跡できます。> 検出されたすべてのデータは、AWS Migration Hub ホームリージョンに保存されます。したがって、検出および移行アクティビティを実行する前に、Migration Hub コンソールまたは CLI コマンドを使用してホームリージョンを設定する必要があります。データは、Microsoft Excel や AWS 分析ツール (Amazon Athen
eksctl でクラスター作成して Fargate 利用し ALB Ingress Controller デプロイまで
# EKS とは
AWS が提供しているマネージド型の Kubernetes サービスです。
この記事では、具体的な構成をもとに実際に触ってみることで理解を深めることを目標とします。EKS で作成した Kubernetesクラスターとは別に
Docker Desktop などで作成した Kubernetesクラスターを触りつつ進めると分かりやすかったです。
(何か Error があった際にも切り分けや原因究明が容易になります)
?クラスターの切り替えは Docker アイコンからワンクリックで可能なので Docker Desktop がお薦めです。# クラスターの作成方法
AWS EKS (Elastic Kubernetes Service) を利用して Kubernetes クラスターのセットアップ、デプロイまで行います。
開始方法は2通りあります。
– EKS コンソールからクラスター作成
– eksctl でクラスター作成今回は VPC やセキュリティグループなど必要なリソースも併せて自動設定できる `eksctl` を用いてセットアップを行いたいと思います
【AWS】S3ストレージの種類についてのアウトプット
# はじめに
現在、AWSソリューションアーキテクトの学習をしております。
今回は、S3ストレージの種類(ストレージクラス)についてアウトプットしていきます。# S3ストレージの種類
## S3標準
アクセス頻度の高いデータ向けのストレージクラス。
**特徴**
– イレブンナインの高い耐久性(99.999999999%の耐久性)
– オブジェクト作成時にデフォルトで選択されている**用途**
– アクセス頻度が高いデータ(配信画像・映像、分析データなど)
## S3 Intelligent-Tiering
アクセス頻度を自動判別し、最もコスト効率のよいストレージクラスに自動的にデータを移動させるストレージクラス。
**特徴**
– 「高頻度」と「低頻度」のアクセス階層が組み込まれている
– 連続で30日アクセスされていないオブジェクトは自動的に「低頻度」のアクセス階層へ移動
– モニタリングと自動化のために料金が発生**用途**
– アクセスパターンが変化するデータ
– 不明な存続期間が長いデータ## S3標準-低頻度アクセス(S3標準 – I
CDK(TypeScript)で既存のS3 Bucket上のLambdaを指定する
aws-cdkでの環境構築メモです。
特定のBucketへのPutをトリガーに発火するLambdaを作っています。
ただし、Lambdaのコードベースはcdk管理外のS3で管理されているものとします。## 1. fromCfnParametersのdefault値で無理やり当てる
“`typescript
…
/* S3 */
const originalVideoBucket = new Bucket(this, `OriginalVideoBucket` , {
bucketName: resources.originalVideoS3Bucket.name,
removalPolicy: cdk.RemovalPolicy.DESTROY, // RETAIN
versioned: true,
publicReadAccess: false,
});const fn = new lambda.Function(this, ‘OriginalVideoAssetUploaded’
CodeBuildのテストレポート機能が一般公開されたから使ってケチつけてみた
# TL; DR
コードカバレッジの表示はできませんので、期待するとガッカリするかもしれません。
今後よくなっていくことを信じて待ちましょう!# はじめに
AWSのCodeBuildで、2019年11月25日にテストレポートのサポート機能(以降、テストレポート機能と呼ぶ)がプレビュー公開されていました。
参考:[AWS CodeBuild で新たにテストレポートをサポート開始](https://aws.amazon.com/jp/about-aws/whats-new/2019/11/aws-codebuild-adds-support-for-test-reporting/)
また、2020年5月22日になり、テストレポート機能が一般公開されました。
参考:[AWS CodeBuild テストレポートの一般公開が開始](https://aws.amazon.com/jp/about-aws/whats-new/2020/05/aws-codebuild-test-reporting-is-now-generally-available/)
この機能がどのようなもの
SnowBall
#AWS Snowball デバイスとは
> AWS Snowball サービスでは、物理ストレージデバイスを使用して、Amazon Simple Storage Service (Amazon S3) とオンサイトのデータストレージロケーション間で、インターネットよりも高速に大量のデータを転送します。AWS Snowball を使用すると、時間と費用を節約できます。Snowball には、ジョブの作成、データの追跡、ジョブの完了までのステータスの追跡に使用できる強力なインターフェイスが用意されています。
##AWS Snowball デバイスの相違点
> Snowball と Snowball Edge は 2 つの異なるデバイスです。
AWS認定クラウドプラクティショナー合格体験記
#はじめに
AWS認定クラウドプラクティショナーの資格を取得することができたので、文系出身でエンジニア1年目だった私がどうやって合格できたのか、自身の振り返りの意味も込め、勉強法やおすすめのテキストなどをまとめました。
資格取得を目指している人のお役に立てれば幸いです。#クラウドプラクティショナーとは?
AWS認定試験の中でも一番難易度の易しい、登竜門的な位置づけにある資格です。
公式ドキュメントによると以下の通りです。>認定によって検証される能力
・AWS クラウドとは何かということ、およびベーシックなグローバルインフラストラクチャについて定義できる
・AWS クラウドのベーシックなアーキテクチャ原理を説明できる
・AWS クラウドの価値提案について説明できる
・AWS プラットフォームの主なサービスと一般的なユースケース (例: コンピューティング、分析など) について説明できる
・AWS プラットフォームのセキュリティとコンプライアンスのベーシックな側面、および共有セキュリティモデルについて説明できる
・請求、アカウントマネジメント、料金モデルを明確に理解している
・ドキ
S3
#S3
> Amazon Simple Storage Service(Amazon S3)はインターネット用のストレージです。Amazon S3 を使用すると、データの大きさにかかわらず、ウェブ上のどんな場所からでもいつでも保存、取得することができます。シンプルかつ直感的なウェブインターフェイスの AWS マネジメントコンソール を用いて、これらのタスクを実行することができます。> Amazon S3 を最大限に活用するには、いくつかの簡単なコンセプトを理解する必要があります。Amazon S3 は、データをオブジェクトとしてバケットに保存します。オブジェクトは、ファイルと、オプションとしてそのファイルを記述する任意のメタデータで構成されています。Amazon S3 にオブジェクトを保管するには、バケットに保管するファイルをアップロードします。ファイルをアップロードする際に、オブジェクトと任意のメタデータにアクセス許可を設定することができます。
##Amazon S3 の高度な機能
> このガイドの例では、バケットの作成、バケットへのデータのアップロードとバケットからのダウンロ
EFS
#Amazon Elastic File System とは
> Amazon Elastic File System (Amazon EFS) は、AWS クラウドサービスおよびオンプレミスリソースで使用するための、シンプルでスケーラブル、かつ伸縮自在なフルマネージド型の NFS ファイルシステムを提供します。アプリケーションを停止させることなく、オンデマンドでペタバイト規模までスケールするよう設計されており、ファイルの追加や削除に応じて自動的に拡張/縮小されるため、拡張に対応するための容量のプロビジョニングや管理は不要になります。Amazon EFS には、ファイルシステムをすばやく簡単に作成および設定できるシンプルなウェブサービスインターフェイスがあります。このサービスでは、ユーザーに代わってすべてのファイルストレージインフラストラクチャを管理するため、複雑なデプロイ、パッチ適用、および複雑なファイルシステム設定の保守を行う必要がありません。> Amazon EFS はネットワークファイルシステムバージョン 4 (NFSv4.1 および NFSv4.0) プロトコルをサポート
AWS CLI on dockerで死なないためのalias設定
# .zshrcとか.bashrcなどに書いておく内容
長くなってしまいました。
変数評価のところをもうすこしきれいに書きたいのですが、動いているので一旦お披露目します。“`shell
AWS_PAGER=cat
alias aws=’docker run –rm -ti \
-v ~/.aws:/root/.aws \
-v $(pwd):/aws \
-v ~/.ssh:/root/ssh \
$(for _e in AWS_PAGER AWS_ACCESS_KEY_ID AWS_CA_BUNDLE AWS_CONFIG_FILE AWS_DEFAULT_OUTPUT AWS_DEFAULT_REGION AWS_PROFILE AWS_ROLE_SESSION_NAME AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN AWS_SHARED_CREDENTIALS_FILE;\
do \
if [ “x$(eval echo \$$_e)” != “x” ];\
then \
echo -n ” –env $(echo ${_e})=$(
エクセルから参照するオンプレのSQLserverをAWSに移行する
#社内ではエクセルでのマスタ管理が一般的
SQLserverでのマスタ管理を行う前の状況:
どこの部署でも使用するような社員名簿のような人事マスタが、人事部や情報システム部と交流のある一部の人だけが使える状態となっていた。最新情報が使えるのは人事部、情報システム部だけで、他の方は手に入れた人事マスタの情報を自分で更新している状況であった。
そんな非効率で不公平な状況を改善する為に、SQLserverで社内DBを構築した。SQLserverを選定したのはエクセルから直接最新データを読み込める為、VBA等での作り込みが不要になる為であった。社内DBは余っていたデスクトップパソコン上に構築したので、利用者が増えるにつれてパワー不足が顕著になってきたので、AWS(RDS)に移行することにした。
#RDS上に.bakを復元する方法で悩む
OS上に構築した場合は.bakを置いたディレクトリを指定するだけで復元できたが、RDSの場合はS3に置く必要があるとのこと。S3にバケットを作成し、RDSからアクセスできるようロールを設定。
RDSにSqlServerManagementStudioで接続
Amazon Elastic Block Store (Amazon EBS)
#Amazon Elastic Block Store (Amazon EBS)
> Amazon Elastic Block Store (Amazon EBS) は、EC2 インスタンスで使用するためのブロックレベルのストレージボリュームを提供します。EBS ボリュームの動作は、未初期化のブロックデバイスに似ています。これらのボリュームは、デバイスとしてインスタンスにマウントできます。同じインスタンスに複数のボリュームをマウントしたり、一度に複数のインスタンスにボリュームをマウントすることができます。これらのボリューム上にファイルシステムを構築できます。また、これらのボリュームをブロックデバイスを使用する場合と同じ方法で使用できます (ハードドライブとして使用するなど)。インスタンスにアタッチされているボリュームの設定は動的に変更できます。##暗号化シナリオ
* 暗号化されていないボリュームを復元する (デフォルトでの暗号化が有効になっていない場合)
* 暗号化されていないボリュームを復元する (デフォルトでの暗号化が有効になっている場合)
* 暗号化されていないスナップショ
マイグレーションについて
ツールを使ったAWSへのサーバー移行の考察
https://dev.classmethod.jp/articles/consider-servers-lift/#####移行ツール
* SMS
* VMware vSphere または Windows Hyper-V 上の仮想マシンを EC2 へ移行 (レプリケーション) するサービス
* CloudEndure
* オンプレミスの各サーバーにエージェントをインストールします。 エージェントがサーバーのディスク上のデータブロックをレプリケーションします。AWS にもレプリケーション先の他に CloudEndure サーバーが必要です。
#####サーバー移行方式
* 増分移行
* SMS や CloudEndure で継続的に増分レプリケーションをしておき 本番移行直前にサービスを停止し静止点を取って 完全な形で同期をとる方式です。
* Migration Once DataSynchronize Many
* レプリケーションはあるタイミングで一度切り実施、 その後はアプリケーションに必要なデ
AWSメモ
# 1-2
AZ-dは使用してない?
* グローバルサービス:Route53、IAM、CloudFront
* リージョンサービス:VPC、DynamoDB、Lambda
* アベイラビリティサービス:サブネット、EC2、RDS# 1-4 ネットワークサービス
## VPCの主なサービス
* VPC
* サブネット
* ルートテーブル
* IGW
* IGWをアタッチしたVPC=パブリックサブネットだが、どうやって確認する?
* Elastic IP
* エンドポイント
* ゲートウェイ型はS3 or DynamoDB。それ以外はインターフェイス型。
* NATゲートウェイ
* プライベートサブネットからインターネットに接続する際に使用。
* NATゲートウェイを使用しない際はNATインスタンスを構築する。冗長化が必要。
* NATゲートウェイを利用する際の設定を知りたい。
* ピアリング接続
* 異なるAWSアカウント間でも接続可能。実際やってる?## セキュリティの主なサービス
* セキュリティグループ
* インスタン
BeanStalk
#Beanstalk
[初心者向け]AWS Elastic Beanstalk
https://qiita.com/yShig/items/2120bba6649321623cad