Шукаю бета-тестерів у Play Store: приєднуйтесь у Discord або запишіться поштою.

Ichor для Talos Linux і Kubernetes
1.41 Плагіни для будь-якої CRD, pull request із телефона, ємність і ранбуки →

Усі ваші кластери з телефона.

Ichor був створений для Talos Linux і досі говорить із ним тим самим клієнтом, що й talosctl. Сьогодні він відкриває й будь-який kubeconfig: EKS, GKE, AKS, DigitalOcean, Rancher, Sidero Omni або вхід OIDC, без чогось для встановлення в кластері й без посередників. А коли якогось оператора бракує, плагін в одному файлі YAML дає йому екран.

Немає кластера під рукою? Торкніться Спробувати демо на першому екрані: п’ять зразкових вузлів, графіки наживо й журнали, повністю офлайн. Безкоштовно, з відкритим кодом, Apache-2.0, типово лише читання.

Народжений на Talos · Удома всюди

Починався як застосунок для Talos. Тепер відкриває будь-який kubeconfig.

Додайте kubeconfig файлом, вставленням, QR або через аркуш «Поділитися». Попередній перегляд показує кожен контекст зі способом входу й додає обрані. Кожен кластер отримує домівку Kubernetes, усі екрани Kubernetes, фонові сповіщення та власний колір, щоб перезапуск ніколи не влучив не туди.

  • Talos Linux

    talosconfig із ролями, вбудованими в його сертифікат: стан вузлів, журнали, etcd, KubeSpan, оновлення, Talos API від початку до кінця.

  • Sidero Omni

    Увійдіть до інстансу так, як це робить omnictl, оберіть кластери зі списку. Роль Omni для вашої ідентичності — це те, що може застосунок.

  • Керований Kubernetes

    EKS, GKE, AKS, DigitalOcean і Rancher: перелічіть кластери облікового запису й додайте їх або імпортуйте kubeconfig, який записав CLI. Exec-плагіни замінено входом на телефоні: IAM Identity Center за його стартовою URL-адресою, ваш обліковий запис Google або OAuth-клієнт вашої організації, Entra ID.

  • Усе інше

    Клієнтський сертифікат, токен ServiceAccount або OIDC із kubelogin, у браузері чи за кодом пристрою. k3s, RKE2, kubeadm, OpenShift: якщо kubectl дістається, то й Ichor теж.

Вхід як на ноутбуці, запечатано як ключ

Жоден бінарник aws, gcloud чи az не запускається на телефоні: Ichor робить те, що робив би exec-плагін, зі входом, який залишається на пристрої й оновлюється сам. Токени та ключі запечатані в StrongBox або Secure Enclave, за блокуванням застосунку.

«Який обліковий запис використовує цей кластер?» → показано на його домівці.

  • Talos Linux
  • Sidero Omni
  • Amazon EKS
  • Google GKE
  • Azure AKS
  • DigitalOcean
  • Rancher
  • OIDC · kubelogin
  • Client certificate
  • ServiceAccount token
  • Argo CD
  • Flux
  • Argo Rollouts
  • Cilium · Calico
  • CAST AI
  • Cluster API
  • Crossplane
  • Tailscale
  • KubeVirt
  • Longhorn · Rook Ceph
  • CloudNativePG
  • Velero
  • Kyverno · Gatekeeper
  • Alertmanager
  • Any CRD, as a plugin

На хмарному кластері домівка Kubernetes також каже, куди хмара поставила кожен вузол: його пул Karpenter, керовану групу вузлів, обчислювальний клас або пул агентів, тип машини, і чи він spot, чи on-demand. Кластер Talos теж може використовувати одну з цих ідентичностей для своїх екранів Kubernetes замість адмінського kubeconfig.

Нове у версіях від 1.22 до 1.41

Ваші оператори, ваш Git, ваш другий день. Усе на телефоні.

Двадцять випусків за два тижні: плагіни, що дають екран будь-якій CRD, pull request, відкриті з diff на телефоні, екран ємності, який симулює втрату вузла, Alertmanager і решта домівки Kubernetes, оновлення Talos на всьому кластері та ранбуки, які продовжують працювати, коли екран гасне.

Будь-який оператор як плагін

Плагін — це один файл YAML: які ресурси читати, що вважати здоровим, картки, дії та знахідки. Дванадцять вбудовано: kube-green, External Secrets, ExternalDNS, Sealed Secrets, Rook Ceph, MariaDB, Percona, Dragonfly, Temporal, Numaflow і Dataflow. Імпортуйте свій із вставлення, файлу, URL-адреси чи QR-коду й перегляньте, що він читає та може змінювати, перш ніж увімкнути. Його знахідки потрапляють у перевірку стану та фонові сповіщення.

«Чи знає застосунок мій оператор?» → тепер знає, без нового випуску застосунку.

Редагуйте в Git із телефона

Переглядайте файли, які розгортає застосунок Argo CD або Flux, на ревізії, яку виконує кластер. Відредагуйте один із них або швидко змініть тег образу чи кількість реплік, перегляньте diff із перевіреною збіркою kustomize та відкрийте pull request на GitHub, GitLab, Gitea або Forgejo. Значення, змінене вручну в кластері, або збережена зміна конфігурації машини Talos пропонується назад у свій файл. Застосунок повідомляє, коли pull request злито і коли кластер його виконує.

«Можеш підняти той тег?» → pull request, із потяга.

Ємність і ціна втрати вузла

Вільні CPU, пам’ять і диск на кожен кластер, ризик OOM та виселення кожного робочого навантаження за класом QoS і пріоритетом, а також симуляція: заберіть один чи кілька вузлів і подивіться, куди підуть поди, які будуть витіснені, які залишаться в Pending і що зменшити. Використання CPU й пам’яті береться з metrics-server, як у kubectl top.

«Можна сьогодні ввечері злити w-3?» → чотири поди кажуть ні.

Уся домівка Kubernetes

Робочі навантаження, мережа, сховище, спостереження та огляд: сервіси й балансування навантаження, Jobs, заявки на сховище та їх заповнення, автомасштабування з HPA, KEDA, VPA і Karpenter, політики Kyverno та Gatekeeper, віртуальні машини KubeVirt, резервні копії Velero, випуски Helm, події наживо та Alertmanager із вимкненнями, встановленими з телефона. Кожен об’єкт має зведення, YAML із підказками схеми, масштабування, видалення та дії, які дозволяє ваш RBAC, а списки оновлюються наживо.

«Хто спрацював о 3 ночі?» → сповіщення, вимкнене одним дотиком.

Другий день на Talos, із телефона

Оновлюйте вузли один за одним, спершу зливаючи їх, коли оновлення цього не зробить, і оновлюйте Kubernetes після пробного запуску. Додайте вузол: огляньте його в режимі обслуговування, створіть його конфігурацію з наявного члена, надішліть і стежте, доки він не приєднається. Замініть вузол control plane за покроковим планом, відновіть etcd зі знімка, виправте його тривогу NOSPACE одним дотиком, скиньте або зітріть вузол — з відмовою, якщо це зламало б etcd.

«Оновлення до 1.13?» → усі вісім вузлів, із дивана.

Ранбуки й довгі запуски, що переживають екран

Ранбук — це впорядкований список власних дій застосунку, імпортований із попереднім показом плану й виконуваний із підтвердженням на кожен руйнівний крок. Синхронізації, узгодження, перезапуски, застосування конфігурацій на кількох вузлах і мережеві тести виконуються у фоні з прогресом і кнопкою «Зупинити»: в одному каналі сповіщень «Операції» на Android, на заблокованому екрані та в Dynamic Island на iOS.

«Чи завершився п’ятничний ранбук?» → крок 3 чекає на вас.

  • Вхід у хмару без CLI

    GKE з вашим обліковим записом Google або OAuth-клієнтом вашої організації, EKS з IAM Identity Center лише за стартовою URL-адресою. Вставте або відскануйте конфігурацію aws, облікові дані gcloud чи omniconfig — і форма входу заповнена.

  • Образи, перевірені на вразливості

    Grype або Trivy сканує образи пода, робочого навантаження чи системні образи Talos вузла. Звіти залишаються на телефоні, а нове з часу останнього сканування позначено.

  • Тридцять днів історії

    Час роботи кожного вузла, що змінилося відтоді, як ви дивилися востаннє, міні-графіки заповнення й пам’яті, прогноз сховища на кшталт «заповниться за ~9 днів» та анонімізоване зведення інциденту, яким можна поділитися як Markdown.

  • Пошук, Siri та зап’ястя

    Шукайте вузли, поди, робочі навантаження й застосунки кожного кластера з домівки або зі Spotlight, Siri та Shortcuts на iOS. Застосунок для Apple Watch і плитка Wear OS показують стан кожного кластера.

  • Планшети та iPad

    Вузли та застосунки GitOps відкриваються поруч зі своїм списком, огляд показує два стовпці, а бічна панель iPad перелічує ваші кластери й розділи кластера поруч із поточним екраном.

  • Налаштування, резервні копії та ключі

    Налаштування згруповано в сторінки. Резервні копії у файлах age, з парольною фразою або вашими публічними ключами age, тепер зберігають закріплення, хости Git і налаштування ШІ та переносяться між Android та iPhone.

  • Більше у ваших руках

    Відкат Helm із хуками й очікуванням, масштабування всього, що має /scale, taint-и й мітки з планом пробного запуску, вставлений YAML із diff пробного запуску, контейнер налагодження для образів без оболонки, образ, заздалегідь завантажений на кожен вузол, прибирання мертвих подів.

  • Інструменти вузла й обладнання

    Перевірки DNS, ping, портів, traceroute і HTTP/TLS з вузла, сенсори, частота й тротлінг процесора, розділи та шифрування кожного диска, а також запасні частини для сервера — з його екрана обладнання.

Керувати, а не лише спостерігати

Кожна зміна в журналі, кожна дія перевірена заздалегідь.

Ключ безпеки для розблокування застосунку, зашифрований журнал того, що змінив застосунок і хто це натиснув, diff, який застосував би Argo CD, помічник PromQL на екрані метрик, заощадження CAST AI на обох платформах і дії Kubernetes, які заздалегідь знають, чи дозволено їх вашому обліковому запису.

Журнал аудиту того, що зробив телефон

Кожна зміна кластера із застосунку — перезавантаження, рестарт, синхронізація, відкат, видалення — записується з результатом, навіть коли фоновий запуск падає, у журнал, зашифрований на пристрої. Екран «Активність» читає його на Android та iOS.

«Хто перезапустив grafana о 14:00?» → цей телефон, із цього екрана.

Argo CD: спершу diff, потім синхронізація

«Показати diff» відображає, що змінила б синхронізація, об'єкт за об'єктом, із порівняння, яке контролер уже зробив, зі схованими значеннями Secret. Ревізія, кожен запис історії та поточна синхронізація посилаються на свій коміт на GitHub, GitLab, Gitea, Forgejo, Codeberg або Bitbucket. Відкат тепер просить ввести назву застосунку.

«Чого торкається ця синхронізація?» → трьох об'єктів, до того як ви торкнетеся.

Розблокування ключем безпеки

YubiKey або будь-який ключ FIDO2, через NFC чи USB, може замінити PIN і біометрію для блокування застосунку й запечатати збережені конфігурації так, що ніщо не прочитає їх без ключа, навіть копія сховища телефона.

«Загубили телефон?» → конфігурації запечатані ключем, якого в ньому немає.

Асистент PromQL на екрані «Метрики»

Скажіть, що хочете побачити; асистент пише запит, виконує його на вашому Prometheus, щоб перевірити, що він щось повертає, і додає панель. Необов'язково, вимкнено за замовчуванням, із вашим власним ключем Claude або OpenAI, на Android та iOS.

«Пам'ять кожного пода на w-2, стопкою» → панель, перевірено.

CAST AI на обох платформах

Рекомендації для робочих навантажень із грошима, які вони заощаджують, плани консолідації вузлів і те, що невдалий план залишив як упущені заощадження, у переробленому поданні навантажень, тепер і на iOS, і на Android.

«Що надмірно виділено?» → у рейтингу, із заощадженням.

Будь-який об'єкт у зведенні, з тим, що вам дозволено

Кожен об'єкт тепер має вкладку зведення, як початок kubectl describe: умови, власники, події за останню годину. Його дії — за один дотик, а ті, які вашому обліковому запису не дозволені, вимкнені з причиною, запитаною в API-сервера до того, як ви спробуєте.

«Чи можу я перезапустити це звідси?» → так, або чому ні.

  • Сповіщення на кожному кластері

    Фонові сповіщення, сервіси даних і домівка з довільним порядком тепер працюють на кластерах, доданих із kubeconfig, а не лише на Talos.

  • Сповіщення, що відкривають потрібний екран

    Торкніться сповіщення й потрапите на вузол, под чи резервну копію, про які йдеться, з окремим каналом Android для кожного виду, щоб вимкнути зайве.

  • Підтвердження введенням

    Видалення всіх кластерів або відкат застосунку Argo CD просить ввести його назву. Дії в один дотик розміщені там, де їхній об'єкт.

  • Однакові налаштування на обох платформах

    Android та iOS мають спільний макет налаштувань, показують, звідки надходять оновлення, і проходять перевірку доступності з читабельним щільним текстом.

Мережа, сховище та тиск

Це мережа, сховище чи вузол? Виміряйте.

Щось повільне, а кожен вузол каже Ready. Ichor вимірює зв'язок між двома вузлами, перевіряє сховище та бази даних, на яких стоять ваші застосунки, і показує, яке навантаження вузол морить голодом, просто з телефона.

Мережевий тест

Виберіть два вузли — зі списку або, на Android, просто на карті кластера, — і Ichor виміряє їх за допомогою netperf, як це робить cilium connectivity perf, з будь-яким CNI: пропускну здатність TCP, а потім затримку p50, p90 і p99, від пода до пода й, за бажанням, від хоста до хоста. Результати зберігаються й відображаються на графіку з часом.

«Новий комутатор хоч трохи швидший?» → виміряно.

Сервіси даних

Ichor розпізнає в кластері Longhorn, CloudNativePG, Garage, Rook Ceph, MariaDB, Percona і Dragonfly та перевіряє їх: деградовані томи та їхні репліки, екземпляри Postgres і застарілі чи невдалі резервні копії, знімки CSI та CronJob резервного копіювання, вузли Garage, master і репліки Dragonfly. Кожна проблема називає вузол, що за нею стоїть. Підвищте репліку, виконайте failover, врятуйте том або зробіть його знімок просто з рядка, а необов’язкові сповіщення повідомлять, коли том дає збій, диск заповнюється або резервне копіювання зупиняється.

«Чи спрацювала нічна резервна копія?» → так, або чому ні.

Argo CD

Коли в кластері працює Argo CD, Ichor показує його застосунки з їхнім станом здоров’я та синхронізації, стежить за синхронізацією хвиля за хвилею і дає змогу синхронізувати, оновити, перервати синхронізацію, призупинити автосинхронізацію або відкотитися. Він працює з ресурсами Application через адмінський kubeconfig, який видає Talos: без токена Argo CD, а застосунок, яким керує ApplicationSet, ніколи не змінюється за його спиною.

Застосунок, якого Ichor не розпізнає, наприклад власний проєкт, може мати свій логотип завдяки анотації ichor.levis.name/icon: назва з Dashboard Icons, посилання https на PNG чи WebP (завантажується лише тоді, коли ви дозволили завантаження значків) або саме зображення, вбудоване в base64.

kubectl -n argocd annotate application my-site \
  ichor.levis.name/icon=https://example.org/logo.png

«Чому цей застосунок деградував?» → под і вузол.

Тиск на вузли й cgroups

Скільки робота на вузлі чекає на процесор, пам’ять чи диск, на графіку за останні п’ять хвилин, разом з навантаженням, яке чекає найдовше, OOM-завершеннями та контейнерами, близькими до ліміту пам’яті. Вкладка Cgroups, як talosctl cgroups, розкладає все це за сервісами, подами й контейнерами.

«Хто поїдає w-2?» → названо.

Для цього потрібен сертифікат os:admin. Мережевий тест запускає свої поди в окремому просторі імен з обмеженим профілем безпеки подів і потім видаляє його; кожне вимірювання завантажує з’єднання на 5–20 секунд. Збережені результати залишаються зашифрованими на телефоні й не потрапляють у резервні копії, а сповіщення сервісів даних вимкнені, доки ви їх не ввімкнете.

  • Карта кластера

    На Android екран KubeSpan малює ваші сайти, вузли й тунелі — працюють, деградовані чи впали — із прапорцем для кожної зони. Торкніться двох вузлів, щоб перевірити з’єднання між ними.

  • Відкрийте застосунок у браузері

    Картка застосунку містить його вебадреси, знайдені в Ingress і HTTPRoute з Gateway API, що на нього вказують, — за одним дотиком.

  • Знаходить ваш кластер у локальній мережі

    Жоден endpoint не відповідає звідси? На Android Ichor шукає в локальній мережі вузли, що приймають ваші облікові дані, і дає змогу редагувати endpoint-и вручну.

  • Готові команди для налагодження

    Близько 40 команд netshoot для DNS, MTU, TLS, KubeSpan та іншого — за одним дотиком в оболонці налагодження, тож клавіатура телефона майже не знадобиться.

Застосунки й Kubernetes

Знайте, що працює у вашому кластері, і підштовхніть, коли щось застрягло.

Talos каже, що з вузлами все гаразд. Але чи оновлена Grafana, чому один агент Cilium досі на старій версії і який под зациклився на падіннях? Тепер Ichor показує програмне забезпечення, що працює в кластері, а з сертифікатом адміністратора перезапускає робоче навантаження чи видаляє завислий под без ноутбука.

Інвентар застосунків

Кожен контейнер на кожному вузлі, згрупований у застосунки, які ви впізнаєте, з їхніми логотипами: Home Assistant, Immich, стек *arr, Longhorn, Cilium і ще близько 400. Sidecar-и та init-контейнери приєднуються до свого застосунку, а Ichor позначає застосунок, що працює у двох версіях одночасно, або незакріплений образ :latest.

«Усе вже на новій версії?» → один погляд.

Робочі навантаження і перезапуск розгортання

Deployments, StatefulSets і DaemonSets з їхньою готовністю та станом розгортання — спершу ті, що потребують уваги. Перезапустіть будь-яке поступовим оновленням, як kubectl rollout restart, після підтвердження, яке попереджає, якщо працює лише один под. Потім розгортання показується наживо, старі й нові поди, доки кожен новий под не стане готовим; закрийте його будь-коли, розгортання триває.

«Його треба просто штурхнути.» → штурхнуто, не встаючи з ліжка.

Поди, проблемні першими

Кожен под зі статусом, який показує kubectl get pods (CrashLoopBackOff, Init:Error, Terminating), його перезапусками та вузлом. Видаліть завислий под, щоб його контролер запустив свіжу копію; підтвердження скаже, чи щось його відновить.

«Чому він досі перезапускається?» → видалено, створено заново.

CronJobs на вимогу

Кожен CronJob з розкладом, наступним запуском і результатами останніх запусків, спершу ті, що з помилкою або виконуються. Запустіть будь-який просто зараз, як kubectl create job --from, після підтвердження: Job належить своєму CronJob, тож історія та очищення діють і далі.

Дайте кожному логотип, назву й рядок опису через мітку або анотацію; без іконки Ichor бере іконку застосунку, якому належить його образ, інакше годинник. Встановіть ichor.levis.name/trigger=false, щоб job запускався лише за розкладом.

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 лише для читання, а логотипи вбудовані в застосунок, тож нічого не шукається в мережі. Робочі навантаження й поди використовують адміністраторський kubeconfig, який видає Talos, і він зберігається лише в пам’яті. Режим знімків екрана приховує всі логотипи, а також адреси й імена вузлів.

  • «Не вдається зв’язатися з кластером» — з поясненням

    VPN вимкнено або ви не в тій мережі? Замість стіни червоних вузлів — одне повідомлення з причиною, яке саме повторює спроби й відновлюється тієї ж миті, коли з’єднання повертається.

  • Докази до кожного інциденту

    Записані інциденти тепер зберігають стани сервісів і зміни мережевих з’єднань, зафіксовані на той момент, а технічні подробиці — за одним дотиком.

  • Логотипи для решти, якщо хочете

    Для застосунків поза 400 вбудованими Ichor може завантажити логотип із відкритого набору Dashboard Icons. Типово це вимкнено й надсилається лише публічна назва значка.

  • Розбіжність версій — помічено

    Один вузол досі на старому Cilium, забутий тег :latest: застосунки, що потребують уваги, підраховано просто на огляді.

Аналіз кластера

Годі гадати, що змінилося. Ваш телефон це бачив.

Третя ночі, вузол то падає, то піднімається, а ноутбук в іншій кімнаті. Аналіз кластера перетворює Ichor зі сторінки стану на набір для пошуку несправностей: знайдіть вузол, що відхилився, запишіть інцидент, поки він розгортається, і подивіться, який ресурс насправді задихається. І все це із сертифікатом os:reader лише для читання.

Відхилення конфігурації

Той єдиний робочий вузол з іншим MTU, забутий NTP-сервер, розширення, що лишилося після оновлення. Ichor порівнює DNS, NTP, MTU, версії розширень, Secure Boot, UKI та версії Talos у межах кожної ролі або зі збереженим еталоном і вказує на той, що вибивається.

«Чому повільний лише w-3?» → знайдено.

Запис інцидентів

Натисніть «запис», поки все відбувається, і Ichor складе хронологію тривалістю до десяти хвилин: події Talos наживо, а також готовність вузлів, сервіси, з’єднання та мережеві лічильники, виміряні кожні п’ять секунд. Хронологію збережено й підготовлено для розбору інциденту.

«Що зламалося першим?» → це є в хронології.

Показники вузьких місць

Високе навантаження — але це процесор, диск, мережа чи галасливий сусід на гіпервізорі? Вкладка «Наживо» тепер показує очікування вводу/виводу та викрадений час ВМ, пропускну здатність і час вводу/виводу для кожного диска, а також пропускну здатність, помилки й відкинуті пакети для кожного інтерфейсу — без фальшивих стрибків після перезавантаження.

«Це диск?» → тепер ви знаєте.

Еталони й записи шифруються на телефоні, зберігаються окремо для кожного кластера й ніколи не потрапляють у резервні копії. Жодні конфігурації машин, kubeconfig чи сирі журнали не збираються, а все можна видалити з екрана аналізу.

  • Знаходить вузли, про які ви забули

    У вашому talosconfig лише один endpoint? Ichor запитає в кластера його учасників і запропонує додати відсутні вузли одним дотиком.

  • Wake-on-LAN

    Розбудіть вимкнений вузол з його меню дій. Ichor запам’ятовує мережеві карти кожного вузла, поки той працює, тож ви зможете його розбудити, навіть якщо нічого не налаштовували.

  • Спробуйте без кластера

    Вбудоване демо працює офлайн з п’ятьма зразковими вузлами, метриками наживо, журналами, etcd та іншим. Перегляньте все, перш ніж імпортувати хоч одну конфігурацію.

  • Безпечніший імпорт, швидше перемикання

    Імпорт контексту зі знайомою назвою ніколи не перезаписує кластер. Утримуйте значок застосунку, щоб одразу перейти до будь-якого кластера.

Як це виглядає

Справжні екрани з робочого кластера, зняті в режимі знімків екрана: адреси й імена вузлів замінено на умовні.

Екран огляду кластера в Ichor для Talos Linux
Огляд кластераУсі вузли з першого погляду і банер, коли виходить новіша версія Talos.
Екран сервісів в Ichor для Talos Linux
СервісиСтан кожного сервісу Talos, з перезапуском для операторів.
Екран журналів ядра й сервісів в Ichor для Talos Linux
Журнали ядра й сервісівКольори за рівнем, згорнуті повтори, фільтр попереджень чи помилок.
Екран подій в Ichor для Talos Linux
ПодіїЗміни сервісів і стани вузлів у міру того, як вони відбуваються.
Екран графіків наживо в Ichor для Talos Linux
Графіки наживоПроцесор, пам’ять, мережа, диск і навантаження кожні дві секунди.
Екран захоплення пакетів в Ichor для Talos Linux
Захоплення пакетівСписок пакетів наживо, збережений як .pcap для Wireshark.
Екран оновлення Talos в Ichor для Talos Linux
Оновлення TalosВаш образ інсталятора з новою версією, після попередніх перевірок.

Команди talosctl, якими ви користуєтеся, — у вигляді екранів

Усе працює через офіційний Go-клієнт Talos, тож контексти talosconfig, mTLS і проксіювання від endpoint до вузла поводяться точнісінько як у talosctl.

Замість Відкрийте Роль
talosctl get machinestatus Огляд кластераКожен вузол: готовий, не готовий чи недоступний, з невиконаними умовами, дрейфом годинника та доступними оновленнями Talos. reader
talosctl services, talosctl logs -f Сервіси й журналиСтан сервісів і журнали сервісів чи ядра з кольорами за рівнем, згорнутими повторами та режимом стеження наживо. reader
talosctl events Хронологія подійЗміни сервісів, фази завантаження та зміни адрес у всьому кластері — у міру того, як вони відбуваються. reader
talosctl dashboard, talosctl processes Графіки наживо й процесиПроцесор, пам’ять, мережа, диск і навантаження кожні дві секунди, а також список процесів, відсортований за процесором чи пам’яттю. reader
talosctl get members Виявлення вузлівУчасники кластера, на яких ваш talosconfig ще не націлений, додаються до контексту одним дотиком, а на Android — пошук у локальній мережі, коли жоден endpoint не відповідає. reader
diff of talosctl get … on every node Відхилення конфігураціїDNS, NTP, MTU, розширення, Secure Boot, UKI та версії Talos, порівняні в межах ролі або зі збереженим еталоном. reader
talosctl events + watch, in a terminal Запис інцидентівПодії та виміряний стан вузлів, сервісів і мережі, зведені в одну збережену хронологію. reader
talosctl read /proc/stat, /proc/diskstats Показники вузьких місцьОчікування вводу/виводу, викрадений час, ввід/вивід кожного диска, помилки й відкинуті пакети кожного інтерфейсу — наживо. reader
talosctl containers -k ПодиКонтейнери, згруповані за подами, з процесором і пам’яттю. reader
talosctl containers -k on every node Інвентар застосунківПрограмне забезпечення, що працює в кластері, згруповане в застосунки з логотипами, версіями, розбіжністю версій і незакріпленими образами. reader
talosctl get links, talosctl netstat МережаІнтерфейси, адреси, маршрути, DNS- і NTP-сервери та відкриті з’єднання. reader
talosctl apply-config --mode try Конфігурація машиниКонфігурація вузла поле за полем або як YAML; секрети приховано, доки ви їх не відкриєте. Відредагуйте її та випробуйте зміну: вузол сам повернеться назад, якщо ви її не збережете. admin
talosctl etcd status, etcd snapshot etcdУчасники, лідер, розмір і тривоги, дефрагментація та знімок, збережений на телефон. reader / backup
talosctl get kubespanpeerstatuses KubeSpanПіри кожного вузла: стан, endpoint, останнє рукостискання й трафік, а на Android — карта сайтів, вузлів і тунелів. reader
talosctl service restart Керування службамиЗапуск, зупинка чи перезапуск служби, з попередженням для критичних. operator
talosctl reboot -m powercycle Перезавантаження, вимкнення та пробудженняКоректно, циклом живлення чи примусово — після того, як ви введете ім’я хоста для підтвердження. Розбудіть вимкнений вузол через Wake-on-LAN. operator
talosctl pcap Захоплення пакетівСписок пакетів наживо з розібраними подробицями, збережений як .pcap, щоб відкрити у Wireshark. operator
talosctl upgrade Оновлення TalosПо одному вузлу, з відмовою, якщо etcd втратить кворум, і з прогресом, доки вузол не повернеться. admin
kubectl get deploy,sts,ds, kubectl rollout restart Робочі навантаження KubernetesГотовність і стан розгортання кожного Deployment, StatefulSet і DaemonSet, а також поступовий перезапуск після підтвердження. admin
kubectl get cronjobs, kubectl create job --from CronJobs KubernetesРозклад, наступний запуск і останні запуски кожного CronJob, з іконкою та назвою, які ви йому дали, і ручний запуск після підтвердження. admin
kubectl get pods, kubectl delete pod Поди KubernetesСтатус подів, готовність, перезапуски та вузол, проблемні першими; видаліть завислий под, щоб його контролер створив його заново. admin
cilium connectivity perf, netperf Мережевий тестПропускна здатність TCP і затримка від p50 до p99 між двома вузлами, від пода до пода чи від хоста до хоста, збережені й показані на графіку з часом. admin
kubectl get volumes.longhorn.io, clusters.postgresql.cnpg.io Служби данихТоми Longhorn, кластери CloudNativePG та їхні резервні копії, Garage, Rook Ceph, MariaDB, Percona і Dragonfly, з вузлом за кожною проблемою та виправленням просто в рядку. admin
talosctl cgroups Тиск на вузли й cgroupsТиск на процесор, пам’ять і диск, навантаження, яке чекає найдовше, OOM-завершення та використання за сервісами, подами й контейнерами. admin
talosctl config new Видача talosconfigПоновіть сертифікат цього телефона або створіть сертифікат лише для читання для іншого пристрою у вигляді QR-коду. admin
talosctl rotate-ca Заміна CA TalosКожен вузол довіряє новому 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 Оновлення кластераКожен вузол один за одним, за потреби спершу злитий, і Kubernetes після пробного запуску, з попередженням, коли розширення не має збірки для цільової версії. admin
talosctl apply-config --insecure, talosctl reset Додати, замінити, скинути вузолОгляньте вузол у режимі обслуговування, надішліть йому конфігурацію, створену з наявного члена, і стежте, доки він не приєднається; замініть вузол control plane за покроковим планом; скиньте або зітріть вузол — з відмовою, якщо etcd зламався б. admin
talosctl etcd defrag, alarm disarm, bootstrap --recover-from Ремонт etcdВиправте тривогу NOSPACE одним дотиком (знімок, дефрагментація, зняття тривоги, перевірка) і відновіть etcd зі знімка. admin
talosctl get disks, volumestatus Сховище й обладнанняРозділи, вільне місце та шифрування кожного диска, сенсори, частота й тротлінг процесора, а також запасні частини для сервера. reader
kubectl get all -A, kubectl describe, kubectl scale Будь-який об’єкт KubernetesОглядач усіх видів, кожен об’єкт зі зведенням умов, власників і подій, YAML із підказками схеми, масштабування, видалення та дії, які дозволяє ваш RBAC. RBAC
kubectl get svc,jobs,pvc,hpa, kubectl top Сервіси, Jobs, сховище, автомасштабування, ємністьАдреси й маршрути, пули балансувальників, стан і власник Job, заявки та їх заповнення, HPA, KEDA, VPA і Karpenter, вільне місце на кожен кластер і ціна втрати вузла. 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 із запуском, зупинкою, перезапуском, міграцією, паузою та послідовною консоллю в терміналі застосунку. RBAC
helm rollback, velero restore, kubectl apply --dry-run Helm, Velero та YAMLВідкотіть випуск Helm із його хуками, відновіть резервну копію Velero з попереднім переглядом і зіставленням просторів імен, запустіть розклад зараз і застосуйте вставлений YAML після diff пробного запуску. RBAC
kubectl argo rollouts, kubectl get managed, tailscale Argo Rollouts, Crossplane, Tailscale, Cluster APIПросувайте, перервіть або повторіть rollout; призупиніть, відновіть або узгодьте ресурс Crossplane; конектори та групи проксі; кластери, машини та сервери Sidero Metal. RBAC
grype, trivy image Сканування образівВразливості образів пода, робочого навантаження чи системних образів Talos вузла, звіти зберігаються з позначкою нового з часу останнього сканування. reader
git checkout -b, git commit, gh pr create Git і pull requestПереглядайте й шукайте файли, які розгортає застосунок, редагуйте один чи кілька, перегляньте diff і його збірку kustomize та відкрийте pull request на GitHub, GitLab, Gitea або Forgejo. Git token
a shell script of kubectl and talosctl calls РанбукиВпорядкований список власних дій застосунку, імпортований із попереднім показом плану, виконуваний із підтвердженням на кожен руйнівний крок. per step
kubectl get <your CRD> ПлагіниДванадцять вбудованих операторів і ваші власні CRD, описані в одному файлі YAML, з картками, діями та знахідками, які потрапляють у перевірку стану та сповіщення. RBAC

Телефон отримує лише той доступ, який ви йому дали

Згенеруйте окремий talosconfig для телефона. Застосунок читає його ролі й показує лише те, що дозволяє цей сертифікат. Якщо телефон загубиться, сертифікат не дасть нічого понад це, і термін його дії мине сам собою.

Оператор

os:operator

Усе, що й у режимі лише читання, а також перезавантаження, вимкнення, перезапуск сервісів і захоплення пакетів.

Адміністратор

os:admin

Додає перевірку стану, конфігурацію машини, оновлення Talos і Kubernetes, додавання, заміну та скидання вузлів, ремонт etcd, видачу talosconfig, експорт kubeconfig, оболонки налагодження, мережеві тести, тиск на вузол і всі екрани Kubernetes через адміністративний kubeconfig, який видає Talos. На кластері з kubeconfig те, що вам дозволено, визначає ваш RBAC, і це з’ясовується до того, як ви торкнетеся.

talosconfig шифрується ключем, що зберігається в чипі безпеки телефона: StrongBox або TEE на Android, Secure Enclave на iPhone. Необов’язкове блокування відбитком пальця, Face ID чи PIN-кодом захищає застосунок і кожне перезавантаження.

Станьте бета-тестером у Play Store

Ichor проходить закрите тестування в Google Play перед публічним випуском. Установити її можуть лише облікові записи зі списку тестерів, тому це два кроки.

  1. Потрапте до списку тестерів

    Приєднуйтесь до тестерів у Discord або надішліть адресу облікового запису Google, який ваш телефон використовує для Play Store.

    Відкриється ваш поштовий застосунок із повідомленням, готовим до надсилання на ichorformobile@proton.me; через цей сайт нічого не проходить.

  2. Установіть із Google Play

    Щойно ваш обліковий запис буде в списку, відкрийте посилання на Play Store на своєму Android-телефоні й установіть Ichor.

    Не з телефона? Долучіться до тесту в браузері з тим самим обліковим записом Google.

Попросіть плагін за його CRD

Будь-який оператор із публічною CRD може стати плагіном Ichor. Дайте посилання на його маніфест CRD: з нього відкривається чернетка pull request, а мейнтейнер переглядає та перекладає її. Спершу перегляньте відкриті запити: вподобайка на одному з них важить стільки ж, скільки новий запит.

Відкриється попередньо заповнена issue на GitHub, де ви входите й надсилаєте її; через цей сайт нічого не проходить.

Встановлення

  1. Створіть talosconfig для телефона

    На робочій машині підпишіть сертифікат лише для читання на одному вузлі control plane, а потім виведіть список своїх вузлів.

    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> …
  2. Встановіть застосунок

    На Android долучіться до бети в Play Store й установіть Ichor із Google Play.

  3. Імпортуйте конфігурацію

    Виберіть файл, вставте його або відскануйте як QR-код:

    qrencode -t ansiutf8 -r talosconfig-phone

    Завеликий для одного QR-коду? Стисніть його, застосунок його розпакує:

    gzip -9 < talosconfig-phone | qrencode -8 -t ansiutf8

Android

Android 8 і новіші, з Google Play, поки Ichor у беті. Оновлення надходять через Play Store.

Долучитися до бети

iPhone

iOS 17 і новіші. Кожен випуск містить непідписаний IPA: встановіть його через Sideloadly або AltStore, які підпишуть його вашим Apple ID.

Останній випуск

Чому Ichor

Одна вена тримала бронзового велетня живим. Пильнуйте свою.

У грецьких міфах Талос був бронзовим велетнем, що охороняв Крит, тричі на день обходячи його береги. Єдина вена тяглася від його шиї до щиколотки й несла іхор — золоту кров богів. Доки струменів іхор, Талос стояв.

Ваш кластер теж має пульс: вузли готові, сервіси справні, etcd має кворум. Ichor — це застосунок, який ви відкриваєте, щоб його перевірити, звідусіль, і який торкнеться вашого плеча, коли пульс зіб’ється.

Питання

Чи можна спробувати без кластера Talos?

Так. Торкніться «Спробувати демо» на екрані імпорту: офлайн-кластер із п’яти зразкових вузлів із метриками наживо, сервісами, журналами, подіями, etcd і мережею. Він чітко позначений як демонстраційні дані, може співіснувати з вашими справжніми кластерами й видаляється в розділі «Керувати кластерами».

Чи працює без Talos, на EKS, GKE або AKS?

Так. Додайте кластер із kubeconfig або перелічіть кластери облікового запису AWS, Google Cloud, Azure, DigitalOcean чи Rancher і додайте обрані. Вхід, який виконав би exec-плагін kubeconfig, натомість відбувається на телефоні: IAM Identity Center, Entra ID, ключ сервісного облікового запису або OIDC у браузері. Екрани Talos приховані; усі екрани Kubernetes, фонові сповіщення та сервіси даних на місці, а що вам дозволено — визначає ваш RBAC.

Мого оператора немає в списку. Чи може застосунок його показати?

Так. Плагін описує користувацький ресурс в одному файлі YAML: що читати, що вважати здоровим, картки, дії та знахідки. Дванадцять операторів постачаються як вбудовані плагіни, а свої можна імпортувати з вставлення, файлу, https-посилання чи QR-коду; Налаштування → Плагіни показує, що кожен із них читає та може змінювати, перш ніж ви його ввімкнете. Формат описано в довіднику плагінів, а форма запиту перетворює публічне посилання на CRD у чернетку pull request.

Ichor — офіційний застосунок Sidero Labs?

Ні. Ichor — незалежний клієнт для Talos Linux, створений спільнотою. Він використовує відкриту Go-бібліотеку клієнта від Sidero, але Sidero Labs його не створювала, не схвалювала й не підтримує.

Чи треба щось встановлювати в кластер?

Ні. Ichor працює з Talos API, який уже надає кожен вузол, через talosconfig, точнісінько як talosctl. Жодного агента, оператора чи сервера-посередника. Екрани Kubernetes використовують адміністраторський kubeconfig, який Talos видає для сертифіката адміністратора, і він зберігається лише в пам’яті. Єдиний виняток — мережевий тест: він запускає короткочасні поди netperf в окремому просторі імен і видаляє його після завершення.

Куди потрапляють мої дані?

Лише на ваші вузли. Застосунок перевіряє нові випуски на GitHub, і більше нічого не залишає телефон, якщо ви цього не ввімкнете. Діагностику ШІ типово вимкнено; вона спершу показує вам точний звіт і надсилає його, лише коли ви торкнетеся «Запитати», за бажанням приховавши імена та адреси. Завантаження логотипів для застосунків поза вбудованими теж типово вимкнено, і надсилається лише публічна назва значка, ніколи не назви ваших образів.

Чи може він зламати мій кластер?

Не із сертифікатом лише для читання: Talos API відхиляє будь-які зміни. Із сертифікатом оператора чи адміністратора ризиковані дії просять ввести ім’я хоста вузла, а оновлення відхиляються, якщо etcd втратить кворум.

Як перейти на новий телефон?

Створіть резервну копію кластерів і налаштувань у «Налаштуваннях», зашифровану парольною фразою. На новому телефоні торкніться «Відновити резервну копію» на першому екрані або, на Android, відкрийте файл резервної копії з файлового менеджера. Резервні копії переносяться між Android та iPhone.

Чи підтримує він кілька кластерів?

Так. Імпортуйте скільки завгодно talosconfig чи контекстів, перемикайтеся між ними із заголовка й призначте кожному кластеру власний колір, щоб завжди знати, де ви.

Ваш кластер має пульс. Носіть його з собою.

Встановіть Ichor за хвилину, відкрийте демо, а потім під’єднайте його до власного кластера із сертифікатом лише для читання. Безкоштовно, з відкритим кодом, без облікового запису.

Підтримайте проєкт

Ichor безкоштовний, без реклами й стеження. Виявлення відхилень, запис інцидентів і всі можливості на цій сторінці створюються відкрито. Якщо Ichor вберіг вас від походу до ноутбука, допоможіть профінансувати наступні кроки через GitHub Sponsors або криптовалютою.