4 ms·
> In Docker that's called a Dockerfile. It does exactly what you describe. Actually it does not, as SMF is part of the fault management architecture, which is
by Annatar 10y ago
> In Docker that's called a Dockerfile. It does exactly what you describe.
Actually it does not, as SMF is part of the fault management architecture, which is part of the Solaris self-healing technology: unlike the Docker file, SMF will watch over services and restart them if necessary, if configuration files are specified as dependencies and they change, SMF will call the service's refresh method. Docker is just a delivery mechanism, whereas SMF is part of something bigger and far more powerful. SMF ties into FMA, which actually watches over not just software, but hardware down to the individual chips in the memory slots (when not running on virtual hardware). Even on zones, SMF provides the benefit of uniform diagnostics. Docker isn't designed for any of that, which is why he had to hack on the microservice setup.
> fmadm
Usage: fmadm [-P prog] [-q] [cmd [args ... ]]
fmadm config - display fault manager configuration
fmadm faulty [-afgiprsv] [-u <uuid>] [-n <max_fault>] - display list of faulty resources
fmadm flush <fmri> ... - flush cached state for resource
fmadm load <path> - load specified fault manager module
fmadm repaired <fmri>|label> - notify fault manager that resource has been repaired
fmadm acquit <fmri> [<uuid>] | label [<uuid>] | <uuid> - acquit resource or acquit case
fmadm replaced <fmri>|label - notify fault manager that resource has been replaced
fmadm reset [-s serd] <module> - reset module or sub-component
fmadm rotate <logname> - rotate log file
fmadm unload <module> - unload specified fault manager module
That up there is science fiction in Docker. As is something like this:
> svcs -xv bacula
svc:/site/bacula:sd (Bacula storage daemon)
State: online since Sat Apr 23 06:54:00 2016
See: man -M /opt/abcd/share/man -s 1M bacula-sd
See: /var/svc/log/site-bacula:sd.log
Impact: None.
svc:/site/bacula:fd (Bacula file daemon configuration)
State: online since Sat Apr 23 06:54:00 2016
See: man -M /opt/abcd/share/man -s 1M bacula-fd
See: /var/svc/log/site-bacula:fd.log
Impact: None.
svc:/site/bacula:dir (Bacula host specific configuration)
State: online since Sat Apr 23 06:54:00 2016
See: man -M /opt/abcd/share/man -s 1M bacula-dir
See: /var/svc/log/site-bacula:dir.log
Impact: None.
> The fully functional containers you've described have been available for Linux for years before SmartOS was first released, first as OpenVZ and then as LXC.
Actually no, since the "containers" are zones in SmartOS, and I've been using zones since 2006, when they first came out in Solaris 10 update 2. This was before OpenVZ and LXC.
Zones gave me virtual UNIX servers. Solaris containers gave me caps on those servers. Both came in one package back in 2006. SmartOS, being a freeware open source Solaris derivative leverages all that technology, plus a whole bunch more which neither Solaris nor GNU/Linux nor Docker have. Designed for exactly what the author of the original article was trying to hack up together, minus all the hacking.