Go の pflag パッケージってどうやって引数を処理してるんだろうが気になったので、ちょっと調べてみました。 引数を配列にして返すだけのコードを書いてみます。 package main import ( "fmt" flag "github.com/spf13/pflag" ) type Args struct { Paths []…
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 のシステムアーキテクチャ データを貯める仕組み サブグラフ(SubGraph) とは クエリ関連の仕組み The Graph のインセ…
スキル 勉強期間 勉強方法 感想 スキル インフラエンジニア歴 10年 得意領域:サーバ、k8s、セキュリティ、クラウド、IoTなど 持ってる資格 クラウド:AWS Solution Architect Professional / Google Cloud Architect Associate サーバ / NW:LPIC2 / ネスペ…
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 内のリソースにおいて depends_on という順序制御の仕組みがあります。しかし同じ module を複数呼び出す際に、シーケンシャルに実行したいケースがあるともいます。(私はありました) もちろん呼び出す module ごとに depends_on を書けば解決す…
ことわざ・故事成語・慣用句などの格言が好きです。 人生の色んな場面で助けられてきました。 今回は 「急がば回れ」 という言葉をつかって、ITエンジニアの戒めを書いてみようと思います。 急がば回れとは - コトバンク ITエンジニアに例える 早く着こうと…
変数と関数を上書きする 変数と関数を上書きする(多重継承) 変数と関数を上書きする(virtual利用) まとめ 変数と関数を上書きする override1 -> test override2 -> test の場合 override1.sol // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0.…
最初 payable にする GAS fee を 0 にする インクリメントにしてみる 1024で条件付してみる 面倒なのでネスト回数を指定できるようにした 結論(答え出ていない) 物は試しでやってみた。 最初 // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0…
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…
Terraform の google provider 4.9.0 から memory store for redis の maintenance window が設定できるようになりました。 複数の redis を構築する場合は、メンテナンスウインドウをすこしづつずらしたいと思うので工夫した Terraform コードを紹介します…
小話です。 k8s で1TBのディスクを作りました。 kind: PersistentVolumeClaim apiVersion: v1 metadata: name: example-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 1T すると 932GB のボリュームが作られました。 NAME CAPACITY…
OCI について Helm パッケージが OCI 準拠のレジストリに保存できる まとめ Helm OCI をつかった OCI 準拠レジストリへの保存をどのように実施しているのか調べてみました。 OCI について 様々なアーティファクト(Helm や ライブラリ や各種パッケージなど)…
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…
確認したいこと module に対して alias 名を指定した provider を付与している場合に、これを削除するとどうなるのかを検証したい。 モチベーションとしては公式サイトを見ると provider を明示的に渡す必要が無いので、それにならいたい感じ。 Providers Wi…
シェルスクリプトの変数について、ちょっと試したことを載せます。 #!/bin/bash val1=val1 function test1() { echo $val1 echo $val2 echo $val3 } val2=val2 test1 val3=val3 function の前後に定義した値がどこまで取得できるのかを試してみました。 結果…
* 0917e6be 2021-12-09 自分 Merge remote-tracking branch 'xxx/main' into 自分のブランチ |\ | * 03234646 2021-12-09 GitHub Merge pull request #xxx | |\ | | * 2514bd4a 2021-12-09 GitHub Merge main into 別の人の作業用ブランチ | | |\ | | |/ | |…
GCP Cloud Monitoringを利用する際に前提としてわかっておくべき内容を、個人の備忘として残しておきます。適宜追加していくため不完全な内容になっていますがご了承ください。 メトリクスの種類 データの整形 実際にポリシーを読み解く 例1 CPU使用率 Terra…
kubernetes - referring a resource yaml from another directory in kustomization - Stack Overflow . ├── base │ ├── main │ │ ├── kustomization.yaml │ │ └── resource.yaml │ └── stuff │ ├── first.yaml │ └── kustomization.yaml └── cluster └── ku…
GCP上のkube-dnsはその裏側にdnsmasqとskydnsが存在しています。 その二つの違いはRedHatの資料に詳しく書かれており OpenShiftの内部DNSについて語る...のではなく、dnsmasqとgdbで遊ぶ話 - 赤帽エンジニアブログ 上記のように紹介されています。GKEだと少…
cpu_stateでどうにかフィルタするのをTerraformに設定したくて、どうにか辿り着いたTips。 下記のサイトにまとまっている情報をみる。 Legacy Monitoring and Logging agent metrics | Google Cloud 太文字のものはmetric.label.\"cpu_state\"= \"idle\""の…
Bazelでコンテナイメージを作成しPushする際に、まとめてPushする方法です。 distroless/BUILD at main · GoogleContainerTools/distroless · GitHub を参考にしました。 事前準備 git clone https://github.com/bazelbuild/examples cd examples/cpp-tutori…
ArgoCD Notificationでmanifestの適用後の失敗検知をしていると、10分経たないと通知がされません。これを短くする方法です。 方法 Statefulset / DaemonSetの場合はExceededの処理がArgoCDに見当たらなかったのでその状態にならなさそう。 Deploymentの場合…
問題 HPA を使うとOut of Sync状態のままになる spec: maxReplicas: 30 metrics: - resource: name: cpu target: averageUtilization: 70 type: Utilization type: Resource - resource: name: memory target: averageUtilization: 70 type: Utilization typ…
GoとかPythonでOpenCensusでいちいち書くのが煩わしすぎるので、手軽にシェルでstackdriverでメトリクスを送信する方法です。 元ネタ stackoverflow.com /home/testuser/test.sh duした値を出力するだけです。 #!/bin/bash INTERVAL=10 HOSTNAME=test FOLDER…
gcp_compute を使ってAnsibleのグループを作成するTipsを載せておきます。 GCEの操作 GCEにラベルを付与する(コンソールでもコマンドでも) ansible = true env = development or env = stg or env = production ラベルはなんでもよいし、値もなんでも良い…
IAP越しのSSHを行ってAnsibleを操作する場合、ネットを調べると以下の二つが存在するようです。 wrapper shellを使用する iap-tunnelコマンドをProxyCommandとして追加してSSHをする 最初1を使っていたのですがあまりにも遅すぎてストレスが溜まっていたので…
昔ふとした疑問からこんな記事を書きました。 qiita.com そして最近QUICの勉強をしていたら「QUICではLTEとWifiを切り替えても通信が継続できる」という記載があったのでちょっと調べてみることにしました。 5-tuple そもそもTCP/UDP通信は5-tupleと呼ばれる…
GCPにおけるIAMの構造 メンバー ユーザ / グループ / サービスアカウント / ドメイン ロール(役割) GCPのリソースに対する権限(例:GCSの管理者権限 / Projectの閲覧権限 など) IAMポリシー ロールバインディングという名前で 「どのメンバーにどのロール…
GCPにもAWSにも外部IPを持たないインスタンスを作ることができます。 AWSの場合はプライベートサブネットで作成したEC2インスタンスへアクセスをさせるためには、ALBやNLBなどのロードバランサーを使うかプロキシサーバを経由して外部アクセスを許容する方法…