Назад | Перейти на главную страницу

Справка о встроенных марионетках

Есть ли ссылка на факты, которые включены в установку марионетки по умолчанию?

Например, некоторые примеры, которые я вижу, включают $operatingsystem который можно использовать для определения распределения. Есть ли где-нибудь ссылка на них?

Как вы, наверное, знаете, все это предоставляется пакетом facter. Бегом facter на cli вы можете увидеть все известные факты:

architecture => i386
domain => <redacted>
facterversion => 1.3.8
fqdn => <redacted>
hardwareisa => unknown
hardwaremodel => i686
hostname => <redacted>
id => <redacted>
ipaddress => <redacted>
ipaddress_eth0 => <redacted>
kernel => Linux
kernelrelease => <redacted>
lsbdistcodename => hardy
lsbdistdescription => Ubuntu 8.04.4 LTS
lsbdistid => Ubuntu
lsbdistrelease => 8.04
macaddress => <redacted>
macaddress_eth0 => <redacted>
memoryfree => 336.51 MB
memorysize => 453.34 MB
operatingsystem => Debian
operatingsystemrelease => <redacted>
processor0 => Intel(R) Xeon(R) CPU           L5335  @ 2.00GHz
processor1 => Intel(R) Xeon(R) CPU           L5335  @ 2.00GHz
processor2 => Intel(R) Xeon(R) CPU           L5335  @ 2.00GHz
processor3 => Intel(R) Xeon(R) CPU           L5335  @ 2.00GHz
processorcount => 4
ps => ps -ef
rubysitedir => /usr/local/lib/site_ruby/1.8
rubyversion => 1.8.6
sshdsakey => <redacted>
sshrsakey => <redacted>
swapfree => 210.98 MB
swapsize => 256.00 MB
uniqueid => <redacted>

О, только что обнаружил, что самый простой способ - просто бежать facter из командной строки. Это выводит список пар ключевых значений:

root@ny-man01:/etc/puppet/files# facter
architecture => x86_64
domain => ny.stackoverflow.com
facterversion => 1.5.7
fqdn => ny-man01.ny.stackoverflow.com
hardwareisa => unknown
hardwaremodel => x86_64
hostname => ny-man01
...
...

Источник: https://puppet.com/docs/puppet/latest/lang_variables.html

Для дистрибутивов Linux вы также захотите убедиться, что у вас установлен информационный пакет LSB Release. В дистрибутивах Red Hat и Fedora этот пакет просто lsb-release

Без этого пакета в Linux информация, предоставленная facter, будет очень спартанской.

Некоторые факты о Facter доступны только при facter запускается как root:

$ diff <(facter) <(sudo facter)
28a29
> manufacturer => Supermicro
48a50
> productname => X8SIE
53a56
> serialnumber => 0123456789
58a62
> type => Sealed-case PC

Во многих случаях это факты, полученные в результате проверки BIOS с помощью dmidecode и тому подобное, которые не могут быть запущены как обычные пользователи.