AWS関連のことを調べてみた2021年12月21日

AWS関連のことを調べてみた2021年12月21日

AWS上でGitlabを運用する際、マネージドサービスを利用することに関する考察

# 概要
パブリッククラウド上でGitlabを構築する際、PostgreSQLやRedis等をデフォルト設定のまま利用するか、マネージドサービスを利用するか検討し、マネージドサービスを使う場合どのように利用するべきか考える必要があります。当記事ではAWS上で複数のGitlab環境を構築・運用してきた経験から、マネージドサービスをどのように利用すべきかどうかの考察をします。

# 前提
GitlabにはOmunibus版やDocker版、k8s(helm)版と複数の構築方法があります。当記事ではk8s(helm)版をAWSのEKS上で構築・運用する前提とします。VM上にOmunibus版で構築する場合やECS上にDocker版で構築する場合は、当記事とは異なる考察結果になるかと思うのでご注意ください。

# 構成図
Gitlabのアーキテクチャの構成図は以下になります。[^画像の引用元]
[^画像の引用元]: 画像の引用元:https://docs.gitlab.com/ee/development/architecture.html#simplified-component-over

元記事を表示

AWS EC2の「No space left on device」エラーの解決方法

## はじめに
株式会社じげんのrkinseiです。
:airplane: 留学エージェント比較サービス 留学くらベーるの開発を担当しています。

今回はAWS EC2の「No space left on device」エラーの解決方法を紹介します!

苦戦しながら修正したものの、完璧な対応はまだできていないと思いますが、今回実際に試してみた対処法をまとめてみました。
これから同じエラーを解決したい方の参考になれば幸いです。:relaxed:

## エラーの概要
RailsアプリケーションをAWSのEC2インスタンスにデプロイした際に、「no space left on device」とエラーメッセージが表示されます:triumph:

“`
error An unexpected error occurred: “ENOSPC: no space left on device, copyfile ‘/home/ec2-user/.cache/yarn/XXXXXXXXX'”.
rake aborted!
“`

インスタンスにログインすると、以下のようにエラーメッセージが表示さ

元記事を表示

AWSで共通機能を開発する時に考えたこと

##背景
AWS上に個別のシステムをガシガシ開発していくと、あれ?この機能って先日構築したシステムでも作ったよな?的な事って多々あると思います。だったら、各システムが共通で利用する機能をまとめて、共通機能として提供すれば効率がいいんじゃね。と思い。その際に考えた事をつらつら書いていこうと思います。

##共通機能を開発する際に考えた事(考えないといけない事)
– 提供機能
– 何の機能をどこの範囲まで共通化するのか?
– データ保全とか非機能面も十分に検討し機能提供するべきだよね?
– 暗号化等、利用者により機能要件はまちまちだから、利用して頂けるであろう機能(汎用的な機能)にターゲットをしぼり提供する事になった場合、抜け落ちた機能や、要件に合わない機能は個々の利用者で実装してもらうの?
– この共通機能の障害で利用者側に影響を及ぼさない設計にしないといけないね。
– 利用者側のシステムとは疎結合が大原則。
– 利用者が増えたら共通機能はスケールするの?どの程度のユーザ数を見込むの?
– 誰に提供するのか?同一企業内のユーザのみな

元記事を表示

CloudWatchLogsでRailsアプリのログを表示してみた

## はじめに
Railsアプリケーションを運用しているEC2上のログを、CloudWatchで表示するまでの手順をまとめました。
公式ドキュメントをベースに細かい部分も説明していきます。

## CloudWatchLogsのメリット
* 複数のサーバーがあってもログを一箇所に集約して管理できる。一々複数のサーバーにssh接続する必要がない。
* EventBridgeなど他のAWSリソースとの連携が簡単。エラー発生したらSlackに通知することもできる。
* Logs Insightsを使って高度な検索ができる

![スクリーンショット 2021-12-20 15.48.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/603209/88f761bd-a0eb-f909-fe76-60314f3f7b8a.png)

## 前提
* AWSアカウント作成済み
* EC2インスタンス作成済み
* OS: CentOS 7.6.1810

## 手順の概要
1. ポリシーとロールを作成
1. EC2に

元記事を表示

SnykではじめるDevSecOps

# はじめに
[Snyk](https://snyk.io)はコードベースを軸にオープンソースの依存関係、コンテナ、インフラストラクチャ等の脆弱性を検出し、自動的な修正を可能とするセキュリティプラットフォームです。

ソフトウェア開発ライフサイクル(SDLC)に従って、開発者のセキュリティ対策を支援します。

また、Snykは米国に本社を置き、ロンドンを拠点としたユニコーン企業です。
世界中で2,700万人以上の開発者がSnykのツールを使用し、IPOも間近と噂されています。

開発者として初めてSnykを利用する場合、GitHubまたは、Googleアカウントを利用したフェデレーションのサインインにより、簡単に始めることができます。また、SSOにも対応しています。

本記事では、DevSecOpsを踏まえて、Snykの基本的な使い方などについて解説しています。

## DevSecOps
DevSecOpsは、DevOpsのカルチャーにセキュリティを融合したDevOpsのアプローチです。

DevOpsのカルチャーに対して、最初からセキュリティ対策を組み込み、ワークフローの速度が低下

元記事を表示

ソフト開発未経験チームがオンボーディングでWebアプリ作ってみた

この記事は [DENSO アドベントカレンダー 2021](https://qiita.com/advent-calendar/2021/denso) の21日目の記事です。

# はじめに
社内の [リカレント制度](https://www.denso.com/jp/ja/news/newsroom/2021/20210527-01/#:~:text=%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E4%BA%BA%E6%9D%90%E3%81%B8%E3%81%AE%E3%83%AA%E3%82%AB%E3%83%AC%E3%83%B3%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E6%A7%8B%E7%AF%89%E3%80%81%E9%81%8B%E7%94%A8) (ニュースメディアだと [キャリア転身制度](https://newswitch.jp/p/26996)という表現) でソフト未経験からキャリアチェンジを図り、2021年6月より開発チームにアサインされました

元記事を表示

AWS BackupでVMware Cloud on AWSのバックアップを取得してみた

## はじめに

この記事は[AWS Advent Calendar 2021](https://qiita.com/advent-calendar/2021/aws)、カレンダー2の21日目の記事です。

2021年のre:Inventにて、AWS BackupがオンプレミスのVMware及びVMware Cloud on AWS(以下、VMC)に対応したと発表されました!
VMCでは今までバックアップを取得する場合、サードパーティのバックアップソフトを導入してバックアップを取得する必要があったのですが、今回この発表により選択肢の幅が広がったと感じます。

早速試してみたので、その設定内容や所感等を記事にします。
※本記事はVMCの仮想マシンをAWS Backupで取得したことにフォーカスするため、VMCの構築や詳細な設定内容については割愛します。

## AWS Backupとは

AWS Backupとは、AWSのサービスの一つであり、EC2やRDS等のAWSサービスのイメージバックアップを取得できます。
バックアップのサイクルはバックアップジョブとして自動化可能であり、取得した

元記事を表示

初心者向けAWS AppStream 2.0入門

AWS上にはデスクトップ環境を提供するフルマネージドサービスが2つあります。

「[AppStream 2.0](https://aws.amazon.com/jp/appstream2/)」と「[WorkSpaces](https://aws.amazon.com/jp/workspaces/)」です。

特にAppStream 2.0については、世間からの認識度が低いように思います。
今回の記事は「AppStream 2.0」について概要を理解する為の手助けになる事を目的に記載してみました。
「AppStream 2.0とは何?良く解らないんだけど…」という方はご一読頂ければと思います。

なお、いつものお約束ごとですが、本投稿内容は、わたし個人の意見や経験談であり、所属する企業や団体を代表するものではございません。何卒、よろしくお願いいたします。

#■AppStream 2.0とWorkSpacesの違い

公式サイトの記載は以下の通りです。

##[Amazon WorkSpaces](https://aws.amazon.com/jp/workspaces/)
>Amaz

元記事を表示

The Amazon Builder’s Library “Reliability, constant work, and a good cup of coffee” を読んでみた

The Amazon Builders’ Library をご存知でしょうか? re:Invent 2021 においても、新しくリリースされたサービスではありませんが、キーノートで触れられています。

https://aws.amazon.com/jp/builders-library/

今回は 「Reliability, constant work, and a good cup of coffee」 という記事について取り上げてみたいと思いますが、この記事には、アーキテクチャ図は一切ありません。読み物として書かれています。

Builder’s Library で Architecture タグがついているのに、アーキテクチャ図がないということにとても興味が湧き、読み進めてみたのですが、とても面白かったので感じたことを記録として残しておきます。

https://aws.amazon.com/builders-library/reliability-and-constant-work/

ざっくり書くと、エドワードホッパーの「[ナイトホークス](https://www.artic

元記事を表示

LocalStackで、ローカル環境にS3とLambdaデプロイしてみた

#目次
[1.LocalStackとは](#1-LocalStackとは)
[2.今回作成するもの](#2-今回作成するもの)
[3.準備するもの](#3-準備するもの)
[4.LocalStackの起動](#4-LocalStackの起動)
[5.S3バケットの作成](#5-S3バケットの作成)
[6.Lambda関数の作成](#6-Lambda関数の作成)
[7.まとめ](#7-まとめ)

#1-LocalStackとは
・疑似的なAWS環境をローカルに構築することができる
・実際に料金はかからず、動作確認をすることが可能
 ⇒有料版もありますが、主要なサービスは無料版で使用することが出来ます
・導入が比較的楽

実際にAWS環境を使用しなくても動作確認ができることや、課金されないのはありがたいですね、、、。
筆者は色々起動しっぱなしにして月3000円×4か月くらい請求された経験があるため、非常にうれしいポイントです。

#2-今回作成するもの
今回は簡単にS3とLambdaをそれぞれ作成していこうと思います

#3-準備するもの
##1.Docker環境
まずDockerとdoc

元記事を表示

画像処理を使ったペット見守りアプリを作ってみた

# はじめに
この記事はNTTドコモ R&D Advent Calendar 2021の21日目の記事です。

こんにちわ、NTTドコモ サービスイノベーション部の川嶋です。普段の業務では画像認識技術の研究開発やそのサービス化に取り組んでいます。
最近、外出時にペットが元気にしているか気になって仕方がないので、遠隔でペットの様子を観察できるアプリケーションを作ってみたいと思います。
なお、本記事の執筆にはデグーのぎんちゃんに多大なご協力をいただきました。この場をお借りして深く感謝いたします。

# この記事は何?
下記のAWSサービスを組み合わせて開発したペット見守りアプリケーションの実装例の紹介です。

– Amazon Kinesis Video Streams
– Amazon API Gateway

元記事を表示

Amazon CloudWatch Application InsightsでSAP HANAをモニタリングしてみる

# Amazon CloudWatch Application Insightsとは
公式マニュアルには以下のように記載されています。
>CloudWatch Application Insights は、他のアプリケーションリソースとともに Amazon EC2 インスタンスを使用するアプリケーションをモニタリングするのに役立ちます。アプリケーションのリソース全体およびテクノロジースタック (Microsoft SQL Server データベース、ウェブ (IIS) サーバー、アプリケーションサーバー、OS、ロードバランサー、キューなど) で主要なメトリクス、ログ、およびアラームを特定して設定します。

https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/appinsights-what-is.html

超簡単に説明すると「SQLServerやIISなどのアプリケーションの監視設定をよろしくやってくれる」機能です。(たぶん
2021年11月にSAP HANAの監視にも対応したので試してみたいと思い

元記事を表示

Udemy教材だけでOK!AWS SAA(ソーシャルアーキテクトアソシエイト)試験合格までの道のり

この記事は[IT資格取得をテーマに学びをシェアしよう!【PR】Udemy Advent Calendar 2021](https://qiita.com/advent-calendar/2021/udemy)の12/21の記事となります。

## はじめに

この記事は[AWS Certified Solutions Architect – Associate(SAA)](https://aws.amazon.com/jp/certification/certified-solutions-architect-associate/)の資格取得に関する情報を記載します。

これからAWS SAAの資格取得を考えている方に役立つ情報を提供できれば幸いです。

## 試験勉強する前の状況

AWSは業務で5年程経験がありました。
使ったことがある機能:EC2/ALB/ECS/ECR/Lambda/EBS/AutoScaling/S3/Route53/IAM

## 試験結果

満点 : 1000点
合格ライン :720点
点数 : 780点 
結果 : 合格

## 試験期間・勉強時間

元記事を表示

CloudShellとAWSCLIを利用してAmazon Lightsail のDrupalサーバを最速で立てる

Drupal Advent Calendar 2021 21日目の記事になります。

AWSには[AWS Lightsail](https://aws.amazon.com/jp/lightsail/)という月額$3.5~から利用可能なVPSサービスがあります。今回は

[Amazon Lightsail でDrupal インスタンスを起動する](https://aws.amazon.com/jp/getting-started/hands-on/build-drupal-website/)

の「Amazon Lightsail で Drupal インスタンスを作成する」+静的IP追加までをCloudShell+AWSCLIを利用して最速で立ててみます。

## ■ 免責事項

本手順は完全性、正確性、有用性、安全性などを保証するものではありません。
本手順に基づき実施した判断および起こした行動によりいかなる問題が発生しても一切責任をおいません。
本手順を利用の際は全て自己責任にてお願いします。

## ■ 前提条件

AWSアカウント開設済み

## ■Lightsailの仕様

元記事を表示

Amplifyと約一年半向き合ってみて

この記事はAmplifyアドベントカレンダー21日目の記事です。

こんにちは!オンライン劇場ZAのUXエンジニアをしています、とうようです。

オンライン劇場ZAというのは昨年11月末に開設した、**オンライン演劇のためのプラットフォーム**です。自分はこのオンライン劇場ZAの立ち上げに学生エンジニアとして関わり、現在はそのまま副業として関わらせてもらっています。

そんなつい先日設立一周年を迎えたオンライン劇場ZAは、設立当初から**Amplify + Next.js**という技術スタックで作られています。今回の記事は、UXエンジニアという肩書きのもとフロントとバックエンド、どちらの実装にも関わってきた自分が開発開始からの約一年半を振り返ってAmplifyの良かったところ・いまいちだったところを書いていきたいと思います。
なお構成上、**技術の深いところまでは立ち入らず、ここまでのを経緯を振り返りながらそれぞれのトピックのさわりだけ触れる形**になっています。個別の詳細はもし機会があったら別途記事にしようと思うのでよろしくお願いします。また、似たような内容で今年の9月にAWSDev

元記事を表示

MLflow+AWS+SageMakerの環境を立ち上げる

機械学習の実験管理ツールの一つに、MLflowがあります。MLflowを使うと、学習時のハイパーパラメータや精度を記録することができ、効率的にモデルの開発を進めることができるようになります。機械学習の実験管理を検討されている方は、一度は聞いたことがあるツールかと思います。
MLflowをローカル環境で動かしたあと、これをクラウド上で利用するため、簡単な構成のサービスの動きを確認したいときがあるかと思います。しかし、MLflowをローカルではなくクラウド(特にAWS)上にデプロイし、クライアントが学習した結果が保存されるまでの流れを、通しで説明している情報は少ないと感じています。そこで本記事では、MLflowをAWS上にデプロイし、クライアントPCまたはSageMakerで実行された学習結果を確認するまでの手順を説明したいと思います。

# はじめに
MLflowをAWS上で動かすサンプルを探すと、AWSのブログで紹介されている以下の記事がヒットします。本投稿では、この記事で紹介されているサンプルについて、AWSへのMLflowのデプロイ方法とMLflowの使い方について説明したいと思

元記事を表示

【AWS】はじめてのサーバーレスAPI構築

この記事は[マイナビ Advent Calendar 2021](https://qiita.com/advent-calendar/2021/mynavi)の21日目の記事となります。

#目的
AWS Lambda、API Gateway、Amazon RDSを利用して簡易的なサーバーレスAPI(以下、簡易API)を構築します。簡易APIにリクエストを送ると、RDSから値を取得しレスポンスを返すという仕様になります。

###構成図
![Untitled Diagram (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/304307/c980561e-5ab7-01c4-14ad-eb1cce3b854d.png)

#前提・注意事項

– 本ソースコードを試す場合は、APIとして外部公開される危険性を考慮し、DBに機密なデータが無いことを確認の上お試しください。
– 事前にRDSを構築しておく必要があります。今回の記事では詳細は省略しております。
– 認証に関しては、今回説明しておりませんが、

元記事を表示

2018年に公開したAlexaスキルでもAWSプロモをもらい続けている件

本記事はスマートスピーカーアドベントカレンダー2021の21日目の記事です。

記事そのものは11月23日の勤労感謝の日に書いています。
ミュートにしているのに記事を見てしまった方はお疲れさまです。

https://qiita.com/advent-calendar/2021/smart-speaker

さて、最近になってこんなことを耳にしました。
「AlexaスキルでのAWS利用クーポンがこなくなった」

たしかに、以前は1つでもスキル公開していると月間100ドル分の利用クーポンが自動発行されていたと記憶しています。

私は業務上、Alexaスキルをリリースしているアカウントはいくつかあります。
さすがに依頼されたスキルをすべて自分のアカウントで公開というわけにもいきません。

その中で2018年中にしかリリースしていないアカウントがあります。
けれども、AWSの利用クーポンは未だに頂いているのが現状です。 
※少なくともここ数ヶ月は。

で、そのアカウントのメールを漁っていたら
2021/07/14 8:30
に以下のメールがきてました。
※本件のメールの公開は禁止事項に入

元記事を表示

AWS CLIで Web サイトを構築、管理、運用する(21日目)

21 日目!

予告通り、コンテンツ周り、特に管理やデプロイについて設定をいれていきます。

# 21日目の要約
コンテンツをリポジトリで管理するよ!

# AWS CLI の準備
このあたりをみて、好きなバージョンとお使いのOSにあった環境設定をしてくださいね。
なんなら、 AWS CloudShell で実行するのも楽でよいと思います。
この記事シリーズは、AWS CloudShell で実行し、実行例を載せています。

バージョン1
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv1.html

バージョン2
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2.html

# 概要
CodeCommit を使ってコンテンツを管理するよ!

# さあ、やってみよう!
## リポジトリを作る
CodeCommit のリポジトリを作成して、コンテンツを管理できるようにします。

“`sh
aws codecommi

元記事を表示

AWS LambdaでVPCを紐付けした時の外部APIを使用する方法

よくLambdaからSlackへ投稿する方法など外部のAPIを使用したり、ウェブスクレイピングして定期的に情報を取得するなどの方法が、ネットで調べると出てきたりします。
通常ただLambdaで構築するだけだったら、何も気にせずに行えるのですが、Lambdaで、VPCの紐付けをしていると外部との接続ができなくなります。
当たり前の事かもしれませんが、Lambdaの勉強中にここでハマってしまいました。
どうやら、Lambdaに紐付けするVPC(正確にはサブネット)にNAT Gatewayを使用して外部接続が出来る様にしないと駄目との事でした。
なので、今後の為にメモ代わりに記事にして残しておきたいと思います。
これまでの記事同様、CloudFormation を利用してテンプレート化しています。

## NAT GatewayとElastic IPを利用する上での注意点

NAT GatewayとElastic IPが必要な為料金が発生する可能性が存在します。
私は、学習の為の必要経費だと思い気にしませんが注意が必要だと思います。

## テンプレートの作成

今回VPCの作成から行ってい

元記事を表示

OTHERカテゴリの最新記事