- 1. RDS(postgres)マイナーアップグレード手順について
- 2. AWSセキュリティグループガイド
- 3. S3の画像が更新された際に、CHATWORKに画像をPOSTする
- 4. AmprifyでAuth.signOutをしているのにページ遷移しないので一時対応する
- 5. クソアプリをMVCからDDDに無理やり直してみた
- 6. GitHub Actions: AWS へアクセスする
- 7. 【AWS】IAMユーザの作成
- 8. DNSSECの基礎とRoute53での運用
- 9. CDK を使って AWS を構築しながらアプリケーション開発
- 10. javacをtomcatで使う
- 11. EBSスナップショットを利用してEC2インスタンスを複製したりリストアしたりしてみた
- 12. 初学者がPaiza CloudとAWS Cloud9を使ってみた感想
- 13. ソリューションアーキテクト対策_AWS Organizations篇
- 14. Amazon Managed Service for Prometheus(AMP), Grafanaを組み込んでみた
- 15. 個人サービス「Circuit Junction」開発記録(Vue.js , Laravel , AWS)
- 16. SAMのAutoPublishAliasでバージョンがうまく発行されないときの対処法
- 17. DynamoDB のテーブル設計
- 18. ElastiCache for Redisのフェイルオーバー時間を計測してみた
- 19. 【個人開発】3つに厳選した自分の考えを送る「3選」を投稿するサービスを作りました
- 20. 【LINE WORKS】IFTTTを経由してカレンダーを連携してみる
RDS(postgres)マイナーアップグレード手順について
# はじめに
RDSのマイナーアップグレード(11.10のEOL)について、AWSから通知があり、
マスターのみのRDS(postgres)を11.10から11.15にマイナーアップグレードを行う必要がありました。
備忘として、コンソールでの作業手順をまとめてみました。# アップグレード対象の確認
AWSコンソールにログインし、RDS一覧画面から該当のRDSの詳細画面に遷移します。
「設定」タブ内の「エンジンバージョン」が11.10(EOLバージョン)であることを確認します。
![rdb1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2740559/3ac16295-3792-79e2-190f-7added80e893.png)# アップグレード作業
RDSの詳細画面右上の「変更」ボタンを押下します。
![rdb2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2740559/f4ca5a8d-f80d-02
AWSセキュリティグループガイド
本文の内容は、2022年9月6日にBrett Wolmaransが投稿したブログ(https://sysdig.com/blog/aws-security-groups-guide/)を元に日本語に翻訳・再構成した内容となっております。
AWSセキュリティグループ(およびネットワークACLとVPC)は、クラウド環境におけるセキュリティの基本的なビルディングブロックの一部です。
これらはファイアウォールに似ていますが、同じものではありません。クラウドでのビルドを始める前に、このトピックをよく理解しておく必要があります。なぜなら、これらの使用方法には微妙な違いがあり、ベストプラクティスに従う必要があるからです。
パブリッククラウドプロバイダーは、契約上、共有責任モデルの側を尊重する義務があることを知っておく必要があります。しかし、セキュリティグループはあなたの責任です。EC2インスタンスを起動したときのデフォルトのルールは、LinuxインスタンスのSSHアクセス用のポート22だけです。
あなたはさらに必
S3の画像が更新された際に、CHATWORKに画像をPOSTする
Google Newsshowcaseの外形監視のため、AWSのSynthetics Canariesを使用しています。
(Google NewsshowcaseをSynthetics Canariesを監視する説明は、別投稿で。)Synthetics Canariesはキャプチャをs3に置きますが、すぐに確認したく、CHATWORKに画像をPOSTすることに。
Synthetics Canariesのスクリプトを修正しても良かったのですが、機能をファットにせずに役割分担をしようと。* Synthetics Canariesは、外形監視のデータを集めるだけ
* Cloudwatch Logsで、データをチェックするだけ
* 本スクリプトは、キャプチャを送るだけaxiosをつかって、CHATWORKに画像をPOSTするのに少しハマりました。
https://developer.chatwork.com/reference/post-rooms-room_id-files
公式だとよくわかりませんでした。https://www.npmjs.com/package/cha
AmprifyでAuth.signOutをしているのにページ遷移しないので一時対応する
# はじめに
以下の書籍をやっていてつまづいた箇所があったのでまとめます
# 問題
クソアプリをMVCからDDDに無理やり直してみた
# 今回作ったWEBサービス
https://ojitalk.com/
![oji.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920917/fbdaa970-c118-f541-1942-705842af0c52.gif)
こんにちは!ちゃきです!
定期的にクソサービスを個人開発して世の中のドメイン無駄遣いしてます!
そろそろQiita更新しないとヤバいと思い書きました。転職前も転職後もPHPをほとんど使っています。
しかし社内のサービスはほとんどrailsで作られているため、今後の為にrailsの勉強の一環として
今回のサービスを作りました。
てか社内にlaravelエンジニア全然いない。## どんなサービスか?
登録してある若者言葉をおじさんでもわかる単語に変換してくれる***チャットアプリ***です。
おじさんの言葉も若者がわかるように変換します。
最初から登録してある単語以外にも追加はできます。|
GitHub Actions: AWS へアクセスする
GitHub Actions から AWS にアップロードしたりデプロイしたり。
## 固定キー
参照) [Deploying using GitHub Actions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploying-using-github.html)
[Configure AWS Credentials](https://github.com/aws-actions/configure-aws-credentials) アクションでアクセスキーを設定します。
“`yaml
steps:
– uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY
【AWS】IAMユーザの作成
## IAMとは
**AWS Identity and Access Manegement** の略
AWSのサービスを利用するための権限を管理し、各サービスへのアクセスを制御する仕組みIAMは「**誰**」が「**どのAWSのサービスやリソース**」に「**どのような条件**」でアクセスできるかを指定できるサービスです。
(AWS公式概念図では、”Who”(誰), “Can access”(アクセス条件), “What”(サービスやリソース)の3要件として提示)IAMはAWSのセキュリティ確保において必要不可欠な仕組みであり、
**知らずに使っているとセキュリティリスクを増大させる**事も多いサービスのため、
AWSのクラウド利用において**最初に学ぶべき分野**の一つなのではないでしょうか。※最近だと、アカウントの乗っ取りにより、
ビットコインのマイニング作業に使用されてしまって
知らぬ間に多額の請求があったなんて事例もあるみたいです。
もちろん被害総額はとんでもない金額……自分も気をつけます。## はじめに
AWSのアカウントを作成するとルートユーザーが
DNSSECの基礎とRoute53での運用
# 内容
DNSSECのレコード検証、公開鍵検証の仕組みとRoute53での運用方法について記載します。手順通りにやれば導入は簡単に出来るものの、導入時のDSレコードの登録、運用時のキーローテションなど仕組みを理解しないと何をやっているか分からない箇所もあると思うので図解化しました。# DNSSECの仕組み(レコード検証の仕組み)
![スクリーンショット 2022-09-07 6.23.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/6b44ca94-0582-e446-b905-f21803108959.png)
上記図は“`PC(クライアント)“`から“`www.example.com“`というレコードを“`キャッシュDNSサーバ“`に問い合わせ。“`キャッシュDNSサーバ“`から“`権威DNSサーバ“`にレ
CDK を使って AWS を構築しながらアプリケーション開発
## [AWS CDK](https://d1.awsstatic.com/webinars/jp/pdf/services/20200303_BlackBelt_CDK.pdf) とは
AWS CDK は Python や TypeScript など一般のプログラミング言語で記述でき、ほとんどの AWSサービス をカバーしている CloudFormation の拡張機能です。CloudFormation よりも一般に少ないコード量で記述ができます。
## 事前準備
#### 前提
* cdk version 2.39.0
* npm version 8.18.0#### AWS CDK CLI のインストール
“`bash
npm install -g aws-cdk
cdk –version
“`
javacをtomcatで使う
https://atmarkit.itmedia.co.jp/ait/articles/0710/11/news121_3.html
tomcatコンテナ内に上のリンクを参考にhelloworldのサンプルファイル作ろうとしたときにjavacというコンパイルに必要なコマンド必要だとわかったのでメモ
結論:
JDK(Javaの開発キット)にそのコマンドが含まれている&tomcatにapt系コマンドがもともと入っていたので以下のコマンドでインストール
“`
apt-get install default-jdk
“`
aptでインストール:https://www.linuxmania.jp/apt-install-java.html
JDKは開発キット:https://techacademy.jp/magazine/22220
EBSスナップショットを利用してEC2インスタンスを複製したりリストアしたりしてみた
## はじめに
Amazon Data Lifecycle Managerなどでバックアップ用に作成したEBSスナップショットを使い、EC2インスタンスを複製する手順をまとめてみます。
また、EBSスナップショットを使いリストアする方法についても触れてみようと思います。## インスタンス情報の確認
EC2インスタンスの詳細情報から、複製元のインスタンスの情報を確認します。インスタンスID、インスタンスタイプ、IAMロール(インスタンスプロファイル)、VPC ID、サブネットID、プライベートIPアドレス、アベイラビリティゾーン、NIC、セキュリティグループ設定などを確認しておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2554521/d5ff8794-2f2a-8460-32c1-c489cb621951.png)
ストレージタブで、インスタンスにアタッチされているボリュームの情報を確認します。
![image.png](https://qiita-image-sto
初学者がPaiza CloudとAWS Cloud9を使ってみた感想
めちゃくちゃ初学者が二つのサービスを有料で利用してみました。
普段はVSCODEでnode.jsをよく書いています。■経緯
僕は今職業訓練に通っているのですが、学校のPCが再起動時、
インストールしたデータが消えてしまう設定になっています。結構自習時間があるので、サーバーサイド言語の学習を行いたいのですが、
Go言語やnode.jsをインストールしても消えてしまって、環境設定がめちゃくちゃめんどくさい。そのため、何かいいサービスないかな?と思い調べてみると掲題の2つのサービスが導入しやすそうだった。
■よく使うもの
・Go言語
・node.js
・express
・mongodb
・mysql■初めに結論
・Paizaが停止せず、サクサク動くなら初学者にやさしいPaiza!
なのだが、自分の環境だと、サクサク動くのはCloud9だけだったのでCloud9一択でした。
Paiza不具合なのかな?
しかし、Cloud9の請求内容によってはどっちも使いません・・・■共通のメリット
・どこでもコーディング。どこでも保存できる。
・linuxを学べる。□共通の不満点
ソリューションアーキテクト対策_AWS Organizations篇
## はじめに
試験勉強した際のメモを自分用に記事化。
内容は公式やBlack Beltの写経ですので目新しいことはありません:pray:## 公式
とはいえこの記事に迷いこんでしまった方もゼロではないと思うので公式のご紹介です。– Black Belt
https://www.slideshare.net/AmazonWebServicesJapan/20180214-aws-blackbeltorganizations– 公式
https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_getting-started_concepts.html#allowlist## AWS Organizations
### 実現できること
・複数のAWSアカウントを一元管理する
AWSアカウントをグループ化してポリシーを適用。利用サービスを制限する・AWSアカウントの新規作成の自動化
コンソール、SDK、CLIでAWSアカウントを新規作成・請求の簡素化
複数AWSアカウントの請求を一括で行う
Amazon Managed Service for Prometheus(AMP), Grafanaを組み込んでみた
はじめに
—初めまして!日鉄ソリューションズ株式会社(NSSOL) 流通・サービスソリューション事業本部 流通・サービスソリューション第三事業部 リテイルDXビジネスソリューション部 所属のharukaと申します。
私の所属する部では、業務を通じて蓄積した技術知見を社外へ発信を行う取り組みを始めました。今回その第一弾としてQiitaの記事を作成しました。
監視のお勉強として、サンプルアプリにAmazon Managed Service for Prometheus(以下AMP)、Grafanaを組み込んでみました。
※**Prometheus**→オープンソースのデータ収集ツール。サーバーのリソースの使用状況など、各種メトリクスを収集して監視ができます。
※**Grafana**→オープンソースのデータ可視化ツール。Prometheus等で収集したデータをわかりやすく可視化できます。
PrometheusはOSS版もありますが、今回はAWSサービスと組み合わせるためAWSマネージド版のAMPを使うことにしました。
Grafanaは今回OSS版をAmazo
個人サービス「Circuit Junction」開発記録(Vue.js , Laravel , AWS)
# 挨拶
はじめまして。たしろと申します。
人気のフレームワークであるLaravel+Vue.jsを使った個人サービスを開発いたしましたので、紹介させていただきます。# 自己紹介
経歴:工業高校卒業後、製造業メーカーに勤務
年齢:27歳
趣味:車 , バイク , キャンプなど# 開発したサービスについて
### サービス名:*Circuit Junction*
URL : https://circuit-jct.com
GitHub : https://github.com/KyoheiTashiro/PF1### サービス概要
全国各地で開催されているサーキット走行会の情報を、
まとめて閲覧・管理できるサービスです。### 作った理由
私の趣味の1つに、車でのサーキット走行があります。
そのサーキット走行ができるイベントのことを走行会といいます。
現状で走行会の開催情報を新たに調べようとすると、下記のようなことが起こります。1. いくつかある走行会の主催団体のWebサイトを渡り歩き、日程や開催コースなどの情報を見比べないといけない。
2. いくつかあるW
SAMのAutoPublishAliasでバージョンがうまく発行されないときの対処法
# はじめに
みなさま,こんにちは.
[株式会社オプティマインド](http://www.optimind.tech)にて,GISエンジニアをしている@tkmbnです.# 概要
SAMを用いたLambdaのデプロイ時にAutoPublishAliasを利用すると,うまくバージョンが発行されないときがありました.
対処法をいろいろと探っていたところ,良さそうな対処法を見つけたので,ご紹介いたします.# なぜ書いたか
SAMを用いて,Lambdaをデプロイしたが,以下のパターンのときに,うまくバージョンが発行されませんでした.
– Layerの中身のみ変更
– Lambdaの環境変数のみの変更手動で,バージョンを発行し,エイリアスに設定をすれば,やりたいことはできるんですが,
CanaryDeployが適用できないのが課題でした.# 本題
## 現状の環境
– SAM テンプレートの内容
– API Gateway
– Lambda (複数)
– 複数Lambda内で共通で利用するものを集めたLayer
– 環境
DynamoDB のテーブル設計
![dynamobasicknowledge.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/59081/2c799a4e-be49-d062-c617-5efa9e4cf38f.png)
引用元; https://d1.awsstatic.com/webinars/jp/pdf/services/20181225_AWS-BlackBelt_DynamoDB.pdf
## パーティションキーのみ
* パーティションキーは `ハッシュキー` (hash key)とも呼ばれる (AWS のドキュメントだと hash key が使われていることが多いような気がする)
* テーブルを作成後は変更できない
* テーブルからデータをフェッチするときは [Scan](https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/APIReference/API_Scan.html) または [GetItem](https://docs.aws.amazon.co
ElastiCache for Redisのフェイルオーバー時間を計測してみた
# やりたいこと
– ElastiCache for Redisの設計をしたい(まずは方式レベル)
– 用途はアプリケーションのセッション管理
– 可用性要件が高く、AZ障害の際にもダウンタイムを最小限にしたい# 参考文献
– 公式ドキュメントだとこれがドンピシャ
https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html
– 2年前ですが分かりやすい公式スライド
https://pages.awscloud.com/rs/112-TZM-766/images/Session%201%20-%20ElastiCache-DeepDive_v2_rev.pdf
– 基本のおさらいには安定のクラメソさんブログ
https://dev.classmethod.jp/articles/elasticache-cluster-mode/
これらより、まずは「クラスターモード」を採用すべきか否か、の判断のためフェイルオーバー所要時間を実測してみる。
# 試したこと
### 準
【個人開発】3つに厳選した自分の考えを送る「3選」を投稿するサービスを作りました
こんにちは、Qiita初投稿になります。
普段は仕事でWebサービスを開発していますが、今回勉強がてら初めて個人開発してみようということで、Webサービスを作ってみたのでご紹介させてください。
# どんなサービス?
## 背景
日々ネットを見ていると、
「料理で役立つ便利グッズ5選」
「今年を代表するおすすめ曲10選」
など、筆者が厳選した○選についてのサイトや動画を目にすることがあります。そんなとき自分の場合、おすすめ曲やゲームに関する○選を見ると「自分だったら…」みたいなことを考えることがありました。大体はそこに付いているコメント機能で送れたりもできるのですがあまり目立たないので、もっと他者の考えも目立つ形にできないかと思いました。
なので考えたのは以下のこと。
・○選についてのトピックを誰でも作れるようにする
・他ユーザーの考えも集められるようにするそして、5選でも10選でもいいのかというところで、見やすさ・投稿しやすさを考えた結果「3選」という枠組みに限定することと決めました。
というわけで3選を投稿するサービス、その名も **「SANSEN」** を作りました
【LINE WORKS】IFTTTを経由してカレンダーを連携してみる
# はじめに
LINE WORKSのカレンダー機能はAPIも提供されており、それを使うことでカレンダー上で何かの実行スケジュールを管理することも可能。今回は、IFTTTを経由してカレンダーの予定と連携する仕組みを作った。
![calendar_batch-概略図.drawio (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/241369/26214d0a-57ad-d2b7-e64b-d9fdfe512e3c.png)
# ソースコード
https://github.com/mmclsntr/lineworks-calendar-ifttt-integration## 利用した言語・フレームワーク等
– 言語 : Python 3.9
– デプロイ : [Serverless Framework](https://www.serverless.com/framework/docs)
– 開発フレームワーク : [AWS Lambda Powertools for Python](htt