Запуск OBI як самостійного процесу

Дізнайтеся, як налаштувати та запустити OBI як самостійний процес Linux.

OBI може працювати як самостійний процес ОС Linux з підвищеними привілеями, який може перевіряти інші процеси, що виконуються.

Завантаження та перевірка

OBI надає скомпільовані двійкові файли для Linux (amd64 і arm64). Завантажте останню версію можна з сторінки випусків OBI на GitHub. Кожен випуск містить:

  • obi-v<version>-linux-amd64.tar.gz — архів Linux AMD64/x86_64
  • obi-v<version>-linux-arm64.tar.gz — архів Linux ARM64
  • obi-v<version>-linux-amd64.cyclonedx.json — CycloneDX SBOM для архіву AMD64
  • obi-v<version>-linux-arm64.cyclonedx.json — CycloneDX SBOM для архіву ARM64
  • obi-v<version>-source-generated.cyclonedx.json — CycloneDX SBOM для архіву згенерованого з вихідного коду
  • obi-java-agent-v<version>.cyclonedx.json — CycloneDX SBOM для вбудованого Java-агента та його залежностей
  • SHA256SUMS — Контрольні суми для перевірки архівів випуску та SBOM активів

Образи контейнерів для того ж випуску також публікуються. Для інструкцій щодо завантаження образу та перевірки підпису дивіться Запуск OBI як контейнера Docker.

Встановіть потрібну вам версію для вашої архітектури:

# Вкажіть потрібну версію (дивіться останню версію на
# https://github.com/open-telemetry/opentelemetry-ebpf-instrumentation/releases)
VERSION=0.6.0

# Визначте вашу архітектуру
# Для Intel/AMD 64-bit: amd64
# Для ARM 64-bit: arm64
ARCH=amd64

# Завантажте архів для вашої архітектури
wget https://github.com/open-telemetry/opentelemetry-ebpf-instrumentation/releases/download/v${VERSION}/obi-v${VERSION}-linux-${ARCH}.tar.gz

# Завантажте файл контрольних сум
wget https://github.com/open-telemetry/opentelemetry-ebpf-instrumentation/releases/download/v${VERSION}/SHA256SUMS

# Перевірте архів
sha256sum -c SHA256SUMS --ignore-missing

# Розпакуйте архів
tar -xzf obi-v${VERSION}-linux-${ARCH}.tar.gz

Успішна перевірка повідомляє, що вимоги Cosign були підтверджені, і показує підписаний дайджест образу:

obi-v${VERSION}-linux-${ARCH}.tar.gz: OK

Якщо перевірка не вдалася, sha256sum повідомляє FAILED. У такому випадку:

  • переконайтеся, що VERSION відповідає архіву та файлу SHA256SUMS, які ви завантажили
  • видаліть будь-які частково завантажені файли та завантажте їх знову
  • перевіряйте лише ті файли, які ви фактично завантажили з цього випуску

Архів містить:

  • obi — основний виконуваний файл OBI
  • k8s-cache — двійковий файл для кешу Kubernetes
  • LICENSE — ліцензія проєкта
  • NOTICE — інформація про юридичні аспекти
  • NOTICES/ — ліцензії та визнання третіх осіб

SBOMs

Файли CycloneDX SBOM є необов’язковими метаданими для перевірки ланцюга постачання та автоматизації. Вони не потрібні для встановлення або запуску OBI.

Опубліковані SBOM описують вміст бінарних архівів та вбудованих компонентів у форматі CycloneDX JSON. Вони можуть використовуватися зі стандартними інструментами SBOM для перевірки залежностей, ліцензій та компонентів без виконання бінарних файлів.

Завантажте SBOM, які ви хочете перевірити:

# SBOM для завантаженого бінарного архіву
wget https://github.com/open-telemetry/opentelemetry-ebpf-instrumentation/releases/download/v${VERSION}/obi-v${VERSION}-linux-${ARCH}.cyclonedx.json

# SBOM для вбудованого Java-агента та його залежностей Java
wget https://github.com/open-telemetry/opentelemetry-ebpf-instrumentation/releases/download/v${VERSION}/obi-java-agent-v${VERSION}.cyclonedx.json

# Необов'язково: перевірте завантажені файли SBOM за допомогою SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing

Приклади команд для перевірки:

# Перелік імен компонентів та версій з архівного SBOM
jq '.components[] | {name, version}' obi-v${VERSION}-linux-${ARCH}.cyclonedx.json

# Перевірка SBOM за допомогою Grype
grype sbom:obi-v${VERSION}-linux-${ARCH}.cyclonedx.json

# Перегляд графу залежностей Java-агента
jq '.components[] | {name, version}' obi-java-agent-v${VERSION}.cyclonedx.json

Встановлення в систему

Після розпакування архіву ви можете встановити бінарні файли в теку, що знаходиться у вашому PATH, щоб їх можна було використовувати з будь-якої теки.

У наведеному нижче прикладі встановлюється в /usr/local/bin, що є стандартним місцем розташування в більшості дистрибутивів Linux. Ви можете встановити в будь-яку іншу теку у вашому PATH:

# Перенесення бінарних файлів у теку у вашому PATH
sudo cp obi /usr/local/bin/

# Перевірка встановлення
obi --version

Налаштування OBI

  1. Створіть файл конфігурації відповідно до документації параметрів конфігурації. Ви можете розпочати з прикладу YAML конфігурації OBI.

  2. Запустіть OBI як привілейований процес:

    sudo obi --config=<path to config file>
    

    Якщо ви встановили OBI в теку, що відсутня у вашому PATH, ви можете запустити його з розпакованої теки:

    sudo ./obi --config=<path to config file>
    

Дозволи

OBI вимагає підвищених привілеїв для належного функціонування. Для отримання додаткової інформації про конкретні можливості, які потрібні, дивіться документацію безпеки.


Востаннє змінено December 26, 2024: [uk] Ukrainian documentation for OpenTelemetry (091c99cf)