- 1. Apache Airflowの環境変数を使用する
- 2. Apache Airflow UIの画面構成について
- 3. amplify push のエラーと戦う
- 4. Amazon Managed Workflows for Apache Airflow (MWAA) のセットアップ
- 5. vpc内外のLambdaからvpc内外のLambdaを呼ぶ時、public subnet や private subnet などのパターン別に検証してみた
- 6. SSL証明書をlet’s encryptから別アカウントのACMに変更
- 7. AWS Redshiftにてテーブルを作成してデータをロードする編
- 8. LocalStack をさわってみた
- 9. 【夢】スマートホーム化を始めた ~寝起き編~
- 10. 祝!VMware Cloud on AWS の i4i.metalインスタンスがGAされました
- 11. ソースコード変えてないのにLambdaをデプロイしたら急にエラーになって焦った話
- 12. AWS CLIを使ってS3に大量のファイルを自動でアップロードする
- 13. AWS JumpStart for NewGrads 2022に参加してきました!
- 14. JenkinsのAmzonLinux2スレーブと接続できなくなったのでJavaを上げた
- 15. App Runnerを使ってMockoonを爆速でホスティングしてみた
- 16. 【AWS】SAP on AWS 合格記&12冠達成するまでの勉強法
- 17. 若手社員に向けて 目標設定について
- 18. ANS-C01試験対策(3回目)
- 19. CloudTrail で複数のアカウントからログファイルを受け取るバケットを CloudFormation で作成する
- 20. 受験談 AWS Certified SAP on AWS – Specialty 認定
Apache Airflowの環境変数を使用する
# Apache Airflowとは
Apache AirflowはOSSのワークフロー管理ツールです。DAG(有向非巡回グラフ)を用いてワークフローを作成し、各種データの取り込み、加工などの処理のワークフロー制御を行うことができます。
また、AWSなどのクラウドプロバイダーからApache Airflowのマネージドサービスが提供されているため、比較的に導入、利用がしやすいツールとなっています。
この記事ではAirflowのバージョン2.2を使用しています。# Apache Airflowの環境変数の使用
Apache AirflowではDAGから使用可能な環境変数(Variables)をAirflow UIのAdmin画面を通して設定可能です。
## 環境変数(Variables)の設定
– Airflow UIで「Admin」 → 「Variables」を選択します。
![mwaa-handson-var-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276167/a08c
Apache Airflow UIの画面構成について
# Apache Airflowとは
Apache AirflowはOSSのワークフロー管理ツールです。DAG(有向非巡回グラフ)を用いてワークフローを作成し、各種データの取り込み、加工などの処理のワークフロー制御を行うことができます。
また、AWSなどのクラウドプロバイダーからApache Airflowのマネージドサービスが提供されているため、比較的に導入、利用がしやすいツールとなっています。
ここではAWSのAmazon Managed Workflows for Apache Airflow (MWAA)でApache Airflowのバージョン2.2のUIがどのようなものか確認をしていきます。# Apache Airflow UIについて
AirflowのUIはDAGsというのがメイン画面となっており、この画面から各種ワークフローの管理が可能です。それぞれのワークフローの実行のON/OFFや実行履歴の確認を行うことができます。ここでは良く利用される画面について解説していきます。
以下の画面では`etl_athena_job`というワークフローが1つだけ存在
amplify push のエラーと戦う
# ブランチを切り替えた時にlambda funtionが消えるパターン
## 症状
### error1“`
CloudFormation template is missing in the resource directory
/Users/xxxx/Documents/xxxxx/xxxxx/amplify/backend/function/functionXの名前
“`不要になっている/Users/xxxx/Documents/xxxxx/xxxxx/amplify/backend/function/functionXが残ってないか確認する
### error2
“`
Resource is not in the state stackUpdateComplete
“`
このときに
Backend environments>アクション>最新のデプロイアクティビティを確認(ここはエラーになったら見た方が良い)
UPDATE_FAILEDを探すと“`
2022/11/15, 23:21:29 functionYの名前 (function) | UPD
Amazon Managed Workflows for Apache Airflow (MWAA) のセットアップ
# Amazon Managed Workflows for Apache Airflowとは
Amazon Managed Workflows for Apache Airflow (以下MWAAと呼びます) は、ワークフロー制御ツールであるApache AirflowのAWSマネージドサービスです。
マネージドサービスのため、デプロイの簡易化、オートスケーリング、AWSサービスのプラグインのインテグレーションを行うことができるのが特徴になります。# MWAAのセットアップ方法
## 事前準備
MWAAのセットアップを行うには事前にMWAAの情報の格納を行うS3のバケットを作成しておく必要があります。
ここでは、`airflow-${AWS_ACCOUNT_ID}-${AWS_REGION}-bucket`というバケットを作成して、以下の3つのフォルダも作成しておきます。
– dags
– in0
– out0![mwaa-handson-s3-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.
vpc内外のLambdaからvpc内外のLambdaを呼ぶ時、public subnet や private subnet などのパターン別に検証してみた
# はじめに
LambdaからLambdaを呼ぶ時、以下のパターンでアクセス可能かどうか検証しました。
– vpc 内の public 内にいる Lambda が呼ぶ / 呼ばれる
– vpc 内の public 内にいる Lambda が呼ぶ / 呼ばれる (vpc endpointあり)
– vpc 内の private 内にいる Lambda が呼ぶ / 呼ばれる
– vpc 内の private 内にいる Lambda が呼ぶ / 呼ばれる (vpc endpointあり)
– vpc 外にいる Lambda が呼ぶ / 呼ばれる# 構成図
以下のようにLambdaを呼ぶ側のLambdaと呼ばれる側のLambdaをそれぞれの2つずつ作成しました。
![スクリーンショット 2022-11-15 22.37.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/13fc38dd-86a6-cdaf-3100-7288cd3a089b.png)# sg作成
まずsgを作成します
SSL証明書をlet’s encryptから別アカウントのACMに変更
## 概要
Let’s encryptの証明書でSSL化していたが、認証の強度を上げるためにAWS Certificate Manager発行の証明書を使用するように変更したい。変更前の構成はELBなしのEC2インスタンス1台にnginxサーバを設置していた。
そのままnginxにACMの証明書を適応しようとしたのですが、それには
>Nitro System上に構築されるEC2インスタンスで、CPUが4vCPU以上[ACMのSSL証明書(Amazonの無料証明書)をEC2(Apache)で利用してみた](https://blog.denet.co.jp/acm-ssl-apache/#%E3%81%93%E3%82%8C%E3%81%BE%E3%81%A7%E3%81%AEACM%E3%81%AESSL%E8%A8%BC%E6%98%8E%E6%9B%B8%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95)
と制約が多くめんどくさそうでした。
一方ALBにACM証明書適応するのは簡単そうなうえ、[1台のEC2でもELBを使うメリットについてまとめてみ
AWS Redshiftにてテーブルを作成してデータをロードする編
AWS RedShiftにてテーブルへデータをロードする際に苦戦したメモ
# 1.テーブルの生成(CREATE TABLE)
redshiftに作成したインスタンスにテーブルを生成。
charのsize5で生成したつもり
![createtbl.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/38727/501f4e64-d128-a810-f215-562059f70d8e.png)出来上がったテーブルを見るとchar(1)になっている
![createtbl_kekka.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/38727/674c612e-16ce-4c91-e2f1-cfe10f03db1a.png)
**原因は不明**
仕方ないのでSQLで再生成
“` SQL
DROP TABLE “public”.”tbl_test2″;
CREATE TABLE “public”.”tbl_test2″ ( te
LocalStack をさわってみた
# LocalStack をさわってみた
AWS のサービスをさわり始めるにあたって、利用費用を意識せずに実験がしたいなと思っていたところ、LocalStack の 1.0 が正式リリースされていたので、LocalStack を起動して、AWS-CLI を使って LocalStack に S3 バケットを作成するところまでをやってみました。
[2022 年 7 月に LocalStack 1.0 が正式リリースされた](https://www.publickey1.jp/blog/22/awslocalstack10.html)
## LocalStack とは
クラウドアプリケーションを開発するための、ローカルマシン上でクラウドサービスをエミュレートする機能を提供するツールです。
現時点で、AWS の主要サービスに対応しており無料で使える「Community」版でも基本的な API 群は利用することができるとのこと(※)。
※ 無料で使えるものとそうでないものは[AWS Service Feature Coverage](https://docs.localstack.c
【夢】スマートホーム化を始めた ~寝起き編~
# はじめに
「スマートホーム」っていいですよね。
言葉ひとつで複数の電子機器をまとめて操作したり、居住者の行動パターンを学習して自動的に家電を制御したり…。
そんなスマートな暮らしをしてみたい。ので作ってみます。
本記事は「寝起き編」ということで、続編があるかもしれないです。※自分の調べた範囲では「スマートホーム」という用語の明確な定義が見つかりませんでした。本記事では、「自動・遠隔制御が可能な家電を導入した居住空間」の意で使用しております。
# やりたいこと
記念すべきスマートホーム化への第一歩として、**起床時にアラーム+太陽光で気分よくスッキリ目が覚める**ような仕組みを作ろうと思います。
自分はアラームさえセットしていれば起きれるタイプなのですが、それでも眠気と激闘を繰り広げHPゲージを真っ赤にしつつ起床しております。朝スッキリと目が覚め、HPゲージが緑のまま一日を始めることができたなら、最高の一日になる気がしませんか?最高に決まっています。ちなみに後述の[ガジェット](#ガジェット)を使えば、専用のアプリから「指定の曜日、時刻にカーテンを開く」といった設定が可
祝!VMware Cloud on AWS の i4i.metalインスタンスがGAされました
# 1. とうとうGAされたi4i.metalインスタンス
以前より噂だけありましたが、とうとうGAされたので調べてみます。https://aws.amazon.com/jp/about-aws/whats-new/2022/10/general-availability-amazon-ec2-i4i-metal-instance-vmware-cloud-aws/
VMware Cloud on AWS はi3.metalとi3en.metalだけの提供でしたが、VMware Explore 2022でi4i.metalについてもアナウンスされました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864151/85589525-12f7-2d08-d838-2209c840bfe1.png)
> VMware Japan Blog [VMware Cloud on AWS の最新アップデート(VMware Explore 2022 の発表内容)](https://blogs
ソースコード変えてないのにLambdaをデプロイしたら急にエラーになって焦った話
# 起きたこと
GitHub Actionsで毎朝自動デプロイを行っているServerless FrameworkのAPIサービス(API Gateway + Lambda)がある朝急にエラーを吐くようになった。“`
TypeError: _convert_to_request_dict() missing 1 required positional argument: ‘endpoint_url’
“`# 試したこと、調査したこと
## どこでエラーになっているか
[PynamoDB](https://github.com/pynamodb/PynamoDB)というライブラリを使っていて、それが吐いているエラーだということは確認できた。
ただ、掘っていくのが大変で真因を突き止めるのに難航。
ライブラリのバージョンは固定していたのでライブラリが更新されているわけではないと判断。## エラーが起きてなかった時点の昨日のソースに戻して再デプロイして解消するか試す
もしソースの変更が原因なら解消するはずなのだが解消しなかった。不可解なことに時間差でほぼ同様のソースがデプロ
AWS CLIを使ってS3に大量のファイルを自動でアップロードする
# 目次
[事前準備](#事前準備)
[ファイルをS3にアップロードする](#ファイルをs3にアップロードする)# 事前準備
・以下のURLを叩いてインストーラーをダウンロードし、AWS CLIをインストールする
https://awscli.amazonaws.com/AWSCLIV2.pkg・インストールが終わったらターミナルで`$ which aws`を流してコマンドがつかえるか確認する
・`$ aws configure`を流してアクセスキー、シークレットアクセスキー、リージョン名を入力する
“`
$ aws configure
AWS Access Key ID [None]: xxxxxxxx
AWS Secret Access Key [None]: xxxxxxxxxxxxxxxx
Default region name [None]: ap-northeast-1
Default output format [None]:
“`
アクセスキーは AWS -> IAM -> ユーザー で確認が可能。シークレットキーは作成時に表示またはダウンロードできるの
AWS JumpStart for NewGrads 2022に参加してきました!
## はじめに
初めまして。ウイングアーク1st株式会社 プリセールスエンジニアの村中です。
先日、AWS JumpStart for NewGrads 2022(オンライン開催)に弊社の新卒社員として参加してきました!今回は3日間にわたるイベントの内容を振り返りながら、成果物の紹介をしていきます!
**※インターン内容公開の許可をいただいております。**
## 参加者
ウイングアーク2022年度新卒入社の開発・SE・プリセールスの12名が参加しました?
## AWS Jumpstart for NewGradsとは?
:::note info新卒1年目のエンジニアの方々を対象とした、3日間の実践的な研修プログラムです。 将来的にAWS活用をリードする人材になるための第一歩をスムーズに踏み出せるようなコンテンツをというコンセプトで企画されているため、単なるAWSサービスの学習だけでなく、チームに分かれて要件に合った適切なアーキテクチャを検討・設計する経験を積む部分にフォーカスした内容となっています。
出典:「新卒エンジニア向け研修プログラム AWS JumpSta
JenkinsのAmzonLinux2スレーブと接続できなくなったのでJavaを上げた
# ❄️JenkinsがJava8の対応を終了❄️
– [JenkinsがJava 8の対応を終了し、Java 11が必須に。Java 17の対応も開始](https://www.publickey1.jp/blog/22/jenkinsjava_8java_11java_17.html)
– [Jenkins requires Java 11 or newer](https://www.jenkins.io/blog/2022/06/28/require-java-11/)# ?Java11が必須になりました ?
– Jenkins:2.361.x
– [Jenkins LTS ChangeLog](https://www.jenkins.io/changelog-stable/)
– [Upgrading to Jenkins LTS 2.361.x](https://www.jenkins.io/doc/upgrade-guide/2.361/#upgrading-to-jenkins-lts-2-361-x)## なので、SlaveのJavaも合わせてUpdate
App Runnerを使ってMockoonを爆速でホスティングしてみた
# mockoonを爆速でホスティングしてみた
モック用APIサーバとしてMockoonを利用し開発してていたのですが、AmplifyConsoleのPreview機能を利用した際などで、モック用APIサーバに接続できなく、レビューができていませんでした。
mockAPI、Postmanなどを利用すれば簡単にホスティングできますが、Mockoonの便利な機能を利用しつつ、簡単にAWS環境にホスティングできるか試してみました。
## Mockoonとは
WindowsやMacなどのOS向けにGUIから簡単にモックを作成できるアプリケーションが提供されています。
ポートの指定やレスポンスの返却ルールなど細かく設定できるのが特徴です。
エンドポイントに対して決まったレスポンスを返却するサービスは多いですが、ルールを細かく設定することで、リクエストの条件によってレスポンスが変更できるようになります。またSwagger/OpenAPI3.0形式のファイルをimport/export可能となっており、これらのファイルがあればモックを一から作成する必要もありません。
内部的にFaker.j
【AWS】SAP on AWS 合格記&12冠達成するまでの勉強法
# はじめに
今年新しく追加されたSAP on AWS(PAS)に無事合格できました!
参考書や問題集がほぼなく何が出題されるか情報が少ない状態ですので、この記事が受験時の参考になれば幸いです。
ついでにクラウドプラクティショナー(CLF)も取得して全12種の取得が完了したので、「SAP on AWSの対策法」,「全試験に共通した勉強法」,「12冠達成までのモチベーションの保ち方」あたりを記事にまとめてみようと思います。
思い付きでほかにも色々書くかもしれませんが最後まで読んでいただけると嬉しいです。もし弊社に関する質問や何か聞きたいことがあればTwitterのDM等でお声がけいただければと思います。(宣伝)
# 目次
1. [12種の資格取得順](#12種の資格取得順)
1. [各試験に共通した勉強方法](#各試験に共通した勉強方法)
1. [PAS対策法](#pas対策法)
1. [モチベーションの保ち方](#モチベーションの保ち方)
1. [さいごに](#さいごに)# 12種の資格取得順
私は最初にソリューションアーキテクト-アソシエイト(SAA)を取得し、
SAA
若手社員に向けて 目標設定について
# わたしの自己紹介
1社目:テストをする人 350万円
2社目:SE 430万円
3社目:AWSに関わる人 600万円:::note info
3社目で大きく**年収**が上がりました。
:::
趣味:節約(風呂なし4万5000円、半額弁当生活)
資格:AWS SAA、TOEIC 700点オーバー# 目標設定について
サラリーマンとして働いている以上、同僚がいて上司がいて責任者がいて
自分自身の半年間の頑張りを評価されボーナスという形でその頑張りが我々従業員に還元されます。
評価軸のポイントに目標設定があると思います。
目標が達成できたかどうか100%なのか80%なのか120%なのかといったものです。## 目標がない若きエンジニアへ
わたしは26歳のとき、SRE部門に配属となりました。
部署移動願いを出してSREに異動となりました。
専門性が高い仕事を行いたいという理由で希望を出しました。
が、働いてみると特に何がやりたいという訳でもなかったため、
年に1度決める目標設定の場は本当に辛かったです。### 目標設定のポイント①大したことないことを大したことあるように言
ANS-C01試験対策(3回目)
# はじめに
本記事は、3回目のANS-C01を受けるにあたっての勉強内容をアウトプットする記事の第1回目です。
2022年11月15日現在、ANS-C01のオンライン上の情報タスクないので、– ANS-C01を二回受けた、という経験
– 3回目に向けた試験対策内容を記事としてアウトプットすることで誰かの役に立つと考えました。
# 簡単なプロフィール
現在、都内の金融系IT会社に勤める28歳男性です。
業務内でAWSを扱っている関係で今年度中にAWS全資格取得を目指して勉強をしています。
### 今まで取得したAWS資格一覧
– DBS-C01
– SCS-C01
– DOP-C01
– DVA-C01
– SOA-C02
– SAP-C01
– SAA-C02# 2回目までのテスト結果
2回目までのテスト結果ですが、以下の通りです。– 1回目
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2725423/13009e9f-971f-618e-cdf1-4
CloudTrail で複数のアカウントからログファイルを受け取るバケットを CloudFormation で作成する
# はじめに
AWS Organizations を使わずにマルチアカウントで構成されたアカウントの CloudTrail 証跡ログをログアーカイブアカウントに集約するためにバケットに対してバケットポリシーを設定する必要があります。
必要なバケットポリシーが適用されたバケットを作成するために CloudFormation を利用して作成します。https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-set-bucket-policy-for-multiple-accounts.html
## ドキュメントに記載されているポリシー
“`json
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “AWSCloudTrailAclCheck20131101”,
“Effect”: “Allow”,
“Principal”: {
“Service”: “cloudtrail.am
受験談 AWS Certified SAP on AWS – Specialty 認定
AWS Certified SAP on AWS – Specialtyを受験しました。
受験される方の参考になりましたら。
# 前提
2021年
8月:SAA [(受験談)](https://qiita.com/h2m_kinoko/items/5179bcb73b6773771f79 “受験談 AWS Certified Solutions Architect – Associate 認定”)
9月:SAP(受験談書いてない・・)
11月:SOA [(受験談)](https://qiita.com/h2m_kinoko/items/0b05378d96f4246bbdd0 “受験談 AWS Certified SysOps Administrator – Associate 認定”)
12月:SCS [(受験談)](https://qiita.com/h2m_kinoko/items/20f06a746ab15540cd37 “受験談 AWS Certified Security – Specialty 認定”)
2022年
1月:DVA[(受験談)](https://qiit