Buildroot: creando crucis suggestum firmware cum zabbix-servo

Buildroot: creando crucis suggestum firmware cum zabbix-servo

Quaestio historica

Cohortes parvae amplissimae, una ex parte, magna qualitate opus infrastructure (praesertim in lumine virtualis diffusae), e contra, difficile est eis financially novum apparatum mercari. Servo/difficile difficultates quoque communes sunt: ​​saepe 1-3 turris servientes iuxta opera usorum usorum vel in parva cellula/sponsorium sunt.

Facilius est uti conventum praeparatum (distributionem), quam modo debes mittere ad chartam microSD et in inserere in commune computatorium unius tabulae (beaglebone, raspberry pi et pi familiis aurantiis, asus tinkeris). Praeterea talis apparatus vilis est et usquam institui potest.

DE PECCATO quaestio

Multis modis consilium quoddam laboris laboratorium cum possibilitate applicandi proventus.

Zabbix magna ratio electa est quia potens est, libera et bene documenta.

Exitus cum suggestu ferramento acutus factus est, apparatus separatus sub vigilantia ponens solutionem quoque non optimam - aut pretiosum est novum apparatum mercari, aut vetus apparatum quaerere + in parvis societatibus crebra problemata cum servo/ odio.

Ratio aedificandi aedificandi utens sinit solutiones speciales creare tibi quae operari possunt per personas cum minima scientia de Linux systemata operante. Haec ratio incipientibus amica est, sed simul amplas opportunitates praebet customizationes ut periti elit. Perfectum est ad quaestionem de vilis solvendam, sed vigilantia infrastructurae IT plene functionis, cum minimis requisitis ad instituendum curatorum operantium illud.

Solutio gradus

Placuit initio firmware x86_64 creare in qemu currere, quia haec solutio opportuna et celeris est debugging. Deinde eam ad bracchium computatorium unius tabulae porto (ambam tynkarii asi probavi).

buildroot delectus aedificandi ratio. Initio, sarcina zabbix caret, ut portari debeat, problemata cum locali Russico fuerunt, quae solvuntur applicandis congruis inaequalitatibus (nota: in recentioribus versionibus aedificandi, hae inaequaliter non amplius necessariae sunt).

Involucrum zabbix ipsum portans in articulo separato describetur.

Cum omnia ut firmware operarentur (inmutabilis ratio imaginis + configuratio receptabilis imagini/databasi), necesse fuit tua systematica scuta, operas et timers scribere (scopum, servitium, timer).

Placuit media in 2 sectiones dividere - sectionem cum fasciculis systematis et sectionem cum fasciculis mutabilibus et lima zabbix database.

Problemata solvenda ad datorum pertinentia paulo difficilius evasit. Id in instrumentis directe ponere nolui. Eodem tempore, magnitudo datorum ad magnitudinem pervenire potest quae magnitudinem ramdisci possibilem excedit. Compromissum ergo solutio electa est: datorum collocatur in secunda partitione S. D. card (moderni SLC chartarum usque ad 30 cyclos scribentium), sed locus est qui admittit usum instrumentorum externorum (exempli gratia, usb- hdd).

Temperatura vigilantia per RODOS-5 fabrica impleta est. Utique, Dallas 1820 directe uti potes, sed velocior et facilius erat plug in USB.

grub86 delectus ut bootloader pro x64_2. Necessarium erat scribere minimam config ad deducendum illud.

Post debugging in qemu, ad asum tinker e tabula portabatur. Structura operimentorum mearum initio destinata erat ut crucis suggestum - collocans confis specificas singulis tabulis (tabula defconfig, bootloader, imaginem cum partitione systematis generans) et maximam uniformitatem in ratiocinandi ratio/creando imaginem cum data. Ob talem apparatum portans ocius abiit.

Maxime commendatur legere articulos introductorii:
https://habr.com/ru/post/448638/
https://habr.com/ru/post/449348/

Quomodo ergo Amasa ut convocaret

Project reponitur in github
Post persoluta repositio, sequens fasciculi structuram habebitur;

[alexey@comp monitor]$ ls -1
buildroot-2019.05.tar.gz
overlay
README.md
run_me.sh

buildroot-2019.05.tar.gz - clean buildroot archivum
deaurabis meum presul cum arbore externa. Hoc est ubi omnia opus firmware aedificandi utens constructum reponitur in.
README.md - Descriptio delineatio et manual Anglice.
run_me.sh scriptum est quod ratio aedificandi praeparat. Expande ex archivo constructum, ei annexum (per mechanismum arboris externae) et te permittit ut tabulam scopo pro contione deligat.

[0] my_asus_tinker_defconfig
[1] my_beaglebone_defconfig
[2] x86_64_defconfig
Select defconfig, press A for abort. Default [0]

Post haec, mox ad buildroot-2019.05 directorium ac mandatum currite.
Postquam constructum completum est, omnes proventus in output/images presul erunt:

[alexey@comp buildroot-2019.05]$ ls -1 output/images/
boot.img
boot.vfat
bzImage
data
data.img
external.img
external.qcow2
grub-eltorito.img
grub.img
intel-ucode
monitor-0.9-beta.tar.gz
qemu.qcow2
rootfs.cpio
sdcard.img
sys
update

Requiritur files:

  • sdcard.img - media imago ad recordationem in SD card (per dd vel rufum sub wibdows).
  • qemu.qcow2 - media imago currere in qemu.
  • external.qcow2 - externa media imago pro database
  • monitor-0.9-beta.tar.gz - archivum augendi per interface

Generatio Guides

Eadem mandata pluries scribere non valet. Maximeque logica res est eam semel in markdownum scribere, et deinde eam ad PDF pro downloading et html pro interface convertendi. Hoc fieri potest per sarcinam pandocem.

Simul, antequam imaginis systematis ratio colligitur, haec omnia generanda sunt, quae scripta post-aedificata iam inutilia sunt. Ergo generatio fit in forma sarcina manualis. Inspicere potes obducere/sarcina/manualia.

Fasciculus manuals.mk (qui totum opus facit)

################################################################################
#
# manuals
#
################################################################################

MANUALS_VERSION:= 1.0.0
MANUALS_SITE:= ${BR2_EXTERNAL_monitorOverlay_PATH}/package/manuals
MANUALS_SITE_METHOD:=local

define MANUALS_BUILD_CMDS
    pandoc -s -o ${TARGET_DIR}/var/www/manual_en.pdf ${BR2_EXTERNAL_monitorOverlay_PATH}/../README.md
    pandoc -f markdown -t html -o ${TARGET_DIR}/var/www/manual_en.html ${BR2_EXTERNAL_monitorOverlay_PATH}/../README.md
endef

$(eval $(generic-package))

systemd

Linux mundi active ad systemd moveatur, et id quoque mihi faciendum est.
Una novarum rerum iucundissima est praesentia timentium. Fere de illis singulis (et non solum de illis) scribimus, sed breviter dicam.

Sunt actiones quae periodice peragendae sunt. Mihi opus est logrotate currere ad purganda ligna et lighttpd php-fpm. Consuetum esset imperia in cron scribere, sed timer monotonic systemd uti statui. Sic logrotate decurrit ad aliquod temporis intervallum.

Certe timers ignem certis temporibus creare potest, sed non eget.
Timer exemplum:

  • Timor File
    
    [Unit]
    Description=RODOS temp daemon timer

[Timer] OnBootSec=1min
OnUnitActiveSec = 1min

[Install] WantedBy=timers.target

- Файл сервиса, вызываемого таймером:
```bash
[Unit]
Description=RODOS temp daemon

[Service]
ExecStart=/usr/bin/rodos.sh

Supported boards

Asus tynkker tabula est principalis tabula in qua omnia operari debent. Integer ut arcu et ipsum.

Beaglebone nigrum est prima tabula in qua operatio probata est (in electione potioris tabulae).

Qemu x86_64 - usus ad debugging evolutionem.

Quam operatus est

In satus, duplex scaena restitutio occasus occurrit;

  • currit occasus_restore script (per servitium). Fundamenta systematis fundamentalis restaurat - zonam temporis, loca, occasus retis etc.
  • currit scriptum (per ministerium) - zabbix hic et datorum praeparatur, IP est output ad consolatorium.

Cum primum illud inceperit, magnitudo secundae partitio chartae SD determinatur. Si spatium vacuum est, media repartitur, et sectio data totum spatium vacuum occupat. Hoc factum est ad magnitudinem imaginis institutionis reducendam (sdcard.img). Accedit, directorium postgresql hoc loco creatum est. Quam ob rem prima launch cum novo tabellario longior erit quam posteriora.

Cum iungens externam coegi, momento startup quaerit liberum coegi et format eam in ext4 cum pittacio externo.

Attendite! Cum coegi connectens externum (vel disiunctio vel reponens illud), debes facere tergum et occasus restituere!

RODOS 5 fabrica ad temperatura magna adhibita est. Fabricator praebet fontem codicem utilitatis suae ad operandum cum fabrica. Cum ratio invertitur, timor rodos incipit, qui hanc utilitatem semel in momento decurrit. Current temperies scripta est ad tabellam /tmp/rodos_current_temp, post quam zabbix hunc fasciculum sensorem monitorem potest.

Configuratio instrumentorum repositionis annectitur in directorio / data.

Incipiens rationem et eam ad operandum praeparans, sequens nuntius in consolatione apparet:

System starting, please wait

Praeparatorio opere peracto, mutabit ad IP inscriptionem ostendens:

current ip 192.168.1.32
Ready to work

Occasus sursum zabbix ad temperatus magna

Ad monitor temperatus, mox 2 gradus sume;

  • RODOS coniungere ad portum USB fabrica
  • partum data item in zabbix

Aperi interface zabbix telam:

  • Aperi sectionem configurationis → sabaoth
  • Click on Res in the line of our zabbix server
  • Click in crea item

Buildroot: creando crucis suggestum firmware cum zabbix-servo

Intra sequenti notitia:

  • nominare - discretioni vestrae (exempli gratia serverRoomTemp)
  • Typus - zabbix agentis
  • Clavis - Rodos
  • Genus numerorum
  • Unitates - C
  • Historia tabularii periodi — historia repono periodi. relicto X diebus
  • Fossa repono periodi-repono periodum pro dynamicis mutationum. Reliquit XXX diebus
  • Nova applicationis - servo volutpat Temp

Et premere puga ADD.
Buildroot: creando crucis suggestum firmware cum zabbix-servo

Curo occasus per interface

Textus instrumenti in PHP scriptus est. Praecipua munera sunt:

  • visum fabrica status
  • mutantur network occasus
    Buildroot: creando crucis suggestum firmware cum zabbix-servo
  • mutantur user password
  • tempus zona delectu
  • tergum / restituet / officinas reset
  • facultatem ad coniungere per externum coegi
  • ratio update
    Buildroot: creando crucis suggestum firmware cum zabbix-servo

Positum interfacii interretialem tesseram tutus est. Initium paginae - manuale.

Zabbix interfaciei inscriptio: ${ip/dns}/zabbix
Procuratio instrumenti inscriptio: ${ip/dns}/manage
Buildroot: creando crucis suggestum firmware cum zabbix-servo

Currens in qemu

qemu-system-x86_64 -smp 4 -m 4026M -enable-kvm -machinam q35, accel=kvm -device intel-iommu -cpu exercitum -net nic -net pontem, br=bridge0 -device virtio-scsi-pci, id= scsi0 -drive file=output/images/qemu.qcow2,format=qcow2,aio=stamina -device virtio-scsi-pci, id=scsi0 -drive file=output/images/external.qcow2, format=qcow2,aio=stamina

Hoc praeceptum systema incipiet cum 4 corollis, 2048 RAM, KVM enabled, card retis in bridge0 et in duobus orbis: unum pro systemate et unum externum pro postgresql.

Imagines converti possunt et currunt in Virtualbox:

qemu-img convert -f qcow2  qemu.qcow2 -O vdi qcow2.vdi
qemu-img convert -f qcow2  external.qcow2 -O vdi external.vdi

Tum eos in virtualis archa importare et per sata coniungere.

conclusio,

In processu, cupidus factus sum ad usum producti proclivi - non pulcherrimo instrumento (non placet scribere) sed operantem et configurare facile est.

Ultimus conatus ad instituendum zabbix-applicationis in KVM ostendit hunc gradum rectum esse (post institutionem completam, ratio non incipit). Forsitan ego aliquid mali facere

materials

https://buildroot.org/

Source: www.habr.com

Add a comment