じぶんRelease Notes ver 0.31.5
11/1~11/30の出来事がリリースされました。
技術・開発関連
読み終えた本
- わたしの幸せな結婚 二(顎木 あくみ)
- わたしの幸せな結婚 三(顎木 あくみ)
- きもの365日(群ようこ)
目標ふりかえり
- 歯医者に行った。
- リングフィットアドベンチャーが継続できている。
目標
所感
AtCoder、コンスタントにC問題が解けるようになりたい……。解けなかった問題の復習とかもここにまとめようかな……。
そもそもアウトプットが追い付いていない(インプットもそこまで……)なので冬休みを活用してもう少し何とかしたい。
異動関連で結構自棄になってた期間があったので思い返すともったいない、ような。仕方ないか。
じぶんRelease Notes ver 0.31.4
【参加記録】JAWS-UG朝会 #14 #jawsug_asa
JAWS-UG朝会にオンライン参加しました。
朝起きて7時開始だと勘違いして、やべえごみ出す時間がねえ!って焦った(7時半開始)
イベントページ
内容メモ
ラジオ体操
- 左肩の調子が悪かったのは昨日リングフィットアドベンチャーをしてないかもしれない(インフルエンザの予防接種を受けたためやめた)
セッション① AWSコスト最適化のポイント~ここまでできるコスト削減~
- コスト削減の話。
Reserved Instance(Reserved Node)
- 長期利用で割引
- リージョンの選択誤り等があっても購入後に変更できない(サポートに問い合わせると変更できることもあるけど……という感じみたい)。
Saving Plans
- 一時間ごとの一定の費用をコミットすることで割引。
- EC2、Fargate、Lambdaが対象(Lambdaは今年の2月から)
- リージョンの変更とかインスタンスタイプの変更等は関係く、割引率が高いサービスから自動的に割引が適用される。
セッション② 動画配信 × お買い物 × サーバレス
- オンラインイベント(動画配信+ネットショップ)の環境をサーバレスで構築した話。
- AWS Elemental MediaLinkっていうハードウェアがあり、MediaLiveと簡単に接続できる(ただしシングルパイプラインなので冗長化するには複数台必要)。
- shopifyというところでネットショップが簡単にできる(https://www.shopify.jp/)。
- タイムセール(時間限定商品を販売)するためにAppSync、GraphQLで状態管理をしてる。
- ↓のブログにもっと細かいところが書いてあるとのこと(あとでじっくり読みます)。
LT③ Lightsailでワンコイン開発環境をつくる
所感
JAWS-UG朝会、朝から活動してる!って感じがしてとても良い(ラジオ体操から始まるのもGood)。
あとは分野違う話が聞けるのは興味深かった(動画配信とか関係することないので)。
AWS Budgets Action、予算作成の画面の中に予算アクションを追加ってボタンがあったのでここでできるみたい。
停止したいEC2インスタンスごとに設定が必要なので、もし料金次第で停止してもいいようなインスタンスが多いとちょっとめんどいかも(そういうときこそAWS Budgets APIつかってCLIとかかな)
AWS Organizationsはなんかいろいろ話題に上がるので自分一人のアカウントしかない現状でも使ったほうがいいのかなと思い始めています(考え中)。
LT③をされてた波多野さんが「インフラ屋さんもアプリかけるようになりたいですね」って言ってたのは心に刻んでおこうと思います(来年度異動でプログラム屋さんからインフラ屋さんになるので)。
【参加記録】JAWS-UG千葉支部オンライン#7 Serverless Hands-on Advanced #jawsugchiba
JAWS-UG千葉支部のオンラインハンズオンに参加しました。
サーバレス完全に理解した(わかってない)。
千葉に行くには熊除けの鈴がいるらしいです……。
千葉……千葉LOOKに一回行ったことあるのと、大学院生時代に千葉大学で数日お世話になったくらいの縁しかないですね。
以下個人的なまとめです。
イベントページ
資料
ハンズオン
やったこと概要
メモ(主にツイッターにリアルタイムで書いてたまとめ)
ハンズオンの内容
- Cloud9からLambda関数の作成やロールの権限付与・実行などがウィザード形式で行える。
- Lambdaの実行について、初回は時間がかかる。
- Cognitoは後から変更できない項目が多い。
- Cloud9のデフォルトは10GB。拡張する場合はシェルスクリプトで行う(公式の手順)。
- Cognitoではログインユーザの権限だけでなく、未ログインのユーザの権限も設定できる。
所感
サーバレス完全に理解した(わかってない)
AWSのサービスあんまり使えてないので、いろいろ使えたのすごい楽しかった、ハンズオンの量が多くて順にやっていくだけで手いっぱいだった感はありますが……。
AWS Amplify、ぽちぽち選んでたらSPAができて便利なんだけど裏で何やってるかを理解しないと本当に使ってるだけになりそうだな~という感じ。それでもいいのかな……?
たぶん裏でCloudFormationのテンプレートからリソース作成している(んだと思う)。
JAWS-UG千葉支部の和田さんが共著の書籍「基礎から学ぶ サーバーレス開発」を買った(正確には最寄りの本屋に取り寄せを頼んだので週末には届く)のでもうちょっと勉強します。
www.amazon.co.jp
【参加記録】Docker道場オンライン#1 Docker基礎概念と用語の理解 #dockerdojo
Docker道場オンラインに参加しました。
Docker名前はよく聞くしハンズオン程度にちょーっとだけ触ったこともあるのだけれど使いどころがいまいちわかっていなくてよくわからない存在のまま……。
以下個人的なまとめです。
イベントページ
メモ
- 基本的な概念はBuild・Share(Ship)・Run。
- Dockerイメージはイメージ・レイヤの積み重ね。
- ファイルシステムとか設定ファイルとかが個々のイメージレイヤでそれがまとまって一つのDockerイメージになる
- イメージレイヤには親子関係がある。
- イメージレイヤは差分だけなので軽量になる(とはいえ工夫しないと大きくなっちゃうので理解してうまく作らないとだめっぽい)
- docker inspectでイメージ実行時(run)にやってることが見える。(hello-worldのイメージだと実行ファイルhelloを実行している。実行ファイルはpullしてきた中にある)
- コンテナ実行時 コンテナ側でpsコマンド打ってもコンテナのプロセスしか(隔離されてるので)見れないけどホスト側だとコンテナのプロセスも見れる
- コンテナ側で/proc参照したりfreeコマンド打った場合はホストの分も見れる(こっちは隔離されてないので)
- Play with DockerというDockerのサンドボックス環境がある。1回の起動で4時間使えるhttps://labs.play-with-docker.com/
所感
- Play with Dockerめちゃ便利……Docker触ってみたいがためにDocker Desktop入れてたのは何だったんだ……?という気持ちになった……
- サンドボックス上でdocker pullしてきていろんなイメージをrunやinspectしていろいろ見てみながら資料の復習していくのがいいのかな……?
- コンテナで隔離されてるものと隔離されてないものを理解しないとややこしいことになりそう。
【参加記録】JAWS-UG CLI専門支部 #169R S3基礎 バージョニング #jawsug_cli
JAWS-UG CLI専門支部のハンズオンに参加しました。
以下個人的なまとめです。
イベントページ
ハンズオン資料
prototype-handson-cli.s3-website-ap-northeast-1.amazonaws.com
手順書わかりやすくてすごい~~~ってなるけどなんとこれ自動生成してるらしい、すごい。
バージョニングとは
ハンズオン
やったこと概要
- S3上にテキストファイルを配置して、バージョニングを有効化する。
- テキストファイルを変更して、複数バージョンが保存されていることを確認する。
- 特定バージョン・最新バージョンのオブジェクトを取得する。
- バージョンを指定、または全てのバージョンのオブジェクトを削除する。
つまづいた
- Cloud9、新しく環境作成するたびに新規EC2インスタンスにロールを付与しなければならないのに気づかなくて、権限でエラーになった。
(ユーザ・ロールの作成は前回やってるから……の意識でいた、EC2はCloud9の環境作成ごとに作られるので個別にロールの付与が必要。)
メモ(主にツイッターにリアルタイムで書いてたまとめ)
AWS CLI関連
- IAMポリシーを検索ときは検索パス(path-prefix)を指定したほうが速くなるらしい(と聞いたのでpath-prefixのオプションをコメントアウトしてみたけどそんなに変わった感じはしなかった……ハンズオン外でのIAMポリシー作ったりしてないし検索対象が少ないからそんな違いがないのか、その前にコメントアウトしないで実行してたからキャッシュかなんかに残ってて早いだけなのかどうなんだろう)
- 上IAMポリシーの検索パスは先頭・末尾の両方に「/」が必要。
- S3の操作にはS3ハイレベルコマンドとs3apiがあるが、s3apiコマンド使ったほうが厳密&応用が利き、s3のほうが利便性高い(ショートカットみたいな感じ)なのでどっち使うかは場合に応じてって感じらしい。
- バケットを消すときはすべてのオブジェクトを消す必要がある→バージョニングが有効な場合はすべてのバージョンのオブジェクトも消す必要がある。
- 複数バージョンが保存された状態でバージョニングを停止すると、画面上は見えないけどオブジェクトが残ったままになり、バケットが消せなくなる。
- オブジェクトの情報を取りたい時はhead-object、オブジェクト自体を取りたい時はget-objectを使用する。(オブジェクトのタイムスタンプがとりたいだけのような場合にget-object使うとその分だけダウンロードの料金がかかっちゃう。オブジェクトのサイズが大きいときは特に)
所感
変更履歴
・2020/10/10 Twitterにて指摘いただいた箇所の訂正