- 1. Amazon WorkSpacesをオレオレ証明書(自己証明書)でデバイス制限した話
- 2. AWS CloudWatchのログフィルタパターンを分かりやすく解説
- 3. 【GitHub Actions】S3にキャッシュするアクションを作りました
- 4. AWS動作検証【6】(作成済みEBSボリュームの暗号化)
- 5. AWS Elastic BeanstalkでEBSボリュームを暗号化するには?
- 6. AWSに静的ウェブサイトを構築する
- 7. 【Kotlin】kotlessをやってみました(API Gatewayまで)【kotless】
- 8. AWSのCI/CDを体験するのに「Amazon Web Services アプリ 開発運用入門」をトレースして詰まったところ一覧
- 9. AWS X-RayをJavaで色々動かして試してみる
- 10. AWSの障害情報をチェックする
- 11. IAM resource を Terraformで管理する
- 12. chmod 600 ←600ってなんやねん
- 13. AWS Cloud9でRuby on Railsを動かしてみた
- 14. Railsで新しいアプリを作ったらActiveRecord::ConnectionNotEstablishedが出てきた
- 15. AWSを用いてrailsアプリをデプロイするプロセスを頑張って噛み砕いてみるvol.6
- 16. DynamoDB知見
- 17. Slackのスラッシュコマンドとダイアログを使ってEC2のセキュリティグループを編集する
- 18. AWS Appflow で ServiceNow からデータを連携させる
- 19. AWS 基礎
- 20. AWS Service health dashboardのRSSを、Slackに一括登録する
Amazon WorkSpacesをオレオレ証明書(自己証明書)でデバイス制限した話
# Amazon WorkSpacesにオレオレ証明書(自己証明書)を登録する
はい皆さんこんにちは結論から言うとこの記事は
WorkSpacesで認証済みの端末からアクセスを許可するために
証明書を作って登録する話です。# 詳細
信頼されたデバイスへの WorkSpaces アクセスを制限する
https://docs.aws.amazon.com/ja_jp/workspaces/latest/adminguide/trusted-devices.html
クライアントアプリケーションはこちら
https://clients.amazonworkspaces.com/環境:
AmazonWorkSpaces
クライアント:WIN10
サーバ:WIN10
接続方式:クライアントアプリケーション
証明書を作る環境:CentOS7(他のLINUXでもOKです)注意事項:
**接続方式が他のデバイス(WEB ACCESSとか)の場合、証明書でアクセス制限できません**
なのでDirectoriesの[Actions]>[Update Details]>[Access
AWS CloudWatchのログフィルタパターンを分かりやすく解説
こちらのサンプルログイベントメッセージを使用します。
“`
1 [83078518-fcc1-4d30-9573-8b9737671438] BENCHMARK : Running Start Crawl for Crawler TestCrawler2
2 [83078518-fcc1-4d30-9573-8b9737671438] BENCHMARK : Classification complete, writing results to database mygluedatabase
3 [83078518-fcc1-4d30-9573-8b9737671438] INFO : Crawler configured with SchemaChangePolicy {“UpdateBehavior”:”UPDATE_IN_DATABASE”,”DeleteBehavior”:”DEPRECATE_IN_DATABASE”}.
4 [83078518-fcc1-4d30-9573-8b9737671438] INFO : Created table gluetest in da
【GitHub Actions】S3にキャッシュするアクションを作りました
> 「俺はactions/cacheをやめるぞ!〇〇〇〇ーッ!!」
## はじめに
S3にキャッシュするアクションを作成しました。
[![actions-s3-cache](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317369/e59838b0-8300-e0f4-cf69-000b9147744a.png)](https://github.com/marketplace/actions/actions-s3-cache)
https://github.com/marketplace/actions/actions-s3-cache
GitHub Actions公式のキャッシュ機能である`actions/cache`は、
> – Pull Requestでコケた時にRe-run jobsするとactions/cacheアクションが正常に動作しない
> – actions/cacheアクションは時折キャッシュの取得に失敗することがあるなどの問題を抱えているようです。
詳しくは、こちらのブロ
AWS動作検証【6】(作成済みEBSボリュームの暗号化)
前回「[AWS動作検証【5】(AWS CLIによるサーバ停止・スナップショット取得・サーバ起動)](https://qiita.com/gomasa/items/464b5fc13c62208e8eb7)」の続きとなります。
#■■ 筆者情報 ■■
・AWSの資格試験はプロフェッショナルまで取得済。
・AWSの操作経験は初心者並み。
・理論は解っていても操作は解っていない状況。
※資格試験取得に興味のある方は[「AWS認定試験の勉強方法](https://qiita.com/gomasa/items/6ce860a2e11a620c92ae)」を参照ください。#■■ この記事を読んでほしい対象 ■■
・AWSの知識はある程度ついたので、AWS操作を一通り実施したい人。
・AWS公式ドキュメントをベースに手順を確認したい人。
※手順を簡単にまとめてくれているサイトも多々ありますが、可能な限りAWSの公式ドキュメントを読み解きながら確認を実施しています。その為、この記事のリンクの多くは公式ドキュメントに対して貼られており、どうしても公式ドキュメントのみだと解らない場合に、個人のHPを
AWS Elastic BeanstalkでEBSボリュームを暗号化するには?
# 背景
現状Elastic Beanstalkのサービスとして、EBSを暗号化するための設定を行う機能はありません。
EBSを暗号化するには下記のうち、どちらかの方法をとる必要があります。
(1) EBSボリュームがデフォルトで暗号化されるよう設定する
(2) Elastic Beanstalk環境用のAMI から、EBSボリュームに対して暗号化の設定を行なったカスタムAMIを作成し、そのAMIを使用する
今回は(1)の方法を使ってEBSを暗号化する方法を紹介します。
この方法の注意点としてはデフォルト暗号化を有効化すると、以降設定したリージョン内で構築されるEBSが全て暗号化されます。
# 手順
## KMSを作成する
デフォルトKMSキーを使用する場合はこの手順は飛ばして問題ないです。※デフォルトKMSキーを使用すると暗号化したスナップショットをAWSアカウント間でコピーが行えなくなるので注意
カスタマーキーを作成する際、注意点としてオートスケーリングで使用するサービスロールからKMSへのアクセス許可をキーポリシーで明示しておく必要があります。
Elasti
AWSに静的ウェブサイトを構築する
AWSのS3を使って静的ウェブサイトを公開する。今回はCloudFrontを使わないためhttpまでの公開。「この時代にhttp?いるの??」とツッコミたくなるが、新入社員向け入門用のメモとして記載してます。
# 全体構成図
AWS公式サイトより画像転載。
[静的ウェブサイトをホスティングする](https://aws.amazon.com/jp/getting-started/projects/host-static-website/)![AWS_StaticWebsiteHosting_Architecture_4b.da7f28eb4f76da574c98a8b2898af8f5d3150e48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/115108/a465c644-cd0f-9842-191e-069b467d6e1a.png)
– Aレコードの役割は別途
# 手順
[実装ガイド](https://docs.aws.amazon.com/AmazonS3/latest/dev/w
【Kotlin】kotlessをやってみました(API Gatewayまで)【kotless】
今回[公式](https://site.kotless.io/introduction)の**Getting started**をやってみたので、それを日本語で書いていこうと思います。
## kotlessとは?
Kotlinのみを使ってServerlessApplicationを作成し、デプロイすることがでるServerless Frameworkです。## まず必要なもの
– AWS アカウント
– AWS CLIのインストー
– IAMユーザー
– CLIの初期設定
– Profileをつけるのをオススメ
– S3バケットこちらについてのインストールや設定などの説明は省きます。
## 必要ないもの
– Terraformは自動でDLしてくるので元々持ってる必要はないです。## S3バケットの準備
kotlessはTerraformが裏で動くため、Terraformの`state.tfstate`を保存するため先にS3のバケットだけは必要になります。
今回は`kotless-example-bucket`という名前で作成しました。
リージョンも東京リージョンで作
AWSのCI/CDを体験するのに「Amazon Web Services アプリ 開発運用入門」をトレースして詰まったところ一覧
今自社のサービスをAWS上で運用していますが、CI/CDの仕組みを整備しなければなあと思っていたところで、ひとまずAWS上で提供されているCI/CDサービスをさらっと理解したく、「Amazon Web Services アプリ 開発運用入門」をトレースしてみました。
AWSが提供するCI/CDサービスの中で、本書では以下の利用を体験できます。
– CodeCommit : ソースコード管理サービス
– CodeBuild : ビルドサービス
– CodeDeploy : デプロイサービス
– CodePipeline : リリースプロセスの自動化サービスいずれもAWSではごく当たり前となっているフルマネージドサービスで、利用者からするとごく簡単なCUI, GUI経由の操作だけで環境構築ができます。
参考までに、フルマネージドサービスの定義を[こちら](https://www.gixo.jp/blog/4611
AWS X-RayをJavaで色々動かして試してみる
# 前提条件
X-Ray初心者向け。なんとなくは知ってるけど、具体的に何がどこまでできて、どうやって実装するかを色々試してみながら確認した記事。環境としては、Spring Boot+MavenでWebアプリを実装している。依存関係の解決方法以外はGradleも同じはず。
# X-RayのDockerコンテナイメージを作る。
まずは、適当なEC2とかでコンテナイメージを作る。
今回は、AWSのサンプルをベースに作ってみよう。“`
$ git clone https://github.com/aws-samples/aws-xray-fargate
“`buildspec.yml に書いてあるコマンドを、実行していってみる。
“`
$ aws ecr get-login –no-include-email –region ap-northeast-1
“`でログイン情報を取得後、実行。“`ap-northeast-1“`は利用しているリージョンを指定する。
“`
$ docker build -t xray:latest .
“`作ったコンテ
AWSの障害情報をチェックする
4/20の夜にAWSの東京リージョンでSQSやLambdaに障害があったようです。
AWSも無敵ではありません。障害があった際にすぐに気づきたいですね。
# Service Health Dashboardをチェック
AWSに障害が発生した場合には、こちらのサイトでアナウンスされます。
https://status.aws.amazon.com/こちらのサイトにはRSSも配信されているので、RSSリーダーでチェックしておくと良いですね。
しかし、、、***サービスごとにチェックするRSSファイルが分かれている!!!***
「Tokyo」で検索しても120件。。。全件手動で登録するのは無理ですね。
(Slackに通知を行うとか今どきのものを考えたのですが、手動で120件も登録できません。。。)# 全RSSファイルをまとめたRSSファイルを作る
Lambdaで定期的にスクレイピングする作戦です。やってやれんことはない。
できたファイルはS3にでも格納して外から見れるようにしましょう。
この例ではService Health Dashboardのタブを一つ指定して処理を
IAM resource を Terraformで管理する
# 背景
IAM userをTerraformで管理し始めて、 policyを importして、Roleを。。とやっていたが、policy attachmentや group memberなどもTerraform化しなくてはいけなくなってかなり大変になった。
# 要件
以下の要件くらいは満たしてほしい
– [x] Userの追加・削除
– [x] User削除時に関連する グループに所属する、UserPolicyAttachmentなどの削除が可能
– [x] Groupの作成と同時にUserの追加
– [x] Policyの作成と同時にUser/Role/GroupへのAttachment
– [x] Role/Group/Userの作成とPolicyのAttachment# 材料
## `terraform import`
利点:
1. officialで既存のリソースのImportができる
難点:
1. tfstateはimportできるがtfファイルは準備しないといけない。 → すでに大量のリソースがあると大変## [terraforming](https
chmod 600 ←600ってなんやねん
##近況報告
とりあえずデプロイは完了しました。readmeを書いて,投稿物を揃え,エラー対応すれば見世物としての体裁はできあがるのかな。某雑食系さんのツイートに,ポートフォリオはサーバーサイドの実力はもちろんのこと,コンテンツ力,そして見た目も評価の対象になりうるとありましたね(めっちゃ噛み砕いた)。自分のはサーバーサイドの記述,実力はまだまだですけど,見た目は手を抜かなければよくできるので,今の自分の最善を尽くした作品を作っていこうと思います。#今回の目的
chmodに続く数字を知る。#結論
ファイルへの権限の種類だよ##詳細
[参考](https://linuxfan.info/chmod)chmodは「change mode」の略で,桁数,数字の組み合わせによって編集の権限とかを設定しています。
これにより,第三者からの不正アクセスの予防に繋がります。|桁数|意味|
|:——-:|:——–:|
|1桁目(百の位)|所有者のアクセス権限の範囲|
|2桁目(十の位)|グループのアクセス権限の範囲|
|3桁目(一の位)|その他のユーザーのアクセス
AWS Cloud9でRuby on Railsを動かしてみた
こんにちは!モリタケンタロウです!
今回はAWSのCloud9で、Ruby on Railsを動かす方法について紹介します。# AWS Cloud9とは
AWS Cloud9については↓をご参考にどうぞ* [AWS Cloud9で開発環境を立ててみた](https://qiita.com/MORITAKENTARO/items/db791b8a45eda53259f2)
# Ruby on Railsとは
Ruby on RailsはRubyで動作するMVCモデルのフレームワークです。
Webアプリケーション開発に向いていて、世の中のあらゆるサービスがこのRuby on Railsでできています。
Railsはオワコンと言われていたりもしますが、僕が会社でRailsのWebアプリ開発をやっていたときに、勉強しやすくて書きやすかったので、とりあえず今回はRailsを使ってみようと思います。# とにかくやってみよう!
AWS Cloud9では最初からRubyもRailsもインストールされています。
`ruby -v`と`rails -v`のコマンドで確認できます。
![rub
Railsで新しいアプリを作ったらActiveRecord::ConnectionNotEstablishedが出てきた
こんにちは!モリタケンタロウです!
今回はRailsでアプリを新規作成して動かしてみたら、「ActiveRecord::ConnectionNotEstablished」というエラーが出てきたので、それを解決する方法について紹介します。# 開発環境
* ruby 2.6.3p62
* Rails 5.0.0# エラー内容
`rails server`コマンドでアプリを動かすと、画面にはこんなエラーが出てきます。
![noconnection.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/612211/b645e4d3-1eaa-5806-89ba-3aca7b060cee.png)
`ActiveRecord::ConnectionNotEstablished`
`No connection pool with id primary found`
なにこれ!?分からん…
ということでググると、RailsのORM機能であるActiveRecordが、`sqlite3`の新しいバージョンに対応してな
AWSを用いてrailsアプリをデプロイするプロセスを頑張って噛み砕いてみるvol.6
##近況報告
大海に糸を垂らして魚を釣るのと鱒がそこにいるとわかっている生簀で鱒を釣るの,どちらが先に釣れるでしょうか。価値があるから売れるのと,売れるから価値がある,どちらが始まりなのでしょうか。鶏と卵論争ではないけれども,考えていくべきことですよね。ついに最後,**Nginx**ですね。
まだやりたいことはあって,予定ではCapistranoとベーシック認証があるのでvol.8以上あるのか笑
さあいってみようかぁ!##今回の内容
・インフラ整備での各アクションの言語化
・コードを単に打っているだけでは理解しきれないし,他に応用できないので言語化して整理
・テックキャンプ受講生支援()##大まかな流れ&設定
Nginxインストール
##事前準備
[vol.1](https://qiita.com/aaabb6211/items/6194fa53f29061dc5444)
[vol.2](https://qiita.com/aaabb6211/items/2f8c5034b791767dee7a)
[vol.3](https://qiita.com/aaabb6211/it
DynamoDB知見
# はじめに
この記事は2020年3月31日時点のものです。
どこかで見た情報を適当にメモして、あとから自分の言葉で書き直したりものです。
それでも良い方のみご覧ください。
*CUやモードについては書いてません。# DynamoDB知見
## 用語
・項目
レコードのこと
・属性
カラムのこと
・スキャン
対象テーブルの全ての項目を取得すること。## RDBとNoSQLの違い
・RDB
柔軟にクエリできるが比較的コストが高い、トラフィックが多いと柔軟にスケールできないことも。正規化重要。
・NoSQL
特定のクエリを爆速にする代わりにそれ以外は高コストで低速に。## NoSQLの設計について
・ビジネス上の問題とアプリケーションのユースケースを理解してからスキーマを作ろうね。
・出来るだけ少ないテーブル数にしようね。一つがベスト
・関連するデータをまとめること(非正規化)
例外として、大容量の時系列データが必要な場合や、データセットのアクセスパターンが非常に異なる場合などがあります。
キーの設計が原因でソートされている場合は、関連項目をグループ化して、効率的に
Slackのスラッシュコマンドとダイアログを使ってEC2のセキュリティグループを編集する
# 経緯
フルリモート体制になっているので、sshの接続元などにオフィス以外の任意のIPアドレスを追加する必要が出てきた。メンバーの自宅はIPが固定されていないため、IPアドレスが変わるたびにインフラ担当に作業を依頼する必要がある。
作業の手間とヒューマンエラーをなくすために、自動化を試みた。
# 要件
– 許可したいIPアドレスと対象のセキュリティグループを入力するとインバウンドルールが追加される。
– 追加された任意のIPアドレスを削除する機能も用意する。
– 機能を使用できるユーザーと対象のセキュリティグループをあらかじめ制限する。
– 誰がいつどんな操作を行ったのか履歴を残す。# 使用技術
やっぱりこういうボットはSlackかなあと思ったのでスラッシュコマンドで作ることにしました。バックエンドはLambda+API Gatewayです。
スラッシュコマンドはGASで作る人が多い気がするんですが、今回はAWSのAPIを用いるのでこれ以外の選択肢はまあないですね。
![Amazon-API-Gateway@4x.png](https://qiita-image-
AWS Appflow で ServiceNow からデータを連携させる
# はじめに
AWS から Appflow というデータ連携の新しいサービスがリリースされましたね!
連携できるサービスの中に ServiceNow があったので、AWS & ServiceNow の有資格者としては早速試さないわけにはいかないので、簡単に実装してみました。# 1.事前準備
## ServiceNow にてアカウントを作る。
何も見ずに早速 Appflow を作ろうとすると、こんな画面が出てきました。
まぁ、当たり前ですが、然るべき権限(role)を持ったユーザを指定してほしい、という事です。早速 ServiceNow で作りましょう。
ServiceNow のインスタンスは、Orland の Developer instance を使用しています。
AWS 基礎#前提
AWSについて基本的な言語の意味などを書いていきます。
こちらについては、これからも更新していきます。#本題
・リージョン
AWSの各サービスが提供されている地域のこと。
日本では東京リージョンがおすすめ。
応答時間が早くなるため・アベイラビリティゾーン
独立したデータセンターのこと
リージョンのなかに最低でも2つはアベイラビリティゾーンが存在する
リージョンを選び、どのアベイラビリティゾーンを使うか選ぶ・VPC
AWS上に仮想ネットワークを作成できるサービス。
リージョンを選択する・サブネット
VPCを細かく区切ったネットワーク
1つはインターネットに接続できてもう一つは接続できないようにする
パブリックサブネットとプライベートサブネットVPCは東京リージョンに設定
東京には3つのアベイラビリティゾーンがある
IPアドレスをまず決める・IPアドレスとは
インターネット上の住所・2進数
各桁を0か1を使って数値を表す
コンピューターは2進数で計算を行う・ビット
2進数の1桁(0か1)
最小単位・バイト
8ビットを1バイト
1バイトは8ビッ
AWS Service health dashboardのRSSを、Slackに一括登録する
# 背景
* Personal Health dashboardがありつつ、やはりService health dashboardの情報は、それはそれとして購読したい。
* SlackにRSSリーダーがあるけど、1 URLずつ `/feed subscribe https://…..rss` と実行する必要があり拷問である。複数をベタっと貼ってもエラーになる。どうにか一括登録したい。
* https://status.aws.amazon.com/rss/all.rss という全部入りがあるけど、使ってないリージョンのまで入ってるので、購読すると無駄にうるさい。また直近15記事しかなく、広域障害発生時は猛烈に流れて使い物にならないことが想定できる。製品ごとリージョンごとRSSで見るしかなさそう
* ググると手製の東京リージョンOPMLとか見つかるけど、数年前のものだったりする。常に最新のRSSであってほしい# 解法
* https://status.aws.amazon.com/ からRSSのURLを、グローバルサービス、リージョナルサービスにバラして、ほしいリージョンだけ