Fluent-Package-Builder (früher bekannt als td-agent-builder, wurde im August 2021 umbenannt) ist ein neues Build-System für td-agent, das das traditionelle Build-System omnibus-td-agent ersetzen soll, da es mehrere Probleme hat aufgrund der Einschränkungen von Omnibus.
HINWEIS: Es wurde besprochen, warum ein Rebranding erforderlich ist. Rebranding td-agent-builder
td-agent
wurde in fluent-package
umbenanntfluent-package
wurde so geändert, dass es unter /opt/fluent
installiert wird/usr/sbin/td-agent
und /usr/sbin/td-agent-gem
wurden in /usr/sbin/fluentd
und /usr/sbin/fluent-gem
geändert/opt/fluent/share/fluentd.conf
geändertfluentd-apt-source
wurde zur Aufrechterhaltung von apt-line und keyring in fluent-apt-source
Deb-Paket umbenanntembedded
Verzeichnis per Omnibus/opt/td-agent/bin/fluent-cat
anstelle von /opt/td-agent/embedded/bin/fluent-cat
apt install
. Anschließend können Sie td-agent über apt install td-agent
installieren.Siehe auch dieses Problem für Omnibus-Probleme.
Nach der Installation der oben genannten Software müssen Sie zusätzliche Funktionen über PowerShell aktivieren (als Administrator).
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
dism.exe /online /enable-feature /featurename:Containers /all /norestart
Starten Sie dann Windows neu.
% rake yum:build
Standardmäßig werden Yum-Repositorys für die folgenden Plattformen im Verzeichnis fluent-package/yum/repositories/ erstellt:
Sie können Zielplattformen anhand der Umgebungsvariablen YUM_TARGETS
wie folgt auswählen:
% rake yum:build YUM_TARGETS= " rockylinux-8,almalinux-9 "
Weitere unterstützte Plattformen finden Sie im Verzeichnis fluent-package/yum.
Sie können auch Pakete für AArch64-Plattformen wie folgt erstellen:
% rake yum:build YUM_TARGETS= " amazonlinux-2023-aarch64 "
Wenn Sie jedoch ältere GNU/Linux-Plattformen (z. B. Ubuntu 18.04 oder früher) als Host-Betriebssystem verwenden, müssen Sie qemu-aarch64-static in das Basisverzeichnis des Ziels kopieren:
% export TARGET_BASE= " centos-8 "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-aarch64-static fluent-package/yum/ ${TARGET_BASE}
% rake yum:build YUM_TARGETS= " ${TARGET_BASE} -aarch64 "
Sie können auch Pakete für die ppc64le-Plattform wie folgt erstellen:
% rake yum:build YUM_TARGETS= " centos-8-ppc64le "
Wenn Sie jedoch ältere GNU/Linux-Plattformen (z. B. Ubuntu 18.04 oder früher) als Host-Betriebssystem verwenden, müssen Sie qemu-ppc64le-static in das Basisverzeichnis des Ziels kopieren:
% export TARGET_BASE= " centos-8 "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-ppc64le-static fluent-package/yum/ ${TARGET_BASE}
% rake yum:build YUM_TARGETS= " ${TARGET_BASE} -ppc64le "
% rake apt:build
Standardmäßig werden apt-Repositorys für die folgenden Plattformen im Verzeichnis fluent-package/apt/repositories/ erstellt:
Sie können Zielplattformen anhand der Umgebungsvariablen APT_TARGETS
wie folgt auswählen:
% rake apt:build APT_TARGETS= " debian-bookworm,ubuntu-jammy "
Weitere unterstützte Plattformen finden Sie im Verzeichnis fluent-package/apt.
Sie können auch Pakete für AArch64-Plattformen wie folgt erstellen:
% rake apt:build APT_TARGETS= " ubuntu-jammy-arm64 "
Wenn Sie jedoch ältere GNU/Linux-Plattformen (z. B. Ubuntu 18.04 oder früher) als Host-Betriebssystem verwenden, müssen Sie qemu-aarch64-static in das Basisverzeichnis des Ziels kopieren:
% export TARGET_BASE= " ubuntu-bionic "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-aarch64-static fluent-package/apt/ ${TARGET_BASE}
% rake apt:build APT_TARGETS= " ${TARGET_BASE} -arm64 "
% rake msi:build
Ein fluent-package-${version}-x64.msi-Paket wird im Verzeichnis fluent-package/msi erstellt.
Sie können mit MSYS2 für die C-Erweiterungs-Gem-Erstellung verwenden.
MSI enthalten Ruby kann die MSYS2-Umgebung erkennen. Sie können also die im Lieferumfang enthaltene C-Erweiterung gem mit MSYS2 installieren.
z.B)
Bereiten Sie die Gem-Building-Umgebung für die C-Erweiterung vor:
cmd> ridk install 2
...
cmd> ridk install 3
Gem über ridk exec fluent-gem install
installieren:
cmd> ridk exec fluent-gem install winevt_c
% sudo mkdir /opt/fluent
% sudo chown $( whoami ) /opt/fluent
% rake dmg:selfbuild
Ein fluent-package-${version}.dmg-Paket wird im Verzeichnis fluent-package/dmg erstellt.
Das erstellte Paket von GitHub Actions kann unter macOS 10.15 (Catalina) ausgeführt werden.
Stellen Sie sicher, dass Sie eine Genehmigung für den unterstützenden Zugang haben. Unter Systemeinstellungen > Sicherheit & Datenschutz > Datenschutz > Barrierefreiheit sollten Sie dort Terminal.app zulassen.
HINWEIS: Da die Autorisierung auf Anwendungsebene auf Terminal.app erfolgt, kann jedes von Terminal.app ausgeführte Skript GUI-Skripte ausführen.
cd fluent-package && rake lockfile:update
% cd fluent-package
% rake version:update
% git diff # Check the change log
% git commit -a
% rake apt:build
% rake yum:build
% rake msi:build
Es wird davon ausgegangen, dass Gemfile mit der Multiplattform-Funktion von Bundler funktioniert, daher muss Bundler 2.2.0 oder höher sein.