自分のためだけにcustom controllerを書く

ふだんkopsで自分用のKubernetesクラスタを立ち上げているんだけど,個人用途なのでAutoScaleはしてほしくないのでClusterAutoscalerは入れていない.だけど,その状態でも可用性はできる限り下げたくない. というわけで,ちょっと自分でノードを管理するカ…

ManjaroのgrubがデュアルブートしているWindowsを認識しなくなった

症状 症状としては,アップデート後にgrubのOS選択画面が表示されなくなる. grubはGRUB_TIMEOUT によってタイムアウトが設定されているのだが,そもそもOSが一つしかない場合はgrub自体の画面が表示されない. 今回は,どうやらgrubがデュアルブートしてい…

ITエンジニアに対するスカウトに思うところ

WantedlyやLinkedInにユーザとして登録していると,スカウトをもらうことがある.最近はこれに近いサービスが多くあり,LAPRASやOffersなんかもある.findyは,スカウトというほどはっきりしたものではないが,一応興味通知が来る. サービスを通さなくても…

Kubernetes 1.20ではownerReferenceのnamespaceに気を使え

qiita.com ここの話です. github.com Issueの内容を熟知している方には余計なお世話です. いやーこんなの自分には関係ないだろうと思ってたら見事に当たりました. 問題になるケース 問題になるケースはおそらく以下の2パターン. OwnerとChildが別のnames…

kind local registryでCI内でテストを回す

Kubernetes関連のツールを作ったときなどに,E2Eテストをしたいことがある.実際にKubernetesクラスタに入れてみて,動かしてみてどうか,というのは開発環境でやるにしても結構手間だ. そういうときにkindはすごく便利なんだけど,これのlocal registryは…

Fediverse用のclient libraryを探す旅

この記事はFediverse (2) Advent Calendar 2020 の9日目です.大遅刻です. ちょうどこの週に引っ越しをすることになってしまって,「書く時間くらいあるやろー」と思ってたら,全然時間がなかったです.片付けて引っ越しして荷解きして,仕事できる状態まで…

fluentd-sidecar-injectorをhelmでインストールできるようにした

以前fluentd-sidecar-injectorというものを作った. h3poteto.hatenablog.com AdmissionWebhookを使って,任意のPodにログ転送用のfluentdをサイドカーとして差し込むものだ.これの目的は, 標準出力以外の,例えばファイルに吐き出すようなログはどうなる…

Swiftで書いていたiOSアプリをReactNativeで書き直した

以前書いていた h3poteto.hatenablog.com のiOSアプリをReactNativeで書き直した.なんのことはない,手持ちのスマートフォンをAndroidに変えたので,アプリもAndroid対応をする必要があっただけなのだが. github.com 流石にSwiftで作っていたUIをそっくり…

dap-modeでEmacs上でgoをデバッグする

goでもなんでもいいんだけれど,最近Emacsでプログラムを書くときはLSPのお世話になることが非常に多い.ここまでEmacsでいろいろとできると,デバッグもやりたくなってくる. LSPが流行るのと同時にDAPというのも流行っていて,LSPと同じようにエディタを問…

The hard wayしたKubernetesにArgoCDを入れる

先日書いた h3poteto.hatenablog.com のクラスタにArgoCDを入れるところまでやった.

Emacsのlsp-requestがtimeoutする

新しいMacにEmacsの設定を入れているときに,ほかはいつもどおり行ったのだが,goのlspだけがTimeoutするようになってしまった. 具体的には, lsp-request: Timeout while waiting for response. Method: textDocument/definition. というエラーが出る. ち…

Kubernetes the hard wayを自宅のPCでやってみる

古いPCが余っていて,こいつでKubernetesクラスタを作ろうと思って公式ガイドを久しぶりに見に行ったのだが,デプロイツールを使ってインストールする方法しか案内されていない. 昔俺がKubernetesをインストールしようとしたときは,まだkubeadmをここまで…

LAPRAS株式会社を退職する

8月31日をもってLAPRAS株式会社を退職する.8月7日が最終出社日だった.2018年4月1日入社だったので,2年5ヶ月いたことになる. 俺が入ったときはscoutyという社名だったけど,途中でLAPRASに変わった. 辞める時点でのLAPRAS SCORE lapras.com やってたこと…

MacのEmacsを複数起動する

LinuxでEmacsを使っていると,Emacsを起動するごとにプロセスが立ち上がり,別のウィンドウが生成される.これに対して,Macの場合,基本的に複数のプロセスが起動することはないし,ウィンドウも一つしか生成されないのが普通だ. これを複数起動できるよう…

ManjaroとWindows10をデュアルブート構成にした

ずっとLinux MintとWindows10のデュアルブートにしていたんだけど,Mint20が出たタイミングで,19 -> 20に上げるくらいなら別のOSに入れ替えようと思い立った.なので,このLinux MintをManjaroに入れ替えた.のでメモ.

fluentd自身のログのカウントをdatadogに送る

ログを集めるのにfluentdをよく使っているのだが,fluentd自身も実はログを吐いており,それをfluentdでハンドリングできる.できるというか,何もケアしてやらないと 2020-06-17 03:41:01 +0000 [warn]: #0 no patterns matched tag="fluent.warn" みたいな…

DaemonSetで立ち上げたDatadogにカスタムメトリクスを送りつける

helmでDatadogを入れることが多いんだけど,これで立ち上がるDogStatsDにアプリケーションからカスタムメトリクスを送りたいことがある. https://github.com/helm/charts/tree/73e2adc5d2250d02cb02ef4602b7eeda05e6aaf4/stable/datadog 現状のdatadogのcha…

kopsで構築したKubernetesクラスタでIRSAを使う

IAM Role for Service Account(IRSA)自体はEKS以外でも利用可能ということだったので,自前のkopsクラスタで構築してみた. ほぼ,こちらのお世話になっている. blog.hatappi.me ほぼ同じことをしているのだが,いかんせん複雑なので自分用の記録として残し…

ArgoCDをAWS EKS上で構築する

GitOpsがやりたくてArgoCDを導入しようと思ったんだけど,そもそもArgoCD自体はみんなどこで動かしてるんです? もちろんin clusterでも動くので,デプロイ対象のアプリケーションが乗っているKubernetesクラスタに構築しようと思いました. が,ArgoCDのチ…

AWS KMSで暗号化したSecretsをそのままapplyしたい!

KubernetesでGitOpsを実践しようと思うときに,Secretsをどうするかという問題は結構大きい.GitOpsをしていなかったとしても,Kubernetesのyamlファイルをgitにコミットしようと思うとき,Secretsをどうするかというのは結構大きな問題ではないだろうか. P…

WhalebirdはMisskeyサポートを開始します

Whalebird 4.0.0より,Misskeyをサポートします. Misskeyのドメインを入れていただければ,ログインできるようになってます. ただし,一部機能は使えない(かもしれない)のと,対応していない機能はあります. 対応予定 絵文字リアクション 引用Renote そ…

PodにfluentdのSidecarを自動でinjectする

本番でWebアプリケーションを運用していると,様々なログを取り扱う必要がある.これはKubernetesでも同じで,Kubernetes上で動かしているコンテナのログも,何かしらの方法で集約してどこかに蓄えておいて,分析とか検索とかをしたくなる. こういう用途で…

Slackの盛り上がりを検出するbotを作った

みなさんリモートワークしてますか? リモートワークのときのコミュニケーションツールはSlackですか?Chatworkですか?Discordですか? リモートワークをしていると,全体的にコミュニケーション量は減ると思います. オフィスにいれば,たとえSlackで会話…

仕事用のThinkpadにArchLinuxを入れた

今回は2台のPCにArchLinuxを入れた.1台は古いDELLで,UEFIですらないデスクトップPC.もう一台は仕事用のThinkpad. それぞれ詰まったところが少し違うので書き残しておく. なお,全体的な手順は,ArchLinuxのwikiが詳しいので,それに従うことにする. wi…

ElectronのアプリをAppStoreで配信する(2020年)

以前 h3poteto.hatenablog.com こういう記事を書いた. あれから1年半経ち,少し変わったことがあるので記事にしておく.

kubernetesとhelmで作る最強のオレオレheroku,yadockeri

この記事は LAPRAS Advent Calendar 2019 の18日目です. 会社でWebサービスを開発していると,検証したりレビューしたりするときに専用の環境が欲しくなる.それは開発しているブランチごとに独立した環境であって欲しいし,なんなら本番っぽいデータが入っ…

Pleromaはいいぞ

この記事は分散SNS Advent Calendar 2019 の9日目です. ふだんはMastodon/Pleromaのクライアントアプリケーションである,Whalebirdの話が多いけど,実は https://pleroma.io というPleromaサーバも運用しています. なお,この記事は,分散SNSのサーバを自…

kube2iamをIAM Role for Service Accountに載せ替えた

この記事は LAPRAS Advent Calendar 2019 の4日目です. AWS上にkubernetesクラスタを構築していると,Pod内のコンテナから,AWSのAPIを叩きたいことがある. そのためにはもちろんAWSの認証を通す必要があり,AWSのAccess Tokenとか,IAM Roleを使って認証…

Host-based routingしたALBにRoute53 Health Checkをかける

タイトルの件について結論から言っておくと,スマートな解決策は今のところない. 一応回避することはなんとなくできるのだが,全然スマートではない.今後のアップデートに期待したい.

typescriptでmemcachedのクライアントを作った

nodeからmemcachedを使いたくなったんだけど,あまり良いクライアントがない. というわけで自作した. github.com