もりはやメモφ(・ω・ )

ITとか読書感想文とか

小ネタ

awkの連想配列で同じキーが複数回出現するデータを集計する

ぱっとやりたかったので調べたところ、予想以上に簡単でした。シェル芸便利です。 やりたかったこと 以下のようなCSVファイルがあり、各キー(a,b,c,d)の合計を計算したいです。(実際のファイルはもっと大容量です) a,1 b,2 c,3 a,4 b,5 c,6 d,7 どうやった…

asdfでセットアップしたpythonでpipで入れたコマンドが使えない問題が解決しました

TL;DR pipで何かしらのツールをインストールした後、以下のコマンドを実行します。 asdf reshim python 答えは以下のサイトにありました。asdf公式ページをチラ見しても解決策がなかったので助かりました。 Thank you chriserin ! Get pip installed executa…

MinecraftへMODを導入する on Macbook

子供の依頼を受けて、Minecraft Java Edtion on MacbookへMODを導入したのでブログします。 使いたいMODの確認とダウンロード RTMに必要なNGTLibを導入 Forgeのダウンロード Forgeのインストール Forge起動からMODをセットアップ 起動エラーへの対策(Javaの…

Datadogの"Scheduled a Report"が定点観測にとても便利です

タイトルの通りです。いつからでしょうか気づいた時にはありましたよこの機能。 Datadogの素晴らしい機能の進化全般に言えることなんですが、新機能の追加の激しさにキャッチアップのしやすさが追いついていない気がします...(褒めてる) そんなわけで思わず…

AWSのマルチアカウントのWebコンソールをブラウザのシングルウィンドウで操作する on Firefox

Firefoxのadd-onを使って複数のAWSアカウントを1つのブラウザの1つのウィンドウ内で操作するメモです。 最初にまとめ 本記事では以下を紹介しています。Firefoxおよび関連Add-onを利用しました。 ブラウザはFirefoxを利用 Add-on Multi-Account Containers …

aws s3 presign でのファイル受け渡しが便利

aws s3 presign を使うと時間経過で失効するURLを生成できます。そのURLからは誰でもS3上の該当ファイル*1にアクセスが可能です。 この機能を利用することでトラブルシュートなどで普段AWSを利用しないユーザに対してファイルを共有したいケースでも簡単に対…

kubectlのkrewで利用できるpluginの有名どころを眺めてみた

いまさら kubectl krew を使い始めたので、有名どころを確認してみました。 Kubernetes(以後はk8s)は業務でEKSを利用していて、とはいえメインの担当ではないのでたまにトラブルシュートの支援で kubectl を打つことがある程度です。今となっては保持者も珍…

RDS PostgreSQLのメンテやVUP時にpsqlを回してDBのダウンタイムをログに残す

やりたいこと PostgreSQLのダウンタイムを雑に計測します。 背景 RDS PostgreSQLを運用していると以下のようなケースでメンテナンスが必要になります。 Hardware Maintenance DB engine version の Update メンテナンスを実施すると一定時間のDBへ接続できな…

M1 Mac で terraform init の platform エラーにハマって m1-terraform-provider-helper に助けられた

とあるサーバを作りかけで忘れていた Terraform の作業を再開したところ、以下のエラーが出てハマり、 m1-terraform-provider-helper で解消したメモです。 Provider registry.terraform.io/hashicorp/template v2.2.0 does not have a package available fo…

AzureのVMのパブリックIPを一括で取得するコマンド

AzureのVMのパブリックIPを一括で取得するコマンドが必要になったのでやりました。 背景:なぜそれが必要だったのか AWSのGuardDutyで指定する信頼するIPへAzureのVMのIPも登録しておきたいと考えたためです。自分たちの管理するサーバからの通常アクセスがG…

ラズパイとCO2センサで自室の二酸化炭素濃度を可視化した

以下のツイートの通り。 ラズパイとCO2センサ mh-z19 で自室の二酸化炭素濃度の計測グラフができました。Viva 可視化!!!(自室、狭いこともあって凄い勢いで濃度が上がります...)Thank you, Dr. Takeyuki Ueda https://t.co/uxTLAhdSZb pic.twitter.com/L…

GitHub ActionsでAnsibleを実行した時に秘密情報が記録されるのをsedでマスクする

Ansibleのpostgresql_userモジュールを使ってRDS PostgreSQLのユーザ管理を行なっています。 それをGitHub ActionsでCDしたいとなりましたが、Ansibleの標準出力にパスワードが含まれてしまうためマスクした話です。 docs.ansible.com 別の方法もあるよ(2021…

CodeDeployで謎のエラーがスクリプト実行時に出ると思ったらCRLFだった

タイトル通りです。以下のようなエラーをCodePiplineで呼び出してるCodeDeployから受けました。 codedeploy error Event details Error code ScriptFailed Script name ./codedeployhooks/aftinstall.sh Message Script at specified location: ./codedeploy…

Kubernetes試験CKAの予約がエラーとなり、サポートに解決してもらいました

タイトルの通りです。どこかで誰かの役に立つかもしれないのでメモしておきます。 起きたこと Linux Foundation Training Portal からCKAの予約をしようとしたところ、以下のエラーが表示されました。 Booking error on CKA You are not eligible to take th…

Terraform の for_reach を使って New Relic の Synthetics を定義する

タイトルのままです。 先日利用を始めた個人環境用の New Relic について、Infrastructure だけではなくて外形監視(Synthetics)も行うことにしました。 Terraform では New Relic のための Provider も用意されており、New Relic 側に丁寧なスタートのための…

個人用サーバのInfrastructure監視にNewRelicのFreeプランを使い始めました

New Relic - Infrastructure これまで個人用サーバの監視にMackerelのFreeプランを利用してきました。 なにしろFree(無料)ですから利用できるだけで感謝しています。が、データの保存期間が1日しかないことに少し物足りなさを感じていました。 一時期Rasphbe…

SSO&JIT Provisioningを有効にしたDatadogへ、招待中のユーザがログインできなかった話

タイトルの通りだったのですが、結構ハマったのでメモしておきます。 結論を書いておくと、すでに招待中( Invite Pending ) のユーザは SAML で JIT ログインできませんので一度削除しました、という話です。 前提 Datadogで Single Sign On With SAML の機…

brew upgrade 後、 fish で "fatal: not a git repository (or any of the parent directories): .git" がコマンドを打つたびに出た

オリンピックの開会式を見ながら、久しぶりに brew upgrade を実施したところ、エンターを打つたびに以下のエラーが出る様になり慌てました。 fatal: not a git repository (or any of the parent directories): .git brew upgrade 前までは以下の様なちょっ…

JTF2021登壇メモ&会社ブログも書いたよ

詳細は会社ブログへ!>< creators.oisix.co.jp ってだけだと微妙なので今回は意外とスムーズに資料も準備できたのでメモっておきます。 アウトラインを最初に作る 資料作りのポイントしてよく言われていることですが、いきなりスライド作成から入らないこ…

Datadog APM の Java 用トレーサー dd-java-agent.jar のバージョンチェック方法

タイトルの通り、 dd-java-agent.jar のバージョンを調べる方法です。 docs.datadoghq.com やり方は以下の通り。 unzip -p dd-java-agent.jar | head 結果は以下のようになります。 Implementation-Version: 0.78.0 から 0.78.0 であることがわかります。 un…

ansible-vault で vars ファイルを書く際に、一工夫してみた

ansible-vault を久しぶりに使って、ちょっと工夫してみたのでメモしておきます。*1 docs.ansible.com 機密情報を含むファイルをAnsibleで扱う場合は ansible-vault コマンドで暗号化した上でリポジトリにPushします。 ansible-vault コマンドは大きく以下の…

Ansibleの繰り返しは with_xxx より loop を使った方が良い時代になってた

タイトルの通りです。手癖で with_items でループ処理を書きかけましたが、ドキュメントのサンプルでより良い書き方がないかと読んだところ loop を推奨されていてびっくりしたのでメモです。 具体的には以下の文章がありました。 We added loop in Ansible …

Datadog の Glock の Parseで 文字列にしてしまって Generate Metrics ができなかったメモ

最初にまとめ 最初に結論を書いておくと Datadog Logs の Generate Metrics の機能を、Nginx の request_time に対して有効にしたかった Datadog Logs の Configuration の Pipelines の Grock Parser で regex(".*") を使っており、string(文字列)で認識さ…

GitHub Actions で Ansible の playbook を生成して特定のTagのEC2をターゲットに実行

GitHub Actions で Ansible の playbook を生成して特定のTagのEC2をターゲットに実行するYAMLを書いたので、備忘でメモしておきます。 本来であれば以下のようなオープンなActionsを利用すべきでしょう。(自前で頑張るのは極力避けておくのが良いはず) gi…

DatadogのCLIツール dogshell でサイトメンテ前後で Synthetic をミュートする

Datadogには、 dogshell と呼ばれるCLIツールがあります。 この dog コマンドを利用して特定のMonitorを mute -> unmute したメモです。 利用したのは dog 0.41.0 です。 docs.datadoghq.com Why 背景を簡単に書いておくと、ウェブサイトで夜間メンテを行う…

GitHub Actionsでサーバからファイルを差分があったときだけ更新して取得

以下の要求をみたすGitHub Actionsを書いたので備忘でメモ 取得したいファイルは各サーバのローカルに保存される ファイルをサーバ名ごとのディレクトリの下へ取得し、GitHubのプライベートリポジトリにプッシュ そのファイルは不定期に更新される 取得を定…

Terraform の random_id.xxx.b64 が random_id.xxx.b64_url になっていた

小ネタです。ある日、RDSと全く関係のないTerraformコードを追記したところ、意図しないところでCIがこけたので修正した話です。 最初に結論 Resources の random_id で b64 を使って以下のエラーが出てしまった場合、単純に b64 --> b64_url とすれば差分な…

Ansibleの fetch と copy で複数台サーバの特定ファイルを一括整理する

小ネタです。AnsibleでPlaybookを使わず、 ansible コマンドを使ってアドホックに以下をしました。 ファイルを一括収集 ファイルを一括配布 経緯としては以下です。 10台以上ある開発用サーバがあり、誰もが比較的自由に使えるのでカオスな状況になっている(…

mackerelでWindowsサーバでDNSが引けるかチェック監視をpowershellのワンライナーで追加する

普段はLinuxサーバばかり触っていますが、一部Windowsサーバもあります。 とある日にDNSが引けなくなる問題が発生し、WindowsサーバでDNSが引けるかのチェックを定期的に行いたくなり、mackerelのチェック監視で簡単に行なったのでメモしておきます。 (調べ…

Terraformのfor_eachを使ってhosts運用からRoute53 private hosted zone運用 へ切り替える

これは terraform Advent Calendar 2020 の12/7の記事です。 昨日(12/6)は entertvl さんの terraform-provider-esxi を使って自宅 ESXi サーバに VM を立てよう でした。ESXiへもTerraform使えるのか、、と初めて知りました! 明日(12/8)は transnano さん …