dshimizu/blog

アルファ版

Tech

ISUCON 10 予選に参加して惨敗した

ISUCON 10 予選に参加して惨敗した。今回も自分はインフラ担当だった。

Serverless Framework で Context object not passed to lambda handler

Serverless Framewokr で Python の Lambda 関数を作成していたら以下のエラーが発生した。 "errorMessage": "Bad handler 'lambda_handler': not enough values to unpack (expected 2, got 1)" "errorType": "Runtime.MalformedHandlerName"

AWSの請求情報をSlackに通知するLambda関数をGolangで書いてみた

Go を勉強しているので、AWSの請求情報をSlackに通知するLambda関数を Go で書いてみた。

DockerでPythonの実行環境を作る

DockerでPythonの実行環境を構築してみる。 Pythonのアプリケーションを動かすというよりは、Dockerコンテナ内でPythonを使ってちょっとしたスクリプトとかを作ったり動かせるようにする、という程度のものを作る。 類似の記事は色々あると思うが自分用メモ…

Control groups、Namespace、Capabilitiesを使ってコンテナを作って実行してみる

コンテナの仕組みについての学習の一貫で、以下の記事を読みながらControl groups、Namespace、Capabilitiesを使ってコンテナを作って動かしてみる。 コンテナ技術入門 - 仮想化との違いを知り、要素技術を触って学ぼう - エンジニアHub|若手Webエンジニア…

Terraformでパスワードやシークレットキーを設定したIAMユーザーを作成する

Terraformでパスワードを設定したIAMユーザーを作成するのにPGP公開鍵が必要だったのでやり方のメモ。 流れは以下のような形だと思う。 PGPの公開鍵と秘密鍵のペアを作成する Terraformのaws_iam_user_login_profileやaws_iam_access_keyのResourceのpgp_key…

DockerでGoの実行環境を構築する

DockerでGoの実行環境を構築してみる。 Goのアプリケーションを動かすというよりは、DockerでGoのちょっとしたスクリプトを作って動かせる、という程度のものを作る。

AWS CLI v2 のDockerイメージを使ってみる

AWS CLI v2 のDockerイメージがAWSから公開された。 AWS CLI v2 Docker image | AWS Developer Blog

GoのTimeパッケージの日時フォーマットを指定するときは「2006年1月2日15時04分05秒」の日時を利用する必要があった

GoでTimeパッケージを使って日時のフォーマットを変更するときの形式は決まっていたのでメモ書き。

AWS SAM CLIをDockerで利用してみる

AWS SAM CLIをDockerで使えるようにしてみる。

AWS SDK for Goで設定ファイルと認証情報ファイルの情報を参照する

AWS SDK for Goを使ってAWSの設定ファイルと認証情報ファイルのçクレデンシャル情報を利用する方法のメモ。

kubeadmで作ったK8sクラスター上にデプロイしたNginx Ingress Controllerでロードバランスを試した

kubeadmで作ったK8sクラスター上にデプロイしたNginx Ingress Controllerでロードバランスを試した。

kubeadmで作ったK8sクラスターにMetalLBとNginx Ingress Controllerを導入した手順メモ

kubeadmで作ったKubernatesクラスターにMetalLBとNginx Ingress Controllerを導入したのでその時にやった手順をメモしておく。 MetalLBとNginx Ingress ControllerはKubernates内部でのロードバランシングに利用する。前者はL4、後者はL7レベルのロードバラ…

kubeadmで作ったK8sのWorkerノードがNotReadyになったのでReadyに復旧させた時のメモ

kubeadmで作ったk8sクラスタのWorkerノードの1つが障害停止してNotReady状態となったので復旧時の手順をメモしておく。

Amazon Lightsail上のログ(Nginxのアクセスログ)をCloudWatch Logsへ送る設定

Amazon Lightsailで動かしているAmazon Linuxの中にあるログをCloudWatch Logsへ送りたい、と思って調べたらやれたのでメモしておく。

kubeadmを使ってさくらのVPS×3台でマスター1台、ノード2台のk8sクラスターを作成してみた

TL;DR kubeadmを使ってさくらのVPS3台でのk8sシングルマスタークラスターを作成してみたのでメモ書き。 基本的にドキュメントに書かれているコマンドをベースにすればOKだが、少し違うのは、ドキュメントではマスター兼ワーカーが1台、ノード1台の2台クラス…

GitHub Actionsを使ってPullReqをトリガーにしてTerraform Planを実行させてみた

GitHub Actionsが11/13に正式リリースされた。 Actions | GitHub GitHub Actionsについて - GitHub ヘルプ 参加はしていないけど Terraform meetup tokyo #3 で @dehio3 様が以下の発表をされていたそうで、自分は今までローカルでPlan/Applyをやっていたの…

Terraform Cloudを使ってみた

Terraform Cloud × GitHubを試した Terraform meetup tokyo #2へ行ったときにTerraform CloudをおすすめされていたのでGitHubと連携させて試した。 Terraform Cloud

Allowed memory size of xxxx bytes exhausted (tried to allocate xxxx bytes)が発生したので、PHPのメモリはどこで管理されているものなのか調べた

php-fpmを動かしていて以下のようなエラーが出た時には、memory_limit 以上にメモリを割り当てようとしているためだと思う。 Allowed memory size of xxxx bytes exhausted (tried to allocate xxxx bytes) ... ここでpsでプロセスのメモリ使用状態を見た時…

Terraform v0.12がリリースされたのでAWS Providerをv0.11.14 からアップグレードした時の備忘録

Terraform v0.l2がリリースされたのでAWS Providerをv0.11.14 からアップグレードした。 基本的に下記オフィシャルドキュメントの通りで、アップグレードには v0.12 に付属されているヘルパーコマンドを使う。 その時の手順を記載する。 Upgrading to Terraf…

S3ウェブホスティングをAWS CodePipelineを使ってGitHubにpushした時にデプロイする

S3ウェブホスティングのデプロイを手動でやっていたけど、AWS CodePipelineを利用してGitHub上にコードをPushした時にデプロイされるようにした。 公式ドキュメントのチュートリアルをベースにやればだいたい良いけど自分用にメモとして記載しておく。

Terraform meetup tokyo #2に行ってきた

Terraform meetup tokyo #2に行ってきた。 Terraform meetup tokyo#2 - connpass

今更Nginxのlocationディレクティブについてのメモ

Nginxのlocationディレクティブを頻繁にいじることがなく、いざ設定しようとするとゴタゴタしてしまうので基本的な書き方の一部をメモがてら書いておく。

ISUCON9予選振り返り

ISUCON9に参加したので振り返りとして書いておく。

Github上でLambda関数のコードのPull Reqをマージした時に、CodeBuildを使ってビルド(zipをs3へ配置)する

GithubでマージされたLambda関数を、CodeBuildを使ってビルド...と言うべきかzipをs3へ配置してみる。

AWS CLIを使ってPythonのAWS Lambda関数を更新する

とりあえずaws cliを使ってPythonのAWS Lambda関数を更新するやり方がドキュメントにあったのでメモ。 Python の AWS Lambda デプロイパッケージ - AWS Lambda

「[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識」を読んだ

最近Linuxを触る機会が減ってきているけど、Linuxについてきちんと勉強していないなぁと思い、改めてきちんと勉強しようと思い始めた。 Linuxカーネルに関する本はたくさんあるけどどれも分厚くて、いくつか読んではいるけどどれも断片的にしか読んでおらず…

Amazon ElastiCache for Redis の構成要素とクラスターモード有効と無効の違いに関するメモ

はじめに ElastiCache(Redis)をクラスターモードの有効と無効があるが、どっちを選んでもElastiCacheとしてはクラスターとなり、Redisの経験も浅い自分としてはよくわからなかったので調べた。

ネストされたCFnテンプレートを作ってみる

CFnのテンプレートを1つにしておくと可読性が悪くなったりなどはよく言われているのでNested Stackを使って分割するサンプルを書いてみた。

Linux系OSの状態を確認するコマンドたち

Linux系OSでのシステムの状態を確認する際に使うコマンドをメモがてら記載しておく。