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

2023年買ってよかったもの

2023年に買ってよかったものを書いておきます。 2023年も色々細かい買い物してたんですが、かなり印象に残ってるのは1つしかないので、それを書いておきます。 Cleer Arc 2 イヤホンは外耳炎になりがちなのでヘッドホンを使っていたんですが、これに切り替え…

SwiftDataで動的なキーワード検索を実装する

最近は自分向けのPDFリーダーアプリを開発しています。 このアプリではSwiftDataを使って読書履歴をモデル化して管理しているのですが、これを踏まえてちょっと自分のメモがてらにTODOアプリを例にしたメモを残しておきます。 Swiftを触り始めて3日目ぐらい…

Argo CD, Helm, Renovateを使ったコンポーネントの継続的アップデート

皆さん、こんにちは! この記事はSRE Advent Calendar 2023の16日目の記事になります。 今回の話は、k8sクラスタでのコンポーネントの継続的アップデートを行うための工夫についての紹介です。 SREとして信頼性や安定性を担保するためにアップデートの話は必…

おうちクラスタにCDIをデプロイしてUbuntuを動かす

前回の続きでContainerized Data Importer(以下、CDI)を導入してUbuntuの仮想マシンを動かします。 khasegawa.hatenablog.com マニフェストを用意する マニフェストの取得コマンドは省きしますが、マニフェストをkustomization.yamlから参照するように定義…

おうちクラスタにKubeVirtをデプロイする

おうちクラスタにKubeVirtをデプロイした時の話を書いておきます。 実際に変更したコミットは以下にあるので参考にしてください。 github.com マニフェストを用意する 公式のInstalling KubeVirt on Kubernetesを元に必要なファイルを書いていきます。 まず…

Rails 7.0.8でdatetimeなカラムの精度が修正された件について

はじめに 少し前にRails 7.0.8がリリースされましたが、その前のバージョンである7.0.7.2でマイグレーションした結果のdb/schema.rbが異なるということについて質問されたので、金曜夜に解説した内容を文章にまとめたものになります。 前提 Rails 7.0.7.2 ->…

Login with NotionをSinatraで実装する 

主に個人向けで作っているサービスでLogin with Notionを実装する必要があったので、その時の動作検証を行った時の作業ログです。 Login with Notionと仰々しく言っていますが、端的に言えばNotionと連携するためにOAuthを利用するだけの話です。 Public Int…

SRE NEXT 参加

先週末に開催されたSRE NEXTに参加してきました。 sre-next.dev 個人スポンサーとして参加していたのでノベルティもいただきました。 自宅に着いたのでSRE NEXTのステンレスマグで、会場で購入した脇屋珈琲のSRE NEXTブレンドを飲んでいます美味しい pic.twi…

おうちクラスタのcloudflaredをDaemonSetに変更する

おうちクラスタのcloudflaredはDeploymentとしてデプロイしていましたが、 DaemonSetとしてデプロイするように変更しました。 Why? これといった強い理由はないですが、おうちクラスタの特定のノードにcloudfalredのPodが偏ってデプロイされて、 かつそのノ…

Argo CDでCalicoをデプロイしているとmetadata.annotations: Too longエラーが出る

はじめに TL; DR Argo CDのApplicatoinのsyncOptionsにServerSideApply=trueを追加すれば良い github.com 問題 スクショを取っていなくて申し訳ないんですが、CalicoのHelm Chartをアップデートしたところ以下のようなエラーが出るようになりました。 Custom…

ルーターの設定ファイルをArgo WorkflowsでS3にバックアップする方法

はじめに 今回は、自宅で使用しているルーターの設定ファイルをArgo Workflowsを使ってS3にバックアップする方法について説明します。 Argo Workflowsとは Argo Workflowsは、ワークフローエンジンの1つであり、コンテナベースのジョブオーケストレーション…

revealerというデバッグ用Webアプリを公開しました

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに revealerというHTTPのリクエストデータを表示するWebアプリを公開しました。 revealerとは revealerは、アクセス元のIPアド…

1周回って個人のタスク管理はGoogle Tasksでもいいかもしれない

昔から自分のタスク管理方法について2,3年に1度見直していますが、1周回ってGoogle Tasksでいいのかもしれないと思い始めてきた。 以下の記事のように必要な機能を洗い出して、その機能が担保できるものを使ってきている。 khasegawa.hatenablog.com 現在はN…

OpenAI API を使ったChrome 拡張「br1efly」の紹介

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに 既に多くの方々が似たChrome拡張を作っているため何番煎じかは分かりませんが、Chrome拡張を作成しました。 今回は、自身の…

RTX1300の設定をAnsibleで管理する

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに この記事では、YAMAHA RTX1300ルーターをAnsibleでプロビジョニングする方法について紹介します。 家で管理している各種デバ…

Pixel 7aを購入

Google I/Oで発表されたPixel 7aを購入しました。 元々はPixel 5aを使っていたのですが、スマホを触り始めてから初めて画面をバキバキに割ってしまったこともあり、購入することに決めました。 他にもTensor G2チップが使われていることもあり、モバイルでの…

Renovateをローカルデバッグする

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに Renovateを使用している場合、設定が正しく設定されているかどうかを確認することが重要です。 この記事では、ローカル環境…

設定をバックアップするCron Workflowについて紹介する

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに 最近、私はRTX1300の設定ファイルを定期的にバックアップするためにArgo WorkflowsのCRDであるCron Workflowを使って指定さ…

home-appsをhomeに移行した

直近のブログでも出てきたcorrupt952/home-appsをアーカイブして、corrupt952/homeに移行しました。 github.com github.com なぜ移行したのか 元々、自宅用のマシンセットアップように書いていたAnsibleのPlaybookがあり、レポが分散していると管理が面倒だ…

CoreDNSを削除してしまったのでおうちクラスタをリセットした話

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに この記事では、おうちクラスタでの実体験をもとに、CoreDNSを削除してしまった際のリセット方法についてまとめます。 CoreDN…

おうちクラスタ向けにNFSのStorage Classを設定する

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに この記事では、KubernetesでのNFSクライアントの設定方法について説明します。 NFSサーバのセットアップ まず、NFSサーバを…

Cloudflare Tunnelを使った自宅ネットワークへのアクセス方法の変更

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに 最近、Cloudflare Tunnelを使って自宅ネットワークへのアクセス方法を変更しました。 今回はその方法についてご紹介します。…

Argo CDのMultiple sourcesを試してみる

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに Argo CDにはMultiple sourcesという機能があります。 この機能はベータ版ですが、Helm ChartやKustomizeなどの異なるソース…

RTX1300でSTATUS LEDがREDになってた

この記事を投稿する数十分前(深夜)にRTX1300でSTATUS LEDがREDになったという通知がきました。 自宅のルータからの通知かつ、特にネットワークに繋がらないということもなかったので無視しようかと思っていましたが、少しだけ作業したら直りました。 原因…

Argo CDで参照しているHelm ChartをRenovateで自動アップデートする その2

昨日、Argo CDで参照しているHelm ChartをRenovateで自動アップデートする という記事を公開しました。 khasegawa.hatenablog.com これはregexManagersを使って指定したGitHubレポのReleaseからバージョン情報を取得する方法でしたが、 今回はもっと楽に簡単…

Argo CDで参照しているHelm ChartをRenovateで自動アップデートする その1

ここで紹介している方法よりも、もっと楽に定義するには以下の記事を読んでください。 khasegawa.hatenablog.com 注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 はじめに 自宅k8sク…

dev.toで記事を書く時に参考にしているリンク

dev.toで記事を書く時に参考にしているリンクをメモがてらに載せます。 リンク Editor Guide dev.toで記事を書くならここを読んだほうがいい。 dev.to Ways to enhance your DEV posts! Useful embeds. 色んなWebサービスの埋め込みをするときのタグの書き方…

理研の量子コンピューターでクラファンやってる

理化学研究所が量子コンピューターの開発のサポーターを、READYFORで募集しているようです。 www.riken.jp readyfor.jp 微力ながら私も支援させていただきました。 物欲自体はあまりないため、本来は返礼品がないサポートで良かったのですが、少なくとも私が…

AIサービスとこれから

注意事項 この記事は、Notion AIに対して 問題と解決策の概要 例示用のコード を渡して生成した実験的な記事になります。 また、この記事は直近のAI関連の動向について簡単にまとめ、自分の周りへ共有していたスライドを抜粋したものです。 はじめに ここ数…

TimerのBookmarklet

特に書くこともないですが、先週から使い始めているTimerのBookmarkletを公開しました。 clock.zuki.dev 以下のサイトにいくつかのパターンがあり、それぞれで少しだけ挙動を変更しています。 音声ファイルを配信するのが面倒だったので、AudioContextを使っ…