AWS関連のことを調べてみた2020年06月27日

AWS関連のことを調べてみた2020年06月27日
目次

Kops環境(EC2)でbastionのSSHポート番号を後から変更した

##はじめに
勉強用の検証環境で、Kopsでクラスターをセットアップした後に、bastionのSSHポート番号を変更しようとしたところ、少しはまってしまいました。対応した内容をメモで残します。(検証したのは今年の3月ごろ。)
あくまで個人の作業メモです。ご自分てプロジェクト等の環境で対応される場合には、公式のドキュメント等も確認の上、事前に検証して手順を確立してから対応されることをおすすめします。

## 状況
何も考えずに対応してSSHがつながらなくなり、困惑した経緯。(恥をさらすところではありますが、、)

– kopsでクラスターを作成後、bastionのポート番号を変更したいから変えなくちゃ!、とPC(Win)のTeratermを起動
– 2つTerminalを起動し、/etc/ssh/sshd_config を書き換え、sudo sshd -tとsudo service sshd restart を実行
– Teminalが2つとも落ちる!(当然だ!)

状況把握のログ

– 端末から、ELBのポート接続を確認すると、変更前のポートでは接続でき、変更後のポートでは接続できない

元記事を表示

(自分用)AWS_2(リモートアクセス/Apacheをインストール/ファイルを互いに送受信)

# 項目
1. 仮想マシンにリモートアクセスをする
2. HTTPサーバーのApacheをインストールし、ページを公開
3. ローカルと仮想マシン双方で、ファイルを転送し合う

# 1.仮想マシンへリモートアクセスする
“`bash:ターミナル
# “.ssh”と言うフォルダがあるかを確認する
$ ls -a -l
# 無ければ`mkdir .ssh`で作成

# 前回のダウンロードしたキーを”.ssh”の中に移動
$ mv ~/Desktop/FirstKey.pem ~/.ssh

# 仮想マシンとの関連付けみたいな事をしてる、多分
$ chmod 400 ~/.ssh/FirstKey.pem

# 仮想マシンへリモートアクセスしている、()は要らないの忘れずに
# 最初だけ何か聞かれるので、yesと答える
$ ssh -i ~/.ssh/FirstKey.pem ec2-user@(前回設定したパブリックIPアドレス)

# 仮想マシン内は”$$ ~~”で表現、これで仮想マシンのアクセスからログアウト
$$ exit
“`
– 取り敢えず上からやっていけば大丈夫なはず

#

元記事を表示

【AWS】VPC内のLambdaから別のLambdaを呼び出す

ちょっと前にやったことなので記憶があいまいですが、
今後もやる可能性のある事なので備忘録として残しておこうと思います。

#VPC内で実行するLambda
AWSのEC2やRDSなどのVPC内のリソースにLambdaでアクセスする場合、
LambdaにVPC設定をすることで可能になります↓

[【AWS】LambdaをVPC内で実行し、EC2のMySQLにアクセスする
https://www.geekfeed.co.jp/geekblog/lambda_vpc](https://www.geekfeed.co.jp/geekblog/lambda_vpc)

しかし一方で、VPCにpublicなサブネットを設定していない場合、VPC内Lambdaからは外部のネットワークに接続することができなくなります。
つまり以下のアクセスが不可能となります。

1. VPC内Lambda→VPC内Lambda
2. VPC内Lambda→VPC外Lambda
3. VPC内Lambda→VPC外リソース(PrivateLinkがサポートされているもの以外)

例えば、VPC内リソースからデータ取得後

元記事を表示

AWS認定ソリューションアーキテクト–アソシエイト合格から一年振り返り

###Q.資格をとって何が変わったか。

AWSに関する仕事を多く任されるようになった事が大きな変化でした。
今まで、仕事で使用したサービス
・lambda
・API Gateway
・Dynamodb
・ECS
・ECR
・CodeCommit
・CodeBuild
・ElastiCache
・VPC周り
・Cludwatch
・S3
・RDS
資格をとったら、結果がついてくるなぁと改めて思いました。。
会社で資格持っている人が少なかったらなおさらですね。

一年間でこんなに新しいことを勉強できたなんて、ありがたいや。
ECS,Dynamodbあたりは、休日も調べものをしていましたよ、よくやった(笑)

###Q.新しいサービスを使うときはどうしているのか。
まずブラックベルトをみる。それにつきますね。
youtubeがあったりするので、家でざっとみたり。
https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-service-cut/

###Q.新しい情報はどこから仕入れているか。

なんだかんだで、週刊AWSしか

元記事を表示

Herokuで一定期間経つとアップロードした画像が消えてしまう理由とその対処法

## 今回起きた問題
初めて制作したアプリをデプロイしたはいいものの、画像を投稿して一定期間経つと「あれ….画像が消えてる!?」と画像が全て消えてデータが投稿文章だけになっていました。

## 原因
一定時間経つとHeroku上のリポジトリ (Dyno) が最後のコミットの状態にリセットされるため、画像が保存できないとのこと。

## 解決法
自分はクラウドストレージを使用して解決しました。今回はfogとawsのS3と画像アップロードにCarrierWaveを使用しています。

### 1.fog
fogとはRubyでクラウドサービスを使いやすくするためのGemです。
まずはfogをインストールします。gemfileの以下の記述をしたら bundle installをします

“`
gem ‘fog’
“`

開発環境ではローカルファイルに画像保存で問題ありませんが、本番環境ではクラウドストレージサービス(fog)に保存するように条件分岐させます。

“`app/uploaders/〇〇〇〇_uploader.rb
if Rails.env.production?
sto

元記事を表示

理想を追い求めたCI/CDパイプラインをTerraformで実装するためのポイント

# はじめに
CI/CDパイプラインは素晴らしい。
AWSのCode兄弟を使ったパイプラインは、機能をAWSに閉じ込めながらなんでもできる万能感を感じる。
しかし、チュートリアルに載っているようなシンプルなパイプラインだけでは、現実にある課題を解決することはできない。

[金融サービス向けに理想のCI/CDを追い求めたお話](https://jawsdays2020.jaws-ug.jp/session/%E9%87%91%E8%9E%8D%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E5%90%91%E3%81%91%E3%81%AB%E7%90%86%E6%83%B3%E3%81%AEci-cd%E3%82%92%E8%BF%BD%E3%81%84%E6%B1%82%E3%82%81%E3%81%9F%E3%81%8A%E8%A9%B1/)は、そんな現実にある課題もひっくるめてある程度解決してくれるベストプラクティスだと考えている。

が、実際にこれを運用しようとすると、クロスアカウントで色々なことをしなければならず、シンプルなパイプラインと比べると難易

元記事を表示

理解していますか?各クラウドの「アカウント」

# いきなりですが
### 皆さんはAWS,GCP,Azureの「アカウント」の違いわかりますか?
### 私は分かりません

各クラウドで名称が違いますが
その中でも特に難しいのが**「アカウント」**だと思います
調べてまとめました

#アカウントの意味

AWS|(一応)完全に独立したリソースやユーザの集合
開発や本番などで分けると良い
—|—
**GCP**|**正確にはアカウントというものはない
個人ユーザで用いるGoogleアカウントと
マシンユーザで用いるサービスアカウントがある**
**Azure**|**Azure アカウントは、請求関係を表します。 Azure アカウントは、ユーザー ID、1 つ以上の Azure サブスクリプション、および関連する Azure リソースのセットです。**[[1]](https://docs.microsoft.com/ja-jp/azure/role-based-access-control/rbac-and-directory-admin-roles#azure-account-and-azure-

元記事を表示

AWSでデプロイしちゃおうってわけ(AWS登録補足編)

どうもこんにちは。
今日は暑いですね。
そろそろ転職の準備をしなければいけない段階に入りました。:runner_tone2:

個人アプリ実装って難しいですね。
何作りたいとか無いですが、自分のスキルを示すには必要なもの。
でもありきたりなもの作っても意味ないし、複雑すぎても間に合わないし。
うーん悩みどころですね。

話がそれました。

今回はAWSの登録が済んだということでリージョンの編集です。

# 1そもそもリージョンってなんぞや

そうですよね。
カタカナって難しいですよね。

### リージョンとは== データセンターが存在する独立した地域

わかりませんねぇ。
うーん。

カリキュラムによると

##AWSの物理的なサーバの場所を指定するものです

こっちのがなんとなくピンとくるな!!

リージョンは世界各地に10箇所以上あるらしく、そのうちの一つが東京にあるとのこと。

なのでこのリージョンを東京に設定すれば良いのです。

スクリーンショット 2020-06-26 17.29.48.pngBitrise の接続先を、AWS CodeCommit から GitHub に変更する

# 0.はじめに

iOS や Android アプリについて、

* ビルドやデプロイに [Bitrise](https://www.bitrise.io) を、

* コードのバージョン管理に [AWS CodeCommit](https://aws.amazon.com/jp/codecommit/) を、

利用させて頂いてたんですが…、

* [AWS CodeCommit から Bitrise に接続する \- Qiita](https://qiita.com/kusokamayarou/items/3b4f20bd47295ef56ca2)

この度、バージョン管理を [GitHub](https://github.com) へ移行することとなりまして…、

せっかくなので、手順をシェアしておこうかなと。

# 1. [Bitrise](https://www.bitrise.io) から [GitHub](https://github.com) へ接続用の SSH 公開鍵と秘密鍵を作成する。

1. 以下のコマンドを実行します。
* `ssh-keygen -m

元記事を表示

【EC2】seleniumでの日本語文字化けを防ぐ(noto対応)

# 日本語サイトの文字化けを防ぐ
## 環境
– Red Hat Enterprise Linux release 8.2
– google-chrome-stable-83.0.4103.116
– python3.6
– selenium 3.141.0

## 一行
その他諸々は既にインストール済という前提(参考情報参照)

“`sh
sudo yum install google-noto* -y
“`

おしまい!

## 参考情報
[Amazon LinuxでSelenium環境を最短で構築する – Qiita](https://qiita.com/onorioriori/items/4fa271daa3621e8f6fd9)
[【EC2】seleniumでキャプチャしたときの文字化けを防ぐ – Qiita](https://qiita.com/yuta-38/items/d2a82d9fefcd50452cb4)

参照するリポジトリの問題か、IPAフォントが入れられなかったので、yumでgoogle-noto探したらあったので解決。

元記事を表示

【AWS EC2】Amazon Linux2でやっておきたい設定

# 概要
EC2を起動したらまずはやっておきたい設定周り

# 環境
– AWS EC2
– OS: Amazon Linux 2
– AMI ID: amzn2-ami-hvm-2.0.20200520.1-x86_64-gp2
– セキュリティグループ: SSH 22 を開けておく

# 1. サーバーの時刻をJSTにする
– デフォルトはUTCになっている
– timezoneをAsia/Tokyoに変更してJSTにしておく
– timezoneを変更したらcrondも再起動しておく

“`
$ timedatectl status
Local time: Fri 2020-06-26 06:10:18 UTC
Universal time: Fri 2020-06-26 06:10:18 UTC
RTC time: Fri 2020-06-26 06:10:18
Time zone: n/a (UTC, +0000)
NTP enabled: yes
NTP synchronized: no
RTC in loc

元記事を表示

seeds.rbのデータを本番環境に反映させるのは実は簡単!!!

# はじめに
seedファイルを作成したが、本番環境に反映されなかったため、調べ以下を実行したら上手くいきました!

メモとして、記事を投稿します!

#問題
seedファイルが本番環境に反映されない

“`

lady = Category.create(name: “レディース”)
lady_1 = lady.children.create(name: “トップス”)
lady_1.children.create([{name: “Tシャツ/カットソー(半袖/袖なし)”},{name: “Tシャツ/カットソー(七分/長袖)”},{name: “シャツ/ブラウス(半袖/袖なし)”},{name: “シャツ/ブラウス(七分/長袖)”},{name: “ポロシャツ”},{name: “キャミソール”},{name: “タンクトップ”},{name: “ホルターネック”},{name: “ニット/セーター”},{name: “チュニック”},{name: “カーディガン/ボレロ”},{name: “アンサンブル”},{name: “ベスト/ジレ”},{name: “

元記事を表示

S3のバケットポリシーで気をつけること

## 概要
ECSのDockerコンテナ内でaws s3 cpコマンドを実行させようとした時にエラーが出たのでその対処法メモ。

## エラー内容
`fatal error: An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied`

これは `s3:ListBucket` が権限なくて実行できないよというエラー。
https://aws.amazon.com/jp/premiumsupport/knowledge-center/s3-access-denied-listobjects-sync/

指示通り実行できるように権限を追加する必要がある。
今回はECSのタスクロールとS3バケットの実行Userが同じなのでS3バケットのアクセスポリシーにのみ追加すれば良い。

## S3のバケットポリシー
AWS -> S3 -> ポリシー追加したいバケット -> アクセス権限
の順で遷移するとパケットポリシーの追加画面が現れる。

“`json
{
“Vers

元記事を表示

【初心者向け】AWSとは?

# AWSとは?
正式名称:**Amazon Web Services**
GCPやAzureに並ぶ、3大クラウドプラットフォームの名称のこと。
元々は、Amazonの社内の**ビジネス課題を解決するため**に誕生した。
2020年6月4日の時点で、**世界シェアの約3割**を占めている。

#### AWSの特徴
**Design for Failure(故障に備えた設計)**がされているため、**耐故障性に優れたクラウド**という特徴がある。この点が利用者が多い理由の一つ。
WEB上からの操作だけで、世界中にサーバーを立てられるようになっており、個人がクラウドサーバを用意することも容易にできます。

#### AWSをこれから使おうとされている方へ、ちょっとした情報をご提供
・アカウント作成は無料
・料金は従量課金制 (アカウント開設時には無料枠が適用されます。)
詳しくは以下のURLを参照
https://aws.amazon.com/jp/free/?all-free-tier.sort-by=item.additionalFields.SortRank&all-free-ti

元記事を表示

[AWS RDS][Rails]環境構築

# これは何
Railsでアプリを作成中、データベースをRDSに切り替えました。
Qiitaの記事などでRDSの作成手順はあるのですが、その後のRailsのデータベースとして設定していくのにハマったので備忘録として残します。

# バージョン
Rails 5.2.4.2
MySQL 5.6.4

# RDS構築
私はUdemyの教材を参考に作成しましたが、
こちらの記事を参考にすれば問題ないかなと思います。
[(DB・サーバー構築編)世界一丁寧なAWS解説。EC2を利用して、RailsアプリをAWSにあげるまで](https://qiita.com/naoki_mochizuki/items/22cfbf4bf7ec95f6ac1c)

# 設定
database.ymlの記述を変えていくのですが、そこにパスワード などを直接記入することはセキュリティ上問題なので、credentials.ymlを使っていきます。

“`credentials.yml
rds:
DATABASE_USERNAME: *****
DATABASE_PASSWORD: ターミナルからRDSに接続す

元記事を表示

Qiita の記事を自動投稿するシステムをサーバーレスで組んだ

サーバーレスの勉強と実益を兼ねて、[自分のQiitaの記事](https://qiita.com/hassaku_63)を自動でサマリして簡単なポートフォリオ代わりに使える記事を出してみようと思いました。

※ソースコードは現在整備中なので、追って公開します。

# 成果物

こちらの記事です。

[Qiita Contributions Portfolio (Auto Generated)](https://qiita.com/hassaku_63/items/6a042079656ee4c19edc)

自分の投稿記事について、使用したタグと Like数が多いものを表示します。

# 要件

– 自分が投稿したすべての記事を集計して、その集計結果を報告する記事を自動生成したい
– 自動生成する記事は、定期的に集計結果の更新を行い、その結果が自動的に反映されるようにしたい

# 構成図

全体的な構成は以下の図の通りです。

![qiita-publish-outline.png](https://qiita-image-store.s3.ap-northeast-1.amazon

元記事を表示

QRadarでAmazon VPC Flow Logsを取得し監視する

# はじめに
みなさまこんにちは。IBM QRadarを活用されていらっしゃいますか?
これまでAWS環境にIBM QRadar SIEMを構築、導入する手順を投稿してきましたが、今回はAmazon VPC Flow Logsの取得にチャレンジしたいと思います。

# 背景
IBM QRadarは元々フローログの分析を主体とする製品から誕生しており、NetFlow/IPFIX/sFlowなどのトラフィックモニタリングが得意なSIEM製品です。AWS環境ではVPC内の通信監視機能としてVPCフローログを生成することが出来るのですが、フローログの分析を行うためにはAmazon CloudWatch LogsやAmazon Elasticsearch Serviceなどの分析基盤を活用する必要があります。
IBM QRadarにAWS VPCフローログを取り込むことで、従来IBM QRadarで培ってきたフロー情報の異常検知、監視がQRadar側のSIEMルールで判定できるようになるため、取り込みを行なってみました。

# Amazon VPCフローログとは?
公式ドキュメントは[こちら](

元記事を表示

【AWS CloudWatch】基本の紹介から、実際にセッティングまでしてみる

#目次
1. はじめに
2. CloudWatchアラーム
3. CloudWatchイベント
4. CloudWatchログ
5. CloudWatchメトリクス
6. まとめ:より可観測性なシステムの構築するためには

Amazon Web Services(AWS)が提供する100を超えるサービスの中で、Amazon CloudWatchはAWSが提供する最も初期のサービスの1つでした。 CloudWatchは[2009年5月17日](https://aws.amazon.com/about-aws/whats-new/2009/05/17/monitoring-auto-scaling-elastic-load-balancing/)に発表され、S3、SQS、SimpleDB、EBS、EC2、EMRの後にリリースされた[7番目のサービス](https://www.awsgeek.com/pages/AWS-History/)でした。

AWS CloudWatchは、ログやメトリックの収集など、幅広いクラウドリソースを網羅するツールスイートです。 モニタリング; 視覚化とアラー

元記事を表示

(自分用)AWS_1(Linux仮想マシンとインスタンスの起動/インスタンス周りを整理)

# 項目
1. Linux仮想マシンの起動と整理

# 1.Linux仮想マシンの起動
## 1-1.AWSコンソールにアクセス
– AWSにサインアップ後、ページからコンソールにアクセスする
– ルートユーザとIWA?ユーザが有るけど多分`ルート`で良いと思う…

## 1-2.インスタンスを作成(仮想マシンを起動)
1. コンソールから`EC2`を選択
2. 先に右上の所から東京リージョンを選択しとく
3. `インスタンスを作成`を選択
4. `Amazon Linux AMI`か`Amazon Linux2 AMI`を選択、取り敢えず無印を選択で良いはず
5. インスタンスタイプは`t2 micro`ってやつが無料枠なので取り敢えずそれ選択
6. インスタンス作成の確認→`作成`
7. キーペアを作成みたいなポップアップが出る、上のメニューバーから`新しいキーペアを云々`を選択、キーペア名は適当に
`キーペアのダウンロード`をし、後生大事に保存

## 1-3.パブリックIPアドレスを作成
– このままだと見るたびにIPアドレスが変わってなんかめんどくさい
– なのでI

元記事を表示

[エラー]自動デプロイ実行時のrbenv: ruby 2.5.1 is not installedot〜に関して

## はじめに
今回の投稿は私が自動デプロイを実行した時にエラーにハマったので、その内容を共有させていただきます。

## エラー内容

“`
[Deprecation Notice] Future versions of Capistrano will not load the Git SCM
plugin by default. To silence this deprecation warning, add the following to
your Capfile after `require “capistrano/deploy”`:

require “capistrano/scm/git”
install_plugin Capistrano::SCM::Git

00:00 rbenv:validate
WARN rbenv: ruby 2.5.1 is not installed or not found in $HOME/.rbenv/versions/ruby 2.5.1 on 54.95.87.53
“`

## 仮説を立てる
*

元記事を表示

OTHERカテゴリの最新記事