AWSマネジメントコンソールの操作を記録しTerraformのコードを自動生成する
以下の記事通りに実行することで Terraformの定義ファイルを自動生成ができる。
以下のコンソール操作を記録して生成されたファイルを確認してみる。
- lamda関数作成
- lamda関数のトリガー設定
# https://www.terraform.io/downloads.html provider "aws" { region = "ap-northeast-1" } resource "aws_lambda_function" "lambda52dfa0c" { filename = "CHANGEME.zip" function_name = "Load-Inventory" handler = "lambda_function.lambda_handler" memory_size = 128 role = "arn:aws:iam::851143247004:role/Lambda-Load-Inventory-Role" runtime = "python3.7" timeout = 3 dead_letter_config { } tracing_config { mode = "PassThrough" } } resource "aws_lb_target_group_attachment" "s3control7bdbf95" { block_public_acls = true block_public_policy = true ignore_public_acls = true restrict_public_buckets = true } resource "aws_lambda_function" "lambdac0d1c63" { filename = "CHANGEME.zip" function_name = "Check-Stock" handler = "lambda_function.lambda_handler" memory_size = 128 role = "arn:aws:iam::851143247004:role/Lambda-Check-Stock-Role" runtime = "python3.7" timeout = 3 dead_letter_config { } tracing_config { mode = "PassThrough" } } resource "aws_lambda_event_source_mapping" "lambdadbc4b9d" { event_source_arn = "arn:aws:dynamodb:ap-northeast-1:851143247004:table/Inventory" function_name = "arn:aws:lambda:ap-northeast-1:851143247004:function:Check-Stock" enabled = true batch_size = 100 starting_position = "LATEST" }
コンソールでポチポチ操作した記録がterraformのyamlで自動生成したことがわかる。
CloudFrontキャッシュヒット時のedgeロケーション確認方法
確認したいファイルを取得し、ヘッダー情報を確認する。
curl -v https://d33up68w9jdm9b.cloudfront.net/Architecting6.8%E8%A3%9C%E8%B6%B3%E8%B3%87%E6%96%99.pdf ↪ * start date: May 26 00:00:00 2020 GMT * expire date: Apr 21 12:00:00 2021 GMT * subjectAltName: host "d33up68w9jdm9b.cloudfront.net" matched cert's "*.cloudfront.net" * issuer: C=US; O=DigiCert Inc; CN=DigiCert Global CA G2 * SSL certificate verify ok. * Using HTTP2, server supports multi-use * Connection state changed (HTTP/2 confirmed) * Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0 * Using Stream ID: 1 (easy handle 0x7f89e9000400) > GET /Architecting6.8%E8%A3%9C%E8%B6%B3%E8%B3%87%E6%96%99.pdf HTTP/2 > Host: d33up68w9jdm9b.cloudfront.net > User-Agent: curl/7.54.0 > Accept: */* > * Connection state changed (MAX_CONCURRENT_STREAMS updated)! < HTTP/2 200 < content-type: application/pdf < content-length: 28255699 < date: Wed, 17 Feb 2021 00:19:12 GMT < last-modified: Tue, 16 Feb 2021 23:32:59 GMT < etag: "f27025e14229a64b8cec0405a4016d38-2" < x-amz-server-side-encryption: AES256 < x-amz-version-id: COMgahF2ufwWvm_XFw4OMd1Rv15XR97y < accept-ranges: bytes < server: AmazonS3 < x-cache: Hit from cloudfront < via: 1.1 9997742b01c06cc7d58bb07736bc8a28.cloudfront.net (CloudFront) < x-amz-cf-pop: NRT12-C4 < x-amz-cf-id: wYXiq6XMRxDzeCUzF_oXznNcgxHgxmjc3Vi2Xq3Q6TTvAF4Zq-l8Iw== < age: 4939 < { [15848 bytes data] * 80 data bytes written { [80 bytes data] 100 26.9M 100 26.9M 0 0 7912k 0 0:00:03 0:00:03 --:--:-- 7910k * Connection #0 to host d33up68w9jdm9b.cloudfront.net left intact
x-cache
に「Hit from cloudfront」があればcloudfrontの経路を通りキャッシュヒットしている可能性が高い。
x-amz-cf-pop
は、キャッシュヒットしたedgeロケーションの識別子。
今回は、NRT12-C4
となっていて、「Narita International Airport」のedgeロケーションにあるとわかる。
EC2インスタンスタイプのアルファベット先頭(省略名)の覚え方
awsの方からEC2インスタンスタイプの先頭のアルファベットの覚え方を教えてもらったので忘れないうちにメモ。
文字列 | 覚え方(意味) |
---|---|
T | Typical workloads |
M | Multi-purpose |
C | Compute |
X | Extreme RAM |
R | Ram |
P | Performance graphics |
F | Field programmable arrays |
H | Hard disk drives |
I | I/O workloads |
D | Disk space (large amounts) |
G | Graphics-instansive |
Postgresの設定値反映方法(restart, reload, SET文実行時)
掲題の通りで、設定値変更したものの反映するにはどうすれば良いのか確認する方法を調べたのでそのメモ。
postgresに入り以下のコマンドを実行して、contextの内容を確認する。
postgres=# select name,setting,unit,context from pg_settings WHERE name = 'max_standby_streaming_delay'; name | setting | unit | context -----------------------------+---------+------+--------- max_standby_streaming_delay | 30000 | ms | sighup (1 row)
max_standby_streaming_delay
はcontext
の値が sighup
なので reload
が必要とわかる。
context
が postmaster
であれば、PostgreSQL起動時とわかる。
「素人でも株でお金持ちになる方法」を読んだ
2021年目標のお金に関する本を一冊読んだ。
付箋メモ
アーリーリタイア(早期退職)の多くは、毎日が退屈で張り合いがなく仕事に戻ってくる。
FIRE(Financial Independence and Retire Early)は、「経済的独立(お金から自由になる)を達成し、嫌な仕事はさっさとやめよう」という運動のこと。仕事をしなくなることではない。
金融商品の多くは、カモからぼったくることを目的に作られている。
お金持ち = (収入 - 支出) + (資産 × 運用利回り)
金融資本の運用で損する最大の原因は、手数料をぼったくられるため。
期待資産額(年齢×年収÷10)< 純資産(金融資産や不動産資産の時価総額から住宅ローンなどの負債を引いたもの)となっていれば、お金持ち。
収入の10 ~ 15% を貯蓄に回す倹約を続けていれば、誰でも億万長者になれる。
収入を増やすためには、
- 金融資本を金融市場に投資する
- 人的資本を労働市場に投資する
複利5%で10万円を預けると80年でほぼ一億円となる。
複利5%で毎月10万円積み立てると400ヶ月(約33年)で1億円に到達する。
人的資本を駆使してできる限りたくさん稼ぎ、その収入の中からできるだけ多くを投資・運用に回す。
株主である投資家の仕事は、損をする可能性を引き受けること。
株式の理論価格 = EPS(一株利益) ÷ 割引率
割引率 は、今のお金と未来のお金の価値を比べる時に使う値。不確実で時間がかかる将来のお金の方が価値が小さい。
割引率の計算は、1年後の100万円の値段が95万円なら5.3%になる。(95万円を年利5.3万円で預けたら1年後に100万円になる)
- 株の割引率は、8%くらい
- ベンチャー企業などのリスクが高い株の割引率は10%くらい
株式投資は、「将来の利益の予想を他の投資家がどう予想しているかを予想する」ゲーム。
「もっともコストの安い金融商品を選ぶ」のが資産運用の鉄則
=> iDeCoやNiSAなど国民が資産形成のために税優遇をしているもので投資すべき。
自分が理解できないものには手は出さない。
株式投資は大きく分けて
ROE(株式資本利益率)は、株主資本に対する当期純利益の比率。株主から預かった資本をどれだけ有効に使っているか示した数値。
PER(株価収益率)は、投資家からの会社に対する評価。
住宅ローンは、レバレッジをかけた不動産投資
- 住宅ローンを組みと資産ポートフォリオの殆どが借金になってしまう。
個人投資家が正しい資産三分法を実践するには、マイホームを買わないことが重要。株式:債権(金融資産):REIT = 1 : 1 : 1
トーシロ投資法は、手数料の安い証券会社でインデックスファンドを買うだけ。
積立NiSAの対象商品から選定するのが楽。
外貨建ての投資のもっとも重要な目的は、将来、日本円が大幅に減価したときのために、リスクヘッジをかけること。
ドルコスト平均法は、株価が高い時も低い時も定期的に一定額のインデックスファンドを購入し続けること。取得単価を期間中の平均値に収めることができる。
現代社会では、人的資本こそが富と幸福の源泉。
お金の限界効果は逓減する。お金は大事だけれど、必要以上のお金は対して意味がない。
ここまでで
経験上、よくわからないまま何かを始めると大体後悔するため 自分が理解できないものには手は出さない
ことを肝に命じておきたい。
以下、運用できるほどの能力に自分にないため手を出さない。
もし投資を行うならば、税優遇されているiDeCoや積立NiSAを利用し、手数料の低いインデックスファンドを購入できる投資信託を選定するのが良さそう。