- 1. SageMakerでのデプロイメント(1/2): SageMakerデプロイについて
- 2. LambdaでAppStoreの最新レビューを取得してSlackチャンネルに通知する
- 3. WSLへのServerlessFrameworkの導入
- 4. AWS RDS – DBクラスタ / インスタンスをTerraform管理下から外す -> import するコマンド例
- 5. IT 初心者向けクラウド入門ウェビナー ’Cloud for Beginners | モジュール 0 & 1 | ウェブサービス
- 6. 5年目SESエンジニア ### IT 初心者向けクラウド入門ウェビナー ’Cloud Practitioner Essentials for Entryを受講してみた
- 7. Pythonで扱うS3のパスをs3pathlibでイケてる記述にする
- 8. pygameでAWSサービス名タイピング作ってみた(pyinstallerでexe化)
- 9. AWS RDS でデータベースのバックアップ(スナップショット)からデータを復元してアプリケーションから接続する
- 10. 【Elastic Beanstalk】デプロイしたときにlibsass.soがないと言われた
- 11. AWS Copilot CLIを試してみた
- 12. ELBのリスナールールを使ってリクエストを制御する
- 13. AWS構成図はDraw.ioで書こう!
- 14. CDKを使ってAWS Lambda, Amazon RDS, SESでメール通知できるようにする
- 15. (初学者・学生)とりあえずAWSの勉強してみたいとき
- 16. GPT-4超えの日本語性能? 話題のELYZA製LLMをBedrockにインポート! サーバーレス化してみよう
- 17. SAA試験の体験記
- 18. 【AWS】WAFをterraform importしようとしたらThe scope is not valid(400エラー) が出る
- 19. [CDK For Terraform]RDS拡張モニタリング反映時にエラー
- 20. 合格体験記: AWS Solution Architect Associate
SageMakerでのデプロイメント(1/2): SageMakerデプロイについて
# 背景
– 機械学習プロジェクトで、GPUを使ったサーバーが必要になりました
– 仕様としてサーバーで行う処理はジョブ形式で、常時サーバーを起動しておく必要はありませんでした
– そこで、AWSのSageMakerを使うことにしました。SageMakerは、機械学習モデルの構築、トレーニング、デプロイを効率的に行えるサービスで、コストも抑えられます。この記事では、SageMakerについての基本的な情報や、私が参考にした記事を紹介します。
# SageMakerとは
https://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/whatis.html
> SageMakerはフルマネージドのMLサービスです. SageMakerによって、データサイエンティストはMLモデルの構築・学習・デプロイを本番環境レベルの環境で高速に行うことが可能になります.
![スクリーンショット 2024-07-02 10.07.01.png](https://qiita-image-store.s3.ap-northeast-1.amazona
LambdaでAppStoreの最新レビューを取得してSlackチャンネルに通知する
# はじめに
こんにちは、Gakken LEAP のエンジニアの okamotoです。
AppStoreのレビューを自動で定期的に確認し、新規で投稿されたものがあれば通知を行う仕組みを作成しました。
本記事ではAWS Lambdaでアプリケーションを実行し、Slackのチャンネルに通知するための手順を紹介します。
# 準備するもの
## アプリのレビューを取得するためのURL
`
https://itunes.apple.com/jp/rss/customerreviews/id=[Apple ID]/sortBy=mostRecent/xml
`※[Apple ID]はレビューを取得したいアプリのAppStoreのURLに「idxxxxxxxx」で記載されています。
## 通知先のSlackチャンネルのURL
### 手順
* 以下のURLにアクセス
1. 「Create an APP」をクリック
![図1.png](https://qiita-image-store.s3.ap-nort
WSLへのServerlessFrameworkの導入
# 自己紹介
乙井です……。(ヒロシです風)
Gakken LEAPという EdTech の会社で丁稚エンジニアをやっております。
本稿では WSL への ServerlessFramework の導入についてご説明します。
なお前回は[remi で入る PHP アップグレード](https://qiita.com/GleapPost/private/b25bb1f3309e548d976e)という記事を書いたりしています。# 目次
– [自己紹介](#自己紹介)
– [目次](#目次)
– [前書き](#前書き)
– [前提条件](#前提条件)
– [コマンド](#コマンド)
– [下準備1](#下準備1)
– [Serverless Framework 導入](#serverless-framework-導入)
– [ローカル実行](#ローカル実行)
– [下準備2](#下準備2)
– [デプロイ・リモート実行](#デプロイリモート実行)
– [余談](#余談)
– [★エンジニア募集!★](#エンジニア募集)
AWS RDS – DBクラスタ / インスタンスをTerraform管理下から外す -> import するコマンド例
# DBクラスタ
Terraform管理下から外す
“`
terraform state list
terraform state rm aws_rds_cluster.default
“`既存のDBクラスタを import して Terraform 管理下に置く
“`
terraform import aws_rds_cluster.default
“`# DBインスタンス
Terraform管理下から外す
“`
terraform state list
terraform state rm aws_rds_cluster_instance.default
“`既存のDBインスタンスを import して Terraform 管理下に置く
“`
terraform import aws_rds_cluster_instance.default
“`
IT 初心者向けクラウド入門ウェビナー ’Cloud for Beginners | モジュール 0 & 1 | ウェブサービス
## 1.ウェブサービスとは
– ネットワークを通じて利用できるサービス
#### キーワード
– アーキテクチャ
– サーバ
– ストレージ
– データベース
## 2.サーバ
#### ● ハードウェア
– CPU – 命令を実行する装置
– メモリ – 命令やデータを記憶する装置
#### ● ソフトウェア
– OS
– ミドルウェア
– アプリケーション
#### ● 仮想サーバ
– 物理ホスト
– ハードウェア(CPU・メモリ)
– ハイパーバイザー – 物理的資源の割り振り## 3.ウェブサービスが持つべき性質(1)
#### ● 可用性(Avalability) – サービスが継続的に使えること
#### ● 冗長性(Redudancy) – 障害に備えて機材や回線などを複数用意して備えること
#### ● 耐久性(Durability) – 障害が起こってもデータが失われないこと## 4.ウェブサービスの公開
#### ・データセンター
– インフラストラクチャ
– デプロイ
## 5.ウェブサービスが持つべき性質(2)
#### ● 拡張性(Scalabil
5年目SESエンジニア ### IT 初心者向けクラウド入門ウェビナー ’Cloud Practitioner Essentials for Entryを受講してみた
# これからやっていくこと
### IT 初心者向けクラウド入門ウェビナー ’Cloud Practitioner Essentials for Entry の受講→今のプロジェクトに参画した当初から技術面が全く進歩していない(3年前)ので、今一度初心に戻って基礎からやっていくことにした。
# 自己紹介
・CCNA取得済み
・運用保守 半年
・ネットワーク構築 2年
・営業企画部門で建付け、PMO業務 2年
・なんもできない感がすごくある# 実現したいこと
・わかりやすく自分を説明できるスキルが欲しい
・今後のキャリアパスにつなげていきたい
・自分でなんか(サービス)作りたい### IT 初心者向けクラウド入門ウェビナー ’Cloud Practitioner Essentials for Entry の構成
・クラウドの前提となる、ウェブサービスそのものについてやウェブサービスが持つべき性質、そして、サーバーを構築するCPUやメモリといったIT基礎について紹介されている
### コースの構成
| タイトル | 内容|
| :-
Pythonで扱うS3のパスをs3pathlibでイケてる記述にする
# TL;DR
PythonでS3のファイルパスを扱う場合には `s3pathlib` が便利です。組み込みモジュールの `pathlib` では `s3://` から始まるS3のパスをパースすることができませんが `s3pathlib` なら `pathlib` と同じように扱うことができます。
“`python
from pathlib import Path
from s3pathlib import S3Pathlocal_dir = Path(“./my_dir”)
s3_dir = S3Path(“s3://my_bucket/my_dir”)if local_dir.exists():
print(f”ローカルのディレクトリ {local_dir} は既に存在します。”)if s3_dir.exists():
print(f”S3上のディレクトリ {s3_dir} は既に存在します。”)
“`私は `s3pathlib` を知る前は `str` 型でS3上のパスを処理していたのですが、 `str` 型でパスを記述することは型の安全
pygameでAWSサービス名タイピング作ってみた(pyinstallerでexe化)
# AWS サービス名タイピングゲーム – 解説記事
## はじめに
本記事では、AWSのサービス名をタイピングするゲームの作成手順について解説します。このゲームは、Pythonのゲームライブラリ `pygame` を用いて構築されており、`pyinstaller` を使用して実行ファイルを作成する方法も含まれています。
## 目次
1. [プロジェクトの概要](#プロジェクトの概要)
2. [必要な環境](#必要な環境)
3. [インストール方法](#インストール方法)
4. [仮想環境(venv)の設定方法](#仮想環境venvの設定方法)
5. [使用方法](#使用方法)
6. [pyinstaller での実行ファイル作成](#pyinstallerでの実行ファイル作成)
7. [ゲームの詳細](#ゲームの詳細)
8. [まとめ](#まとめ)## プロジェクトの概要
このゲームは、AWSのサービス名を素早く正確にタイピングすることでスコアを競います。各ラウンドでランダムに表示されるサービス名をタイピングし、時間内にできるだけ多くのポイントを獲得してください。
#
AWS RDS でデータベースのバックアップ(スナップショット)からデータを復元してアプリケーションから接続する
# STEP 1. DBスナップショットでバックアップを作っておく
( 自動バックアップから復元したり「特定時点への復元」をする場合はこの手順は不要 )
– DBクラスタを選ぶ
– てきとうな名前をつけてスナップショットを作成する![CleanShot 2024-07-01 at 11 24 50@2x](https://github.com/YumaInaura/YumaInaura/assets/13635059/7949004e-65e0-4173-8bce-9721b9b735f1)
# STEP2. 復元する
## 仕組み
AWS RDS の仕組みとして、復元操作をしても元となったDBの状態が上書きされるわけではなく、いったん別のDBクラスタが作成される。
このため、この復元操作以外にも作業が必要だが、それは次の STEP 3で説明する。
## 方法A. 手動スナップショットからの復元
### 注意
元のスナップショットから全ての設定を復元してくれるわけではなく
– セキュリティグループの設定
– スペックの設定など、選び直さなければばいけない
【Elastic Beanstalk】デプロイしたときにlibsass.soがないと言われた
どうもこんにちは。
今回は、Elastic Beanstalk環境にデプロイした時、libsass.soがないと言われたので、メモとして残します。
# 環境
## Ruby on Rails環境
Ruby 3.2.2
Rails 7.1.3.3
gem ‘sassc-rails’を使用## EB環境
Ruby 3.2 running on 64bit Amazon Linux 2023/4.0.7
## エラー内容
上記に示した状態でデプロイを実行すると以下のようなエラーが出てきます。
“`
LoadError: Could not open library ‘/var/app/staging/vendor/bundle/ruby/3.2.0/gems/sassc-2.4.0/ext/libsass.so’: /var/app/staging/vendor/bundle/ruby/3.2.0/gems/sassc-2.4.0/ext/libsass.so: cannot open shared object file: No such file or direct
AWS Copilot CLIを試してみた
# 背景・目的
最近、ECSのチュートリアルを行う機会がありました。その中でAWS Copilotを触る機会がありましたので整理します。# まとめ
下記に特徴をまとめます。| 特徴 | 説明 |
|:–|:–|
|概要|ECS上のコンテナや環境にパッケージ化されたアプリケーションのデプロイと操作を直接行えるようにする包括的なツール
NWやALBなどの関連リソースも作成する|
|Application|Service Envrionment,Pipeline等の概念をまとめるもの
ServiceやデプロイされるEnvrionmentを1つのApplicationとして取りまとめる|
|Services|コンテナイメージをビルド、ECRへのPush、サービスのスケーラブル、セキュアな実行に必要なインフラのセットアップの一連の流れが、copilot で実現できる|
|Serviceのタイプ|下記に大別される
・インターネットから接続可能なサービス
・Backendサービス
・Workerサービス|
|インターネットから接続可
ELBのリスナールールを使ってリクエストを制御する
# はじめに
こんにちは。今回も「検証したけど使われなくてそのまま何もしないのはもったいないから紹介します。」の記事になります。笑 もしも、背景が気になるような方がいらっしゃいましたら、[前回記事](https://qiita.com/duora0406/items/19f188f1c2073ae8e56c)の冒頭を確認いただけますと幸いです。
今回は、ELBのリスナールールを使ってリクエスト先を制御する方法を紹介します。# 検証環境構築
今回の検証環境は、[前回記事](https://qiita.com/duora0406/items/19f188f1c2073ae8e56c)と同様になりますので、詳細はそちらをご覧ください。当記事では、ELBの設定部分をメインに紹介させていただきます。## 構成図
今回の構成図は下記になります。ELB、EC2を使った一般的なwebサイト構成になります。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2513710/1aaab84a
AWS構成図はDraw.ioで書こう!
# はじめに
AWS構成図をまとめたいと思い、ツールを調べていたところ、`Draw.io`というツールを発見しました。
他にも`Miro`など、色んなツールがありますが、以下の観点で`Draw.io`を使用しました。– 始めやすさ
– VSCodeを導入していれば、アカウントは不要
– 個人的にここが一番大きい
– AWSのマークが使える`Draw.io`は、VSCodeの拡張機能にもあるので、アカウント等は用意することなく、始めることができます。
:::note warn
この記事では、具体的なAWS構成図は紹介いたしません。
構成図を詳しく知りたい方は、別記事を参照ください。
:::# Draw.io とは
一言で言うと、無料の図表作成ツールになります。
ドラッグ&ドロップの操作で、簡単にフローチャートや組織図、UML図などのダイアグラムを作成することができます。https://qiita.com/riku-shiru/items/5ab7c5aecdfea323ec4e
# Draw.io Integration
`Draw.io Integr
CDKを使ってAWS Lambda, Amazon RDS, SESでメール通知できるようにする
RDSにあるデータを読み取ってLambdaでメール通知をするシステムをAWS CDKで作ってみました。SESを使うかSNSで使うか悩んだのですが、両方試してみてSESの方がカスタマイズ性に優れていて今回作りたかったものに適していると感じたのでSESにしました。
## Amazon SNSとAmazon SESについて
SESはAmazonが提供するフルマネージド型のメール配信サービスです。メールサーバを構築せずともSESにリクエストを送ることでメールを送信します。
ユーザー自身の E メールアドレスとドメインを使用してEメールを送受信する簡単でコスト効率の高いメール機能に特化したサービスになります。SNSはメッセージングやプッシュ通知向けのフルマネージドサービスになります。あるイベントをトピックとして作成し、メールアドレスなどをサブスクリプションとします。イベントが発生するとサブスクリプションしている通知先に通知を送ります。
SNSではイベントと通知相手(モバイルプッシュ通知、モバイルテキストメッセージ (SMS)、メールなど)を柔軟に選択できます。## 作成した構成について
(初学者・学生)とりあえずAWSの勉強してみたいとき
# とりあえずAWSを使ってみたい
理系大学生が就活について考え出すと、情報系の技術・知識の欄にAWSがあったりします。
しかし、AWSは普段の大学生活では使わないし、研究活動でも使わない。
勉強を始めようと触ってみるとお金がかかりそうで怖いという人に向け、1つ公式のサービスを紹介します。それが **AWS Cloud Quest-CloudPractitioner** です。
とりあえずAWSを勉強してみたい人には最適で、インフラのシステム構築やサーバーの立ち上げ、、データベース管理などを無料で触ることができます。
[AWS Cloud Quest](https://aws.amazon.com/jp/training/digital/aws-cloud-quest/)
少し前から完全ではないですが日本語対応しているので、内容も理解しやすいです。
リンク先を見ていただくと分かりますが、結構本当にゲームって感じです笑
少し前から、これを使いながら勉強しているので、同じように勉強したいけど、AWSにお金を払うのに抵抗があると言う方一緒にやって勉強しましょう!
![image
GPT-4超えの日本語性能? 話題のELYZA製LLMをBedrockにインポート! サーバーレス化してみよう
# Llama 3ベースの日本語LLMが登場!
なんと、日本語LLMで有名なELYZA(イライザ)社が、Llama 3ベースの新モデルを発表しました!
https://note.com/elyza/n/n360b6084fdbd
日本語性能ではGPT-4超えとの触れ込み。
パラメーターサイズが2種類あり、70B版は同社のデモアプリ経由で使用可能、8B版はHugging Faceで公開されています。
https://elyza.ai/lp/elyza-llm-for-jp
https://huggingface.co/elyza/Llama-3-ELYZA-JP-8B
今回はこのうち、Hugging Faceで公開されている8B版(GPT-3.5 Turbo相当の性能)を利用します。
# AWSのBedrockにインポートしてみる
クラウドサービスAWSの「Amazon Bedrock」には、任意のモデルをインポートして使える「カスタムモデルインポート」という新機能があります。(プレビュー中)
https://aws.amazon.com/jp/bedrock/cu
SAA試験の体験記
## はじめに
SAAの試験を受けて合格したので勉強方法と合格までにやったことを記そうと思います。## 経歴
仕事ではフロント、バックエンドメインでCloudWatchや開発で多少lambda等を触ったことがある程度でした。
知識としてはEC2、lambda等の代表的なサービスは知っているぐらいです。
AWSの資格は試験前は1つも持っていませんでした。## SAAの結果
試験結果は以下の通りです。
想定していた問題より、難しめの問題が出てきており、落ちたかもしれないと思ってましたが無事合格できました!
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1328154/8d3782cb-8e7b-cd4b-776d-8f3a25494001.png)## 勉強方法
試験までにどのように勉強してきたかというとポイントとしては4つです。
– ping-tで問題を解く
– 要点をまとめておく
– 主要なサービスを実際に触ってみる
– 空いた時間は有効活用
私は試験のために参考書を買ったり
【AWS】WAFをterraform importしようとしたらThe scope is not valid(400エラー) が出る
## 事象
terraform import ブロックやterraform importコマンドでCloudFrontに割り当てたAWS WAFをimportしようとすると以下のエラー“`
Error: reading WAFv2 WebACL : operation error WAFV2: GetWebACL, https response error StatusCode: 400, RequestID: 77e90616-f220-46e7-a5f5-328eafeea190, WAFInvalidParameterException: Error reason: The scope is not valid., field: SCOPE_VALUE, parameter: CLOUDFRONT
“`## 結論
CloudFront を対象としたWAFをimportする場合は us-east-1(バージニア北部)を指定する
なのでap-northeast-01などで管理している場合はstateファイルを分割する必要がある## 参考
https://registr
[CDK For Terraform]RDS拡張モニタリング反映時にエラー
# CDK For TerraformでAuroraを管理している際に拡張モニタリングを反映する際にエラーが発生
– エラー内容
“`log
A MonitoringRoleARN value is required if you specify a MonitoringInterval value other than 0.
“`## 元々の定義
“`typescript
new aws.rdsClusterInstance.RdsClusterInstance(this, `auroraclusterinstance`, {
identifier: auroraInstanceName,
clusterIdentifier: AuroraCluster.clusterIdentifier,
engine: “aurora-postgresql”,
instanceClass: “db.t4g.medium”,
autoMinorVersionUpgrade: fa
合格体験記: AWS Solution Architect Associate
## はじめに
資格試験の勉強には、暗記が多くて苦手だと感じる人が多いでしょう。私もその一人でした。しかし、AWS Solution Architect Associateに挑戦する中で、その苦手意識を克服するための新しいアプローチを見つけました。本記事では、私がどのようにしてこの資格試験に合格するための勉強方法を変えたのか、その経験を共有します。## 資格勉強の苦手意識
これまでの資格勉強は、単なる暗記作業と感じることが多く、苦手意識が強かったです。特に、用語の意味を理解せずにただ覚えようとすることが多く、その結果、知識が定着しないという問題に直面しました。## アプローチの転換
この問題を解決するために、私は以下のようなアプローチの転換を試みました。### 課題解決能力の向上
資格勉強を単なる暗記作業としてではなく、課題解決能力を向上させるためのケーススタディとして捉え直しました。具体的には、試験問題を自分ならどう解決するかを考えることで、実際の現場での応用力を養いました。### 問題解決の思考プロセス
選択肢から正解を選ぶのではなく、問題を自分自身でどう解くかを深