ノート PC のようにサインイン、鍵のように保護
スマートフォン上で aws、gcloud、az のバイナリは動きません。Ichor が exec プラグインの役割を担い、サインインはデバイス上に留まって自動で更新されます。トークンと鍵は StrongBox または Secure Enclave に保護され、アプリロックで守られます。
「このクラスターはどのアカウントを使っている?」→ ホームに表示されます。
Ichor は Talos Linux のために作られ、今も talosctl と同じクライアントで Talos と通信します。現在はあらゆる kubeconfig(EKS、GKE、AKS、DigitalOcean、Rancher、Sidero Omni、OIDC サインイン)も開けます。クラスターへのインストールも、間に入る仲介サーバーも不要です。オペレーターが未対応なら、YAML ファイル 1 つのプラグインで画面を追加できます。
手元にクラスターがない場合は、最初の画面でデモを試すをタップしてください。5個のサンプルノード、ライブグラフとログを完全オフラインで体験できます。無料のオープンソース(Apache-2.0)で、デフォルトは読み取り専用です。
Sidero 公式の Go ライブラリ machinery で構築。コンテキスト、mTLS、エンドポイントからノードへのプロキシは、ノート PC とまったく同じように動作します。
kubeconfig のクラスターは、そのユーザーと同じ方法でサインインします:IAM、Entra ID、Google サービスアカウント、ブラウザでの OIDC。できる操作は RBAC で決まり、アプリはタップする前にそれを示します。
Talos かどうかに関係なく、スマートフォン自体がバックグラウンドですべてのクラスターをチェックし、ノード、etcd、バックアップに異常があれば通知します。
Apache-2.0。アカウント不要、広告なし、分析なし。構成はデバイス上で暗号化保護され、通信先は自分のクラスターだけです。
Talos 生まれ · どこでも動く
kubeconfig をファイル、貼り付け、QR、共有シートで追加します。プレビューにはすべてのコンテキストとそのサインイン方法が表示され、選んだものが追加されます。各クラスターには Kubernetes ホーム、すべての Kubernetes 画面、バックグラウンドアラート、そして固有の色が割り当てられるため、再起動を間違ったクラスターに向けることはありません。
証明書にロールが組み込まれた talosconfig:ノードのヘルス、ログ、etcd、KubeSpan、アップグレードなど、Talos API をエンドツーエンドで。
omnictl と同じ方法でインスタンスにサインインし、一覧からクラスターを選びます。アプリでできる操作は、自分の ID に対する Omni のロールで決まります。
EKS、GKE、AKS、DigitalOcean、Rancher:アカウントのクラスターを一覧表示して追加するか、CLI が書き出した kubeconfig をインポートします。exec プラグインはスマートフォン上のサインインに置き換わります:開始 URL からの IAM Identity Center、Google アカウントまたは組織の OAuth クライアント、Entra ID。
クライアント証明書、ServiceAccount トークン、またはブラウザやデバイスコードによる kubelogin の OIDC。k3s、RKE2、kubeadm、OpenShift:kubectl で届くなら、Ichor でも届きます。
スマートフォン上で aws、gcloud、az のバイナリは動きません。Ichor が exec プラグインの役割を担い、サインインはデバイス上に留まって自動で更新されます。トークンと鍵は StrongBox または Secure Enclave に保護され、アプリロックで守られます。
「このクラスターはどのアカウントを使っている?」→ ホームに表示されます。
クラウドのクラスターでは、Kubernetes ホームに各ノードの配置先も表示されます:Karpenter プール、マネージドノードグループ、コンピュートクラスまたはエージェントプール、マシンタイプ、スポットかオンデマンドか。Talos クラスターでも、管理者 kubeconfig の代わりにこれらの ID を Kubernetes 画面に使えます。
1.22〜1.41 の新機能
2週間で20リリース:あらゆる CRD に画面を与えるプラグイン、スマートフォン上の差分から作成するプルリクエスト、ノードの喪失をシミュレートするキャパシティ画面、Alertmanager をはじめとする Kubernetes ホームの残り、クラスター全体の Talos アップグレード、画面が消えても動き続けるランブック。
プラグインは YAML ファイル 1 つ:読み取るリソース、正常とみなす条件、カード、アクション、検出結果を定義します。kube-green、External Secrets、ExternalDNS、Sealed Secrets、Rook Ceph、MariaDB、Percona、Dragonfly、Temporal、Numaflow、Dataflow など12個を内蔵。自作のプラグインは貼り付け、ファイル、URL、QR コードからインポートでき、有効にする前に何を読み取り何を変更できるかを確認できます。検出結果はクラスターチェックとバックグラウンドアラートに反映されます。
「アプリは自分のオペレーターに対応している?」→ アプリのリリースなしで、今すぐ対応できます。
Argo CD または Flux のアプリがデプロイするファイルを、クラスターが実行中のリビジョンで閲覧できます。ファイルを編集するか、イメージタグやレプリカ数をクイック編集し、kustomize ビルドを検証した差分を確認して、GitHub、GitLab、Gitea、Forgejo でプルリクエストを作成します。クラスターで手動変更された値や、保持した Talos のマシン構成の変更は、元のファイルへの変更として提案されます。プルリクエストがマージされたとき、そしてクラスターがそれを実行したときにアプリが通知します。
「あのタグ、上げてくれる?」→ 電車の中からプルリクエスト。
クラスターごとの CPU、メモリ、ディスクの空き、QoS クラスと優先度に基づく各ワークロードの OOM と退避のリスク、そしてシミュレーション:1個または複数のノードを取り除き、Pod の移動先、プリエンプトされるもの、Pending のまま残るもの、スケールダウンすべきものを確認できます。使用中の CPU とメモリは kubectl top と同様に metrics-server から取得します。
「今夜 w-3 をドレインできる?」→ 4個の Pod がノーと言っています。
ワークロード、ネットワーク、ストレージ、監視、閲覧:Service とロードバランシング、Job、ストレージクレームとその使用率、HPA・KEDA・VPA・Karpenter によるオートスケーリング、Kyverno と Gatekeeper のポリシー、KubeVirt の仮想マシン、Velero のバックアップ、Helm リリース、ライブイベント、そしてスマートフォンからサイレンスを設定できる Alertmanager。すべてのオブジェクトに概要、スキーマ補助付きの YAML、スケール、削除、RBAC で許可されたアクションがあり、一覧はライブで更新されます。
「午前3時に鳴ったのは?」→ そのアラートを、ワンタップでサイレンス。
すべてのノードを1台ずつ順番にアップグレードし、アップグレード自体がドレインしない場合は先にドレインします。Kubernetes は dry run の後にアップグレード。ノードの追加:メンテナンスモードで調べ、既存メンバーから構成を作成して送信し、参加するまで追跡します。ガイド付きプランでコントロールプレーンノードを置き換え、スナップショットから etcd を復元し、NOSPACE アラームをワンタップで解消し、ノードをリセットまたはワイプできます。etcd を壊す操作は拒否されます。
「1.13 へのアップグレードは?」→ ソファから8個のノードすべてを。
ランブックはアプリ自身のアクションを順に並べたリストです。インポート時にまず計画が表示され、破壊的なステップごとに確認しながら実行されます。同期、調整、再起動、複数ノードへの構成適用、ネットワークテストは、進行状況と停止ボタン付きでバックグラウンド実行されます。Android では「操作」通知チャンネルに、iOS ではロック画面と Dynamic Island に表示されます。
「金曜のランブックは終わった?」→ ステップ3が確認を待っています。
GKE は Google アカウントまたは組織の OAuth クライアントで、EKS は開始 URL だけで IAM Identity Center にサインイン。aws config、gcloud の認証情報、omniconfig を貼り付けるかスキャンすると、サインイン情報が自動入力されます。
Grype または Trivy で、Pod やワークロードのイメージ、ノードの Talos システムイメージをスキャンします。レポートはスマートフォン上に保存され、前回のスキャン以降に新たに見つかったものにはマークが付きます。
ノードごとの稼働時間、前回確認時からの変化、使用率とメモリのスパークライン、「約9日で満杯」と知らせるストレージ予測、そして Markdown で共有できる匿名化されたインシデントの概要。
すべてのクラスターのノード、Pod、ワークロード、アプリを、ホームから、または iOS の Spotlight、Siri、ショートカットから検索できます。Apple Watch アプリと Wear OS タイルで各クラスターのヘルスを確認できます。
ノードと GitOps アプリは一覧の横に開き、概要は2カラムで表示されます。iPad のサイドバーには、現在の画面の横にクラスターとそのセクションが一覧表示されます。
設定はページごとに整理されました。パスフレーズまたは age 公開鍵で保護された age ファイルのバックアップは、ピン留め、Git ホスト、AI 設定も保持し、Android と iPhone の間で移行できます。
フックと待機付きの Helm ロールバック、/scale を提供するあらゆるもののスケール、dry run の計画付きのテイントとラベル、dry run の差分付きで貼り付けた YAML の適用、シェルのないイメージ向けのデバッグコンテナ、全ノードへのイメージの事前プル、終了した Pod のクリーンアップ。
ノードからの DNS、ping、ポート、traceroute、HTTP/TLS チェック、センサー、CPU 周波数とスロットリング、各ディスクのパーティションと暗号化、そしてハードウェア画面からサーバーの交換部品まで。
見るだけでなく、運用する
アプリのロック解除にセキュリティキー、アプリによる変更と操作者を記録する暗号化ログ、Argo CD が適用する差分、メトリクス画面の PromQL アシスタント、両プラットフォームでの CAST AI の節約額、そしてアカウントに実行権限があるかを事前に把握する Kubernetes アクション。
アプリから行ったクラスターへの変更(再起動、リスタート、同期、ロールバック、削除)はすべて、バックグラウンド実行がクラッシュした場合でも、結果とともにデバイス上の暗号化ログに記録されます。Android と iOS のアクティビティ画面で確認できます。
「午後2時に grafana を再起動したのは?」→ このスマートフォンの、この画面から。
「差分を表示」は、コントローラーが実行済みの比較をもとに、同期による変更をオブジェクトごとに表示します(Secret の値は非表示)。リビジョン、各履歴エントリ、実行中の同期は、GitHub、GitLab、Gitea、Forgejo、Codeberg、Bitbucket 上のコミットにリンクします。ロールバック時にはアプリ名の入力が必要になりました。
「この同期は何に影響する?」→ タップする前に、3個のオブジェクトを確認。
NFC または USB 接続の YubiKey や任意の FIDO2 キーで、アプリロックの PIN と生体認証を置き換えられます。保存された構成も保護され、キーがなければスマートフォンのストレージのコピーからでも読み取れません。
「スマートフォンを紛失した?」→ 構成は、端末内にないキーで保護されています。
見たい内容を伝えると、アシスタントがクエリを作成し、Prometheus で実行して結果が返ることを確認してからパネルを追加します。オプション機能でデフォルトはオフ。自分の Claude または OpenAI のキーを使い、Android と iOS で利用できます。
「w-2 の全 Pod のメモリを積み上げで」→ 検証済みのパネル。
節約額付きのワークロード推奨、ノード統合プラン、失敗したプランによって逃した節約額を、刷新されたワークロード表示で確認できます。Android に加えて iOS にも対応しました。
「過剰にプロビジョニングされているのは?」→ 節約額付きのランキングで。
すべてのオブジェクトに、kubectl describe の冒頭のような概要タブが追加されました:条件、所有者、過去1時間のイベント。アクションはワンタップで実行でき、アカウントで実行できないものは、試す前に API サーバーに問い合わせた理由とともに無効化されます。
「ここから再起動できる?」→ できるか、できない理由を表示。
バックグラウンドアラート、データサービス、並べ替え可能なホームが、Talos だけでなく kubeconfig から追加したクラスターでも使えるようになりました。
通知をタップすると、対象のノード、Pod、バックアップに直接移動します。Android では種類ごとに通知チャンネルが分かれ、必要なものだけミュートできます。
すべてのクラスターの削除や Argo CD アプリのロールバックには、名前の入力が必要です。ワンタップのアクションは対象オブジェクトのある場所に配置されています。
Android と iOS は同じ設定レイアウトを共有し、アップデートの提供元を表示し、高密度でも読みやすいテキストでアクセシビリティチェックに合格しています。
ネットワーク、ストレージ、プレッシャー
何かが遅いのに、すべてのノードは Ready。Ichor はスマートフォンから直接、2個のノード間のリンクを測定し、アプリが依存するストレージとデータベースをチェックし、ノード上でリソース不足に陥っているワークロードを特定します。
一覧から、または Android ではクラスターマップ上で直接2個のノードを選ぶと、Ichor が cilium connectivity perf と同じように netperf で測定します。CNI は問いません:TCP スループット、続いて p50、p90、p99 のレイテンシを Pod 間で、必要ならホスト間でも測定します。結果は保存され、時系列でグラフ化されます。
「新しいスイッチは速くなった?」→ 測定済み。
Ichor はクラスター内の Longhorn、CloudNativePG、Garage、Rook Ceph、MariaDB、Percona、Dragonfly を認識してチェックします:低下したボリュームとそのレプリカ、Postgres インスタンスと古いまたは失敗したバックアップ、CSI スナップショットとバックアップ用 CronJob、Garage のノード、Dragonfly のマスターとレプリカ。各問題には原因となるノードが表示されます。行からレプリカのプロモート、フェイルオーバー、ボリュームの救出やスナップショットの作成ができ、オプトインのアラートでボリュームの障害、ディスクの逼迫、バックアップの停止を通知します。
「昨夜のバックアップは実行された?」→ 実行されたか、されなかった理由を表示。
クラスターで Argo CD が動いていれば、Ichor はアプリケーションをヘルスと同期状態とともに一覧表示し、同期をウェーブごとに追跡します。同期、更新、同期の中止、自動同期の一時停止、ロールバックが可能です。Talos が発行する管理者 kubeconfig で Application リソースと直接通信するため Argo CD トークンは不要で、ApplicationSet が管理するアプリが知らないうちに変更されることはありません。
個人プロジェクトなど Ichor が認識しないアプリは、ichor.levis.name/icon アノテーションで独自のロゴを指定できます:Dashboard Icons の名前、PNG または WebP への https リンク(アイコンのダウンロードを許可した場合のみ取得)、または base64 でインライン化した画像そのもの。
kubectl -n argocd annotate application my-site \
ichor.levis.name/icon=https://example.org/logo.png
「このアプリはなぜ低下している?」→ 原因の Pod とノードを表示。
ノード上の処理が CPU、メモリ、ディスクをどれだけ待っているかを直近5分間のグラフで表示し、最も待っているワークロード、OOM kill、メモリ上限に近いコンテナも示します。Cgroups タブでは、talosctl cgroups と同様に、サービス、Pod、コンテナごとに内訳を表示します。
「w-2 を食いつぶしているのは?」→ 特定済み。
これらには os:admin 証明書が必要です。ネットワークテストは専用の名前空間で restricted の Pod セキュリティプロファイルを適用して Pod を実行し、終了後に削除します。各測定はリンクを5〜20秒間占有します。保存された結果はスマートフォン上で暗号化され、バックアップには含まれません。データサービスのアラートは、オンにするまで無効です。
Android では、KubeSpan 画面にサイト、ノード、トンネルの状態(稼働、低下、ダウン)がゾーンごとの旗とともに描かれます。2個のノードをタップすると、その間のリンクをテストできます。
アプリのシートには、そのアプリを指す Ingress と Gateway API の HTTPRoute から見つけた Web アドレスが一覧表示され、ワンタップで開けます。
ここからエンドポイントが応答しない場合、Android では Ichor がローカルネットワーク上で認証情報を受け付けるノードを検索し、エンドポイントを手動で編集することもできます。
DNS、MTU、TLS、KubeSpan などに使える約40個の netshoot コマンドをデバッグシェルからワンタップで実行でき、スマートフォンのキーボードはほとんど不要です。
アプリと Kubernetes
Talos はノードが正常だと教えてくれます。でも Grafana は最新か、なぜ Cilium エージェントが1つだけ古いバージョンのままなのか、どの Pod がクラッシュループしているのか?Ichor はクラスターで動いているソフトウェアを表示し、管理者証明書があれば、ノート PC なしでワークロードを再起動したり、詰まった Pod を削除したりできます。
すべてのノードのすべてのコンテナを、見慣れたアプリごとにロゴ付きでグループ化:Home Assistant、Immich、*arr スタック、Longhorn、Cilium など約400種類。サイドカーと init コンテナは所属するアプリにまとめられ、2つのバージョンが同時に動いているアプリや、固定されていない :latest イメージにはマークが付きます。
「すべて新しいバージョンになった?」→ ひと目で確認。
Deployment、StatefulSet、DaemonSet を準備状態とロールアウト状態とともに、注意が必要なものから順に表示します。kubectl rollout restart と同様にローリングアップデートで再起動でき、Pod が1個だけの場合は確認時に警告します。その後、新旧の Pod の状況がすべての新しい Pod の準備が整うまでライブで表示されます。いつ閉じてもロールアウトは続行されます。
「ちょっと蹴飛ばせば直る」→ ベッドの中から完了。
すべての Pod を、kubectl get pods と同じステータス(CrashLoopBackOff、Init:Error、Terminating)、再起動回数、ノードとともに表示します。詰まった Pod を削除すると、コントローラーが新しいコピーを起動します。確認画面で、再作成されるかどうかがわかります。
「なぜまだ再起動している?」→ 削除して、再作成。
すべての CronJob を、スケジュール、次回の実行、直近の実行結果とともに、失敗中と実行中のものから順に表示します。確認後、kubectl create job --from と同様に今すぐ実行できます。Job は CronJob の所有のままなので、履歴とクリーンアップも引き続き適用されます。
ラベルまたはアノテーションで、それぞれにロゴ、名前、1行の説明を付けられます。アイコンがない場合、Ichor はイメージが属するアプリのアイコンを使い、それもなければ時計を表示します。ichor.levis.name/trigger=false を設定すると、ジョブはスケジュールでのみ実行されます。
kubectl label cronjob db-backup ichor.levis.name/icon=postgresql
kubectl annotate cronjob db-backup ichor.levis.name/title="Database backup"
kubectl annotate cronjob db-backup ichor.levis.name/description="Nightly dump to S3"
kubectl label cronjob wipe-staging ichor.levis.name/trigger=false
「昨夜のバックアップが失敗した」→ ソファから再実行。
アプリインベントリは読み取り専用の os:reader 証明書で動作し、ロゴはアプリに内蔵されているため、オンラインでの検索は行いません。ワークロードと Pod には Talos が発行する管理者 kubeconfig を使い、メモリ上にのみ保持します。スクリーンショットモードでは、アドレスやノード名に加えてすべてのロゴも非表示になります。
VPN がオフ、または別のネットワークにいる?赤いノードが並ぶ代わりに、1つの通知が理由を説明し、自動で再試行して、接続が戻った瞬間に復旧します。
記録されたインシデントに、その時点で取得したサービスの状態とネットワークリンクの変化が保存されるようになりました。技術的な詳細はワンタップで確認できます。
内蔵の400種類以外のアプリについては、オープンな Dashboard Icons セットからロゴをダウンロードできます。デフォルトはオフで、送信されるのはアイコンの公開名だけです。
古い Cilium のままのノード、忘れられた :latest タグ:要確認のアプリ数が概要に直接表示されます。
クラスターインサイト
午前3時、ノードが不安定で、ノート PC は別の部屋。クラスターインサイトは Ichor をステータスページからトラブルシューティングキットに変えます:ずれたノードを見つけ、進行中のインシデントを記録し、実際にボトルネックになっているリソースを特定します。すべて読み取り専用の os:reader 証明書で行えます。
1台だけ MTU が違うワーカー、忘れられた NTP サーバー、アップグレードで取り残された拡張機能。Ichor は DNS、NTP、MTU、拡張機能のバージョン、Secure Boot、UKI、Talos のバージョンをロールごとに、または保存したベースラインと比較し、異なるものを指摘します。
「なぜ w-3 だけ遅い?」→ 見つかりました。
発生中に記録を開始すると、Ichor が最大10分間のタイムラインを作成します:Talos のライブイベントに加え、5秒ごとに取得したノードの準備状態、サービス、リンク、ネットワークカウンター。タイムラインは保存され、ポストモーテムにすぐ使えます。
「最初に壊れたのは?」→ タイムラインに記録されています。
負荷が高い、でも原因は CPU、ディスク、ネットワーク、それともハイパーバイザー上のうるさい隣人?ライブタブに I/O 待ちと VM の steal 時間、ディスクごとのスループットと I/O 時間、インターフェースごとのスループット、エラー、ドロップが表示されるようになりました。再起動後の偽のスパイクもありません。
「ディスクのせい?」→ これでわかります。
ベースラインと記録はスマートフォン上で暗号化され、クラスターごとに分けて保存され、バックアップされることはありません。マシン構成、kubeconfig、生のログは収集されず、インサイト画面からすべて削除できます。
talosconfig にエンドポイントが1つしかない?Ichor がクラスターにメンバーを問い合わせ、足りないノードをワンタップで追加できるよう提案します。
電源オフのノードをアクションシートから起動できます。Ichor は稼働中に各ノードのネットワークカードを記憶するため、設定したことがなくても起動できます。
内蔵デモは、5個のサンプルノード、ライブメトリクス、ログ、etcd などでオフライン動作します。構成を1つもインポートする前に、すべてを確認できます。
同じ名前のコンテキストをインポートしても、既存のクラスターが上書きされることはありません。アプリアイコンを長押しすると、任意のクラスターに直接移動できます。
稼働中のクラスターの実際の画面を、スクリーンショットモードで撮影したものです。アドレスとノード名は代替の値に置き換えられています。
すべて公式の Talos Go クライアントを通じて動作するため、talosconfig のコンテキスト、mTLS、エンドポイントからノードへのプロキシは talosctl とまったく同じように動作します。
| 従来のコマンド | 開く画面 | ロール |
|---|---|---|
| talosctl get machinestatus | クラスター概要すべてのノードの状態(準備完了、未準備、到達不能)と、満たされていない条件、時刻のずれ、利用可能な Talos のアップグレード。 | reader |
| talosctl services, talosctl logs -f | サービスとログサービスのヘルスと、レベル別に色分けしたサービスまたはカーネルのログ。繰り返しの折りたたみとライブ追従モード付き。 | reader |
| talosctl events | イベントのタイムラインクラスター全体のサービスの変化、ブートフェーズ、アドレスの変化をリアルタイムで。 | reader |
| talosctl dashboard, talosctl processes | ライブグラフとプロセスCPU、メモリ、ネットワーク、ディスク、負荷を2秒ごとに表示し、プロセス一覧を CPU またはメモリ順に並べ替え。 | reader |
| talosctl get members | ノードの検出talosconfig がまだ対象にしていないクラスターメンバーをワンタップでコンテキストに追加。Android では、エンドポイントが応答しないときにローカルネットワークを検索。 | reader |
| diff of talosctl get … on every node | 構成ドリフトDNS、NTP、MTU、拡張機能、Secure Boot、UKI、Talos のバージョンを、ロール内で、または保存したベースラインと比較。 | reader |
| talosctl events + watch, in a terminal | インシデントレコーダーイベントと、定期取得したノード、サービス、ネットワークの状態を、1つの保存済みタイムラインに統合。 | reader |
| talosctl read /proc/stat, /proc/diskstats | ボトルネックメトリクスI/O 待ち、steal 時間、ディスクごとの I/O、インターフェースごとのエラーとドロップをライブで。 | reader |
| talosctl containers -k | PodPod ごとにまとめたコンテナと、その CPU とメモリ。 | reader |
| talosctl containers -k on every node | アプリインベントリクラスターで動いているソフトウェアを、ロゴ、バージョン、バージョンのずれ、固定されていないイメージとともにアプリごとに表示。 | reader |
| talosctl get links, talosctl netstat | ネットワークインターフェース、アドレス、ルート、DNS サーバーとタイムサーバー、開いている接続。 | reader |
| talosctl apply-config --mode try | マシン構成ノードの構成をフィールドごとに、または YAML で表示。シークレットは明示的に表示しない限り非表示。編集して変更を試すことができ、保持しなければノードは自動で元に戻ります。 | admin |
| talosctl etcd status, etcd snapshot | etcdメンバー、リーダー、サイズ、アラーム、デフラグ、そしてスマートフォンに保存するスナップショット。 | reader / backup |
| talosctl get kubespanpeerstatuses | KubeSpan各ノードのピア:状態、エンドポイント、最終ハンドシェイク、トラフィック。Android では、サイト、ノード、トンネルのマップも。 | reader |
| talosctl service restart | サービス制御サービスの開始、停止、再起動。重要なサービスには警告を表示。 | operator |
| talosctl reboot -m powercycle | 再起動、シャットダウン、起動ホスト名を入力して確認した後、グレースフル、電源の入れ直し、または強制で実行。電源オフのノードは Wake-on-LAN で起動。 | operator |
| talosctl pcap | パケットキャプチャデコードした詳細付きのライブのパケット一覧を、Wireshark で開ける .pcap として保存。 | operator |
| talosctl upgrade | Talos のアップグレード1台ずつ実行し、etcd がクォーラムを失う場合は拒否。ノードが復帰するまで進行状況を表示。 | admin |
| kubectl get deploy,sts,ds, kubectl rollout restart | Kubernetes ワークロードすべての Deployment、StatefulSet、DaemonSet の準備状態とロールアウト状態、そして確認後のローリング再起動。 | admin |
| kubectl get cronjobs, kubectl create job --from | Kubernetes の CronJobすべての CronJob のスケジュール、次回の実行、最近の実行を、設定したアイコンと名前で表示。確認後に手動実行も可能。 | admin |
| kubectl get pods, kubectl delete pod | Kubernetes の PodPod のステータス、準備状態、再起動回数、ノードを異常なものから表示。詰まった Pod を削除すると、コントローラーが再作成します。 | admin |
| cilium connectivity perf, netperf | ネットワークテスト2個のノード間の TCP スループットと p50〜p99 のレイテンシを Pod 間またはホスト間で測定し、保存して時系列でグラフ化。 | admin |
| kubectl get volumes.longhorn.io, clusters.postgresql.cnpg.io | データサービスLonghorn のボリューム、CloudNativePG のクラスターとそのバックアップ、Garage、Rook Ceph、MariaDB、Percona、Dragonfly。各問題の原因となるノードと、行からの修正操作付き。 | admin |
| talosctl cgroups | ノードプレッシャーと cgroupsCPU、メモリ、ディスクのプレッシャー、最も待っているワークロード、OOM kill、サービス、Pod、コンテナごとの使用量。 | admin |
| talosctl config new | talosconfig の発行このスマートフォンの証明書を更新するか、別のデバイス用の読み取り専用の証明書を QR コードで作成。 | admin |
| talosctl rotate-ca | Talos CA のローテーション古い CA を外す前にすべてのノードが新しい CA を信頼し、このスマートフォンの talosconfig も途中で更新されます。 | admin |
| talosctl health | クラスターのヘルスチェックサーバー側のチェックを、実行に合わせてストリーミング表示。 | admin |
| talosctl debug | デバッグシェルnicolaka/netshoot などのイメージをノード上で実行してターミナルを開き、約40個のすぐに使えるコマンドを利用。 | admin |
| dig, ping, nc -z, traceroute, curl -v | ノードのネットワークツールノードから実行する DNS、ping、ポート、traceroute、HTTP/TLS チェックの結果をフィールドに分けて表示。 | admin |
| talosctl upgrade on every node, talosctl upgrade-k8s | クラスターのアップグレードすべてのノードを1台ずつ順番に、必要なら先にドレインしてアップグレード。Kubernetes は dry run の後に。対象バージョン向けのビルドがない拡張機能には警告を表示。 | admin |
| talosctl apply-config --insecure, talosctl reset | ノードの追加、置き換え、リセットメンテナンスモードのノードを調べ、既存メンバーから作成した構成を送信して参加するまで追跡。ガイド付きプランでコントロールプレーンノードを置き換え。ノードのリセットやワイプも可能で、etcd が壊れる場合は拒否。 | admin |
| talosctl etcd defrag, alarm disarm, bootstrap --recover-from | etcd の修復NOSPACE アラームをワンタップで解消(スナップショット、デフラグ、解除、確認)し、スナップショットから etcd を復元。 | admin |
| talosctl get disks, volumestatus | ストレージとハードウェア各ディスクのパーティション、空き容量、暗号化、センサー、CPU 周波数とスロットリング、サーバーの交換部品。 | reader |
| kubectl get all -A, kubectl describe, kubectl scale | あらゆる Kubernetes オブジェクトすべての種類を閲覧でき、各オブジェクトには条件、所有者、イベントの概要、スキーマ補助付きの YAML、スケール、削除、RBAC で許可されたアクションがあります。 | RBAC |
| kubectl get svc,jobs,pvc,hpa, kubectl top | Service、Job、ストレージ、オートスケーリング、キャパシティアドレスとルート、ロードバランサープール、Job の状態とオーナー、クレームとその使用率、HPA、KEDA、VPA、Karpenter、クラスターごとの空き容量、そしてノードを1つ失った場合の影響。 | RBAC |
| kubectl get events -w, amtool alert, amtool silence | ライブイベントと Alertmanagerクラスター全体のイベントをリアルタイムで表示。発生中のアラートとサイレンス、スマートフォンからのサイレンス設定、そしてアラート発生時のスマートフォンへの通知。 | RBAC |
| kubectl get cpol,policyreports, constraints | ポリシーKyverno と Gatekeeper のポリシー、その検出結果とエンジンのヘルス。ポリシーを Audit と Enforce の間で切り替えられます。 | RBAC |
| virtctl, kubectl get vm,vmi | 仮想マシンKubeVirt の VM の起動、停止、再起動、マイグレーション、一時停止、そしてアプリのターミナルでのシリアルコンソール。 | RBAC |
| helm rollback, velero restore, kubectl apply --dry-run | Helm、Velero、YAMLHelm リリースをフック込みでロールバック、プレビューと名前空間マッピング付きで Velero バックアップを復元、スケジュールを今すぐ実行、貼り付けた YAML を dry run の差分を確認してから適用。 | RBAC |
| kubectl argo rollouts, kubectl get managed, tailscale | Argo Rollouts、Crossplane、Tailscale、Cluster APIロールアウトのプロモート、中止、再試行。Crossplane リソースの一時停止、再開、調整。コネクターとプロキシグループ。クラスター、マシン、Sidero Metal サーバー。 | RBAC |
| grype, trivy image | イメージスキャンPod、ワークロード、ノードの Talos システムイメージの脆弱性。レポートは保存され、前回のスキャン以降の新しい項目がわかります。 | reader |
| git checkout -b, git commit, gh pr create | Git とプルリクエストアプリがデプロイするファイルを閲覧・検索し、1つまたは複数を編集、差分と kustomize のビルド結果を確認して、GitHub、GitLab、Gitea、Forgejo でプルリクエストを作成。 | Git token |
| a shell script of kubectl and talosctl calls | ランブックアプリのアクションを順番に並べたリスト。インポート時に実行計画を先に表示し、破壊的なステップごとに確認しながら実行します。 | per step |
| kubectl get <your CRD> | プラグイン12種類の組み込みオペレーターに加え、独自の CRD を1つの YAML ファイルで記述。カード、アクション、検出結果はクラスターチェックとアラートにも反映されます。 | RBAC |
スマートフォン専用の talosconfig を生成します。アプリはそのロールを読み取り、その証明書で許可された操作だけを表示します。スマートフォンを紛失しても、証明書にそれ以上の権限はなく、期限が来れば自動的に失効します。
os:reader
モニタリング、ログ、イベント、Pod、アプリ一覧、ネットワーク、etcd、KubeSpan とクラスターマップ、グラフ、アラート、そしてすべてのクラスターインサイト。スマートフォンに最適なデフォルトです。
os:operator
読み取り専用のすべてに加え、再起動、シャットダウン、サービスの再起動、パケットキャプチャ。
os:admin
ヘルスチェック、マシン構成、Talos と Kubernetes のアップグレード、ノードの追加・置き換え・リセット、etcd の修復、talosconfig の発行、kubeconfig のエクスポート、デバッグシェル、ネットワークテスト、ノードの負荷テスト、そして Talos が発行する管理者 kubeconfig によるすべての Kubernetes 画面が加わります。kubeconfig クラスターでは、できる操作は RBAC 次第で、タップする前に確認されます。
talosconfig は、スマートフォンのセキュリティチップ(Android では StrongBox または TEE、iPhone では Secure Enclave)に保持された鍵で暗号化されます。オプションの指紋認証、Face ID、PIN ロックでアプリとすべての再起動を保護できます。
Ichor は一般公開前のクローズドテストとして Google Play で配信中です。テスターリストに登録されたアカウントだけがインストールできるため、2つのステップが必要です。
Discord でテスターに参加するか、スマートフォンで Play ストアに使っている Google アカウントのメールアドレスを送ってください。
アカウントがリストに登録されたら、Android スマートフォンで Play ストアのリンクを開いて Ichor をインストールしてください。
スマートフォンが手元にない場合は、同じ Google アカウントでウェブからテストに参加できます。
CRD が公開されているオペレーターなら、どれでも Ichor のプラグインにできます。CRD マニフェストへのリンクを指定すると、そこからドラフトのプルリクエストが作成され、メンテナーがレビューと翻訳を行います。まずは未対応のリクエストを確認してください。既存のリクエストへの賛成票は、新しいリクエストと同じ重みを持ちます。
作業用のマシンで、コントロールプレーンノードの1つで読み取り専用の証明書に署名し、ノードを一覧表示します。
talosctl -n <control-plane-ip> config new talosconfig-phone --roles os:reader --crt-ttl 8760h
talosctl --talosconfig talosconfig-phone config node <node-1> <node-2> …
Android では、Play ストアのベータ版に参加して Google Play から Ichor をインストールします。
ファイルを選択するか、貼り付けるか、QR コードとしてスキャンします:
qrencode -t ansiutf8 -r talosconfig-phone
1つの QR コードに収まらない場合は、圧縮してください。アプリが展開します:
gzip -9 < talosconfig-phone | qrencode -8 -t ansiutf8
一本の血管が青銅の巨人を生かしていた。あなたの血管にも目を配ろう。
ギリシャ神話のタロス(Talos)は、1日に3度クレタ島の海岸を巡って島を守った青銅の巨人です。首から足首まで一本の血管が通り、神々の黄金の血イーコール(ichor)を運んでいました。イーコールが流れている限り、タロスは立ち続けたのです。
クラスターにも脈があります。ノードは準備完了、サービスは正常、etcd はクォーラムを保っている。Ichor は、どこからでもそれを確かめるために開くアプリであり、脈が乱れたときに肩をたたいて知らせてくれるアプリです。
はい。インポート画面で「デモを試す」をタップすると、5つのサンプルノードからなるオフラインのクラスターが開き、ライブメトリクス、サービス、ログ、イベント、etcd、ネットワークを確認できます。デモデータであることが明示され、実際のクラスターと並べて置くことができ、「クラスターの管理」から削除できます。
はい。kubeconfig からクラスターを追加するか、AWS、Google Cloud、Azure、DigitalOcean、Rancher のアカウントのクラスターを一覧表示して、選んだものを追加できます。kubeconfig の exec プラグインが行うサインインは、代わりにスマートフォン上で行います(IAM Identity Center、Entra ID、サービスアカウントキー、またはブラウザでの OIDC)。Talos の画面は非表示になりますが、すべての Kubernetes 画面、バックグラウンドアラート、データサービスは利用でき、できる操作は RBAC 次第です。
はい。プラグインは1つの YAML ファイルでカスタムリソースを記述します。何を読み取るか、何を正常とみなすか、カード、アクション、検出結果などです。12種類のオペレーターが組み込みプラグインとして付属しており、独自のプラグインを貼り付け、ファイル、https リンク、QR コードからインポートできます。「設定 → プラグイン」では、有効にする前に各プラグインが読み取る内容と変更できる内容を確認できます。形式はプラグインリファレンスに記載されており、リクエストフォームでは公開 CRD のリンクからドラフトのプルリクエストを作成できます。
いいえ。Ichor はコミュニティが開発した、Talos Linux 用の独立したクライアントです。Sidero のオープンソースの Go クライアントライブラリを使用していますが、Sidero Labs が開発、承認、サポートしているものではありません。
いいえ。Ichor は talosctl とまったく同じように、talosconfig を使ってすべてのノードがすでに公開している Talos API と通信します。エージェント、オペレーター、中継サーバーはありません。Kubernetes 画面では、Talos が管理者証明書に対して発行する管理者 kubeconfig を使い、メモリ内にのみ保持します。唯一の例外はネットワークテストで、専用の名前空間に短時間だけ netperf の Pod を起動し、終了後にその名前空間を削除します。
ノードにだけ送られます。アプリは GitHub で新しいリリースを確認しますが、それ以外は有効にしない限りスマートフォンの外に出ません。AI 診断はデフォルトでオフで、まず実際のレポートを表示し、「質問する」をタップしたときにだけ送信します。名前とアドレスは選択に応じて伏せられます。同梱されていないアプリのロゴのダウンロードもデフォルトでオフで、送信するのはアイコンの公開名だけで、イメージ名は決して送りません。
読み取り専用の証明書なら、Talos API がすべての変更を拒否します。オペレーターまたは管理者の証明書では、危険な操作の前にノードのホスト名の入力が求められ、etcd がクォーラムを失う場合はアップグレードが拒否されます。
「設定」からクラスターと設定を、パスフレーズで保護してバックアップします。新しいスマートフォンでは、最初の画面で「バックアップから復元」をタップするか、Android ではファイルマネージャーからバックアップファイルを開きます。バックアップは Android と iPhone の間で移行できます。
はい。talosconfig やコンテキストをいくつでもインポートし、ヘッダーから切り替えられます。クラスターごとに色を設定できるので、今どのクラスターにいるのか常にわかります。
Ichor を1分でインストールし、デモを開いてから、読み取り専用の証明書で自分のクラスターに接続しましょう。無料、オープンソース、アカウント不要です。
Ichor は無料で、広告もトラッキングもありません。ドリフト検出、インシデントレコーダーをはじめ、このページのすべての機能はオープンに開発されています。Ichor のおかげでノート PC を取りに行かずに済んだなら、GitHub Sponsors または暗号資産で今後の開発を支援してください。