from 30

30歳からwebエンジニアになったけど、思ったよりも苦しいので、その苦闘の記録をば

CDK Pipelines(Python)を使ってマルチアカウントへデプロイできるパイプラインを作成する

0. パイプラインをつくって試行回数を増やしたい さて、マルチアカウントでSSOを設定する方法について前回の記事でまとめました。 今度はマルチアカウントにデプロイするパイプラインを作りたいと思います。 数パターンを考えましたが、 devアカウント、stg…

複数アカウントの管理を簡略化するためAWS SSOを使用する

1. 最初に 個人の学習目的のためにWebアプリケーションを作成することを決意した。 せっかくなのでマルチアカウントでの運用を試してみたいと思う。 目指すのは以下のかたちです。 黒い四角形はアカウント名 緑色の枠はOU Adminアカウント Organizations, SS…

AWS Certified Data Analytics Specialityに合格しました

[1] 結果 AWS Certified Data Analytics Specialityに合格しました。 793点(合格点750点 / 満点1000点 )とでした。 今回は「余裕!」とは行かなかったです。 [2] 試験対策としてやったこと 公式ガイド等の確認 ここです そもそもデータアナリティクスとは …

AWS Certified Security Specialityに合格しました

[1] 結果 AWS Certified Security Specialityに合格しました。 834点(合格点750点 / 満点1000点 )とでした。 全ての問題を時終わるのに2時間00分。 見直し時間は60分ほどでした。 [2] 試験対策 (1) AWS公式トレーニング AWSの公式トレーニングが日本語で公…

2021年の目標

[1] 2020年まとめ (1) 仕事関連 1 ~ 3月でAngel Dojo Project参加して、ベストアーキテクト賞を受賞 1月: 不動産系ツール開発プロジェクト(SAM, Lambda(node.js), StepFunctions, CloudWatchEvents, S3) 2 ~ 3月: コーポレートサイトのサーバレス化とIPv6対…

今更ながらDockerについて整理してみる[docker-compose / ネットワーク]

概要 前回・前々回でmac上での操作、Dockerfileの作り方についてまとめた。 Dockerfileもとにdocker buildでコンテナイメージを作成して、docker runコマンドでコンテナを立ち上げているが、docker runコマンドでは、ボリュームやポート番号やユーザーなどな…

今更ながらDockerについて整理してみる[Dockerfile]

経緯 手元のmacで動かすコマンド例については前回まとめました。 で、そこの最後でコンテナの中で実行したlibraryやファイルの操作をdocker commitコマンドでイメージにする方法を記載した。 でも、それだとDockerイメージの構成要素がわからなくなってしま…

今更ながらDockerについて整理してみる[コマンド・基礎]

経緯 今年のre:inventもまあ盛り沢山な内容ですが、例に漏れずサーバレス関連も非常にたくさんのアップデートがあります。 中でも比較的注目されているのが、Lambdaでコンテナイメージがサポートされたことでしょうか。 実行時間やメモリなどはそのままなの…

rasberry piでdocker を使えるようにする

経緯 最近dockerの学習をしている。 --network hostなdocker runを試そうとしているが、 どうやらdocker on macとlinuxだと挙動が違う模様 linuxで試そうと思ったので、兼ねてからlinuxサーバーとして使っているラズパイにdockerを落とそうというわけである…

PytestでStepInやbreakpointを使う

経緯 普段の開発ではpytestを使用して、TDDを行っている。 pythonのテストといえば、python標準のunittestもあるが、テスト結果の表示や制御のしやすさからpytestを選択する人が周りでは多いように思う。 で、pytestを使用しているが、今のプロジェクトではc…

Cloud Watch Logs Insightsの簡単な使い方

経緯 構成図 顧客のSQL Server on RDSのデータを変換して DynamoDBに入れ直すということをしている。 大体上記のようなアーキテクチャでやっており。 cronジョブでLambdaを5分おきに起動。 RDSの最新の変更をクエリ DynamoDBに入るように変換 DynamoDBからは…

Chromeでユーザーを分けてマルチアカウント切替を管理する

経緯 個人の開発とは違って、仕事でAWSを使う時は複数アカウント管理が必須だと思います。 Servereless Daysなんかでマイクロサービスの話を聞くと、マイクロサービスごとにアカウント区切るのがいいみたいな意見も聞きます。 うちの場合は、ステージごとに…

Linuxサーバーとしてラズパイを使ってみる。

経緯 普段の仕事ではLambdaを書いたり、CI/CDを構築したりって感じのことをやっています。 特にCodeBuildでbuildspec.yamlを書くときに感じるのですが、もう少しLinuxについての知識がほしいなと思います。 ということで、ラズパイをLinuxマシンとして使って…

gitでbranch迷子になったcommitをbranchに紐づける。

経緯 最近、新入りの派遣さんのサポートが多い。 自分のタスクに久々に戻ったら、なんだか前回作業が中途半端な状態で終わっていたみたいで、テストが通らない。。。 "TEMP"というコミットメッセージになっているし、一つ戻ってテスト通るかみてみるか。。。…

ubuntu on dockerでC言語のbuildができるように環境整備

経緯 アルゴリズムとデータ構造を学ぶために、C/C++をいじっていたら、 もっと低いレイヤーまで見て行って、最終的に0と1の世界まで実感できるようになりたいと考えるようになった。(絵に描いたような脱線である) 私の普段の仕事において、プログラムを動…

elasticsearchのdateでepoch_secondを使用する

経緯 普段はpythonを使用している。 日付関連は基本的にtimestampを使用している。 pythonのdatetimeモジュールにおけるtimestampは秒単位(10桁)になっている。 一方でelasticsearchのtype: dateはmillisecになっている。 elasticsearchにindexするときに…

【小ネタ】エディタで正規表現をつかって一括でcamelCaseをsnake_caseに変換する

経緯 顧客のRDBをDynamoDBに入るようにモデリングしなおして、データマイグレーションを行っている。 当社のDBのattributeはスネークケース(単語と単語をアンダースコアで結ぶ。例:snake_case)を使用しているが、顧客のDBやソースコードはキャメルケース(…

C++をやってみる

経緯 『プログラマーが知るべき97のこと』を読んでいて、他のパラダイムの言語を習得することで、元の言語の理解も深まる旨記載があった。 目下、目の前の仕事を楽にするにはもっとコーディングがうまくなる必要があると考えている。 コーディングが上手いっ…

Elasticserachでreindexを使ってみる

経緯 Elasticsearhのmappingsは追加はできても変更ができない。 変更したい場合は、indexを削除する必要がある。 でも、結構間違えたりするのでreindexでデータを退避したので その方法を書いておく 流れ reindexする元のsettingsとmappingsを使用して、rein…

Elasticsearchの親子関係のまとめ

概要 現在作成しているシステムにおいて、DBはDynamoDBを採用している。 DynamoDBのLSI, GSIの取り回しだけでは検索に限界があるので、 DynamoDBStream経由でElasticsearchにインデックスして、 Elasticesearchに検索を任せている。 Elasticsearchのドキュメ…

AWS Certified DevOps Engineer Professionalに合格しました

結果 AWS Certified DevOps Engineer Professionalに合格しました。 899点(合格点750点 / 満点1000点 )とでした。 今まで受けた他の認定も含めて最高点でした。 全ての問題を時終わるのに2時間35分。 見直し時間は25分ほどでした。 実務との関連 1. CI/CD…

DatapipelineでDynamoDBを別アカウントのDynamoDBへデータ移行する

別アカウントへDynamoDBのデータをコピーしたい MySQLだとdumpしたデータをexportしたり、RDSならスナップショット機能を使って、 別アカウントへのデータの移行は可能だと思います。 DynamoDBの場合はData Pipelineを使用するのがセオリーのようですが、 ち…

【エラー対処】"graphql/error/GraphQLError" has no exported member 'GraphQLError'. について

状況 aws/codebuild/standard:4.0イメージ で実施されているCodeBuild上で、 $ npm run build した際に、以下のエラーが発生した。 macのlocal上では再現できず解決に手間取った。 [fatal] Nuxt build error ERROR in node_modules/@aws-amplify/api-graphql…

AWS Certified Solution Architect Professionalに合格しました

結果 AWS Certified Solution Architect Professionalに合格しました。 761点(合格点750点 / 満点1000点 )とでした。 あと1問間違えていたら落ちていました。。。 とはいえ合格は合格。一番効率的に合格したといえなくもないのでよしとします。 全ての問題…