フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

2022-01-01から1年間の記事一覧

Seekable OCI (SOCI) をちょっと調べた

コンテナイメージを遅延読み込みする Seekable OCI の紹介 AWS が出してきた lazy loading に関する記事。 lazy loading は etargz あたりの話を前紹介したが、それとは異なるアプローチをしたのが SOCI とのこと。 blog.framinal.life 公式の説明によると s…

pflag がどのように args を取得しているのかを追う

Go の pflag パッケージってどうやって引数を処理してるんだろうが気になったので、ちょっと調べてみました。 引数を配列にして返すだけのコードを書いてみます。 package main import ( "fmt" flag "github.com/spf13/pflag" ) type Args struct { Paths []…

GitHub Pull Request で diff 結果が多すぎても表示させる

stackoverflow.com PR の末尾に .patch をつけるだけ https://github.com/JustinTulloss/zeromq.node/pull/47 だとしたら https://github.com/JustinTulloss/zeromq.node/pull/47.patch とする

The Graph は何を解決するのか?何が便利なのか?まとめてみた

はじめに&注意 対象読者 ブロックチェーンの課題とThe Graph が解決すること 背景 The Graph が解決すること The Graph の概念 The Graph のシステムアーキテクチャ データを貯める仕組み サブグラフ(SubGraph) とは クエリ関連の仕組み The Graph のインセ…

Google Professional Cloud Developer(PCD) に合格したので振り返り

スキル 勉強期間 勉強方法 感想 スキル インフラエンジニア歴 10年 得意領域:サーバ、k8s、セキュリティ、クラウド、IoTなど 持ってる資格 クラウド:AWS Solution Architect Professional / Google Cloud Architect Associate サーバ / NW:LPIC2 / ネスペ…

PodDisruptionBudget設定時にでる「Cannot evict pod as it would violate the pod's disruption budget.」の解消法

Pod に PodDisruptionBudget(PDB)設定時に以下のエラーがでました。 error when evicting pods/"nginx-deployment-bc88786fd-fq8wv" -n "pdb-test" (will retry after 5s): Cannot evict pod as it would violate the pod's disruption budget. この解消法に…

【Terraform】null_resourceでシーケンシャルなterraform リソース作成を実現する

Terraform 内のリソースにおいて depends_on という順序制御の仕組みがあります。しかし同じ module を複数呼び出す際に、シーケンシャルに実行したいケースがあるともいます。(私はありました) もちろん呼び出す module ごとに depends_on を書けば解決す…

格言でわかるITエンジニア「急がば回れ」

ことわざ・故事成語・慣用句などの格言が好きです。 人生の色んな場面で助けられてきました。 今回は 「急がば回れ」 という言葉をつかって、ITエンジニアの戒めを書いてみようと思います。 急がば回れとは - コトバンク ITエンジニアに例える 早く着こうと…

Solidity で同名の関数や変数名を継承したらどうなる?

変数と関数を上書きする 変数と関数を上書きする(多重継承) 変数と関数を上書きする(virtual利用) まとめ 変数と関数を上書きする override1 -> test override2 -> test の場合 override1.sol // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0.…

Solidity で無限ループするコントラクトを作ったらどうなる?

最初 payable にする GAS fee を 0 にする インクリメントにしてみる 1024で条件付してみる 面倒なのでネスト回数を指定できるようにした 結論(答え出ていない) 物は試しでやってみた。 最初 // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0…

argo-rolloutsが権限不足で起動しない人向け

argo-rollouts がこんな感じのログを発行することがあります。 error retrieving resource lock argo-rollouts/argo-rollouts-controller-lock: leases.coordination.k8s.io "argo-rollouts-controller-lock" is forbidden: User "system:serviceaccount:arg…

memory store for redis の maintenance window を Terraform で設定する

Terraform の google provider 4.9.0 から memory store for redis の maintenance window が設定できるようになりました。 複数の redis を構築する場合は、メンテナンスウインドウをすこしづつずらしたいと思うので工夫した Terraform コードを紹介します…

kubernetesで1TBのディスクをつくったら932GBになった話

小話です。 k8s で1TBのディスクを作りました。 kind: PersistentVolumeClaim apiVersion: v1 metadata: name: example-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 1T すると 932GB のボリュームが作られました。 NAME CAPACITY…

Helm パッケージをどうやって OCI 準拠のレジストリに格納しているのか?

OCI について Helm パッケージが OCI 準拠のレジストリに保存できる まとめ Helm OCI をつかった OCI 準拠レジストリへの保存をどのように実施しているのか調べてみました。 OCI について 様々なアーティファクト(Helm や ライブラリ や各種パッケージなど)…

Terraform 本体&provider&module の最新バージョンを取得するコマンド

Provider Registry Protocol | Terraform by HashiCorp terraform curl -sH "Accept: application/vnd.github.v3+json" \\n https://api.github.com/repos/hashicorp/terraform/releases/latest | jq -r ".name" v1.1.3 provider curl -sL 'https://registry…

provider alias を削除したときの挙動を確認する

確認したいこと module に対して alias 名を指定した provider を付与している場合に、これを削除するとどうなるのかを検証したい。 モチベーションとしては公式サイトを見ると provider を明示的に渡す必要が無いので、それにならいたい感じ。 Providers Wi…