Dieser Beitrag ist im Februar 2017 erschienen
Das Schöne ist ja: Wenn was schief geht, lernt man meistens was. So auch ich, als ich den neuen Containermontior cmon in Triton installieren wollte. In den Release-Notes hatte es nur geheissen:
sdcadm self-update --latest
sdcadm post-setup cmon
Damit war es aber leider nicht getan. Der cmon-Service liess sich zwar installieren
[root@headnode (de-gt-1) ~]# sdcadm insts |grep cmon
aedb6df0-b158-4859-a0b7-51a2bf82855c cmon headnode master-20170124T220325Z-gbed9ddb
[root@headnode (de-gt-1) ~]#
Aber die Installation des cmon-agent klappte leider nicht - offenbar fehlte ein node-modul:
[root@headnode (my-dc-1) ~]# sdcadm post-setup cmon -s 0e85c4b8-8751-11e1-9a9a-00262d0cb874
Installing cmon-agent [================================================================================================>] 100% 1
"cmon-agent" install failed on 1 server.
sdcadm post-setup: error: multiple (1) errors
error (Update): Task 0543356e-fca5-eadc-a837-ef9af02b7ec1 failed with error: AgentInstall error: Command failed: cp: cannot access /opt/smartdc/agents/lib/node_modules/cmon-agent
Eine Nachfrage auf der - wie eigentlich immer - hilfreichen Mailingliste ergab, dass das "cn-agent"-Paket zu alt war. Mein beherztes "sdcadm experimental update-agents --latest --all"
war leider nicht von Erfolg gekrönt (wieder eine Fehlermeldung). Zunächst nahm ich mit, dass man auch einzelne Agenten aktualisieren kann: sdcadm experimental update cn-agent --yes
(hier also nur den cn-agent)
[root@headnode (my-dc-1) ~]# sdcadm experimental update cn-agent --yes -s 282a2f63-99c6-44b8-89de-f82b32a4bc48
Finding candidate update images for the "cn-agent" service.
Using channel dev
This update will make the following changes:
update "cn-agent" service to image 809098db-2f75-4dc2-9e94-c019728f40cb
cn-agent@1.5.4
on 1 servers
Create work dir: /var/sdcadm/updates/20170207T104238Z
Verifying that CNAPI is able to run agent updates
Updating cn-agent [ ] 0% 0
Timeout(5m) waiting for cn-agent update on server 282a2f63-99c6-44b8-89de-f82b32a4bc48
Updating cn-agent [===========================================================>] 100% 1
cn-agent agent update has run in all servers.
Errors will be reported below:
Update error: EXCEPTION: MultiError: MultiError: multiple (1) errors
error (Update): Timeout(5m) waiting for cn-agent update on server
282a2f63-99c6-44b8-89de-f82b32a4bc48; caused by UpdateError: Timeout(5m) waiting for cn-agent update on server 282a2f63-99c6-44b8-89de-f82b32a4bc48
[...]
Und dass man damit noch spezifischere Fehlermeldungen bekommt. Hier also ein seltsamer Timeout. Ich dachte natürlich gleich an Netzwerkprobleme oder Ähnliches. Aber falsch gedacht.
[root@headnode (my-dc-1) ~]# sdcadm health | grep -v true
INSTANCE SERVICE HOSTNAME ALIAS HEALTHY
68d26597-148f-4c65-a032-93db22ad7b58 cn-agent myserver1 - false
5584e2c2-25db-45dd-8e0a-8d34ede50a19 cn-agent myserver2 - false
3cba76a5-1725-43d7-a4a6-4b59977c3990 cn-agent myserver3 - false
65c998e5-d434-47fb-a47b-d5afb4201b2e SMF svcs check failed: svcs returned 1
12461154-867b-40a9-bbb8-2135963c9854 cn-agent myserver4 - false
1d7011f7-06da-4842-8f63-899842ddb147 cn-agent myserver5 - false
ced1ac69-8545-4e34-8e81-c4d4cbf99d43 cn-agent myserver6 - false
65c998e5-d434-47fb-a47b-d5afb4201b2e cn-agent myserver7 - false
c8e21144-1af9-4a14-a10c-6df5f312dfc0 cn-agent myserver8 - false
7a723e6b-fc46-4bf6-bcac-399b431c10d1 cn-agent myserver9 - false
6a70e624-b3b4-4053-8958-bac29713eb5a cn-agent myserver10 - false
65c998e5-d434-47fb-a47b-d5afb4201b2e SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
ced1ac69-8545-4e34-8e81-c4d4cbf99d43 SMF svcs check failed: svcs returned 1
ced1ac69-8545-4e34-8e81-c4d4cbf99d43 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
68d26597-148f-4c65-a032-93db22ad7b58 SMF svcs check failed: svcs returned 1
68d26597-148f-4c65-a032-93db22ad7b58 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
1d7011f7-06da-4842-8f63-899842ddb147 SMF svcs check failed: svcs returned 1
1d7011f7-06da-4842-8f63-899842ddb147 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
c8e21144-1af9-4a14-a10c-6df5f312dfc0 SMF svcs check failed: svcs returned 1
c8e21144-1af9-4a14-a10c-6df5f312dfc0 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
5584e2c2-25db-45dd-8e0a-8d34ede50a19 SMF svcs check failed: svcs returned 1
5584e2c2-25db-45dd-8e0a-8d34ede50a19 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
3cba76a5-1725-43d7-a4a6-4b59977c3990 SMF svcs check failed: svcs returned 1
3cba76a5-1725-43d7-a4a6-4b59977c3990 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
7a723e6b-fc46-4bf6-bcac-399b431c10d1 SMF svcs check failed: svcs returned 1
7a723e6b-fc46-4bf6-bcac-399b431c10d1 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
12461154-867b-40a9-bbb8-2135963c9854 SMF svcs check failed: svcs returned 1
12461154-867b-40a9-bbb8-2135963c9854 SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
6a70e624-b3b4-4053-8958-bac29713eb5a SMF svcs check failed: svcs returned 1
6a70e624-b3b4-4053-8958-bac29713eb5a SMF svcs check failed: stderr: svcs: Pattern 'cn-agent' doesn't match any instances
Der Healthcheck zeigte, dass das Update des cn-agents irgendwie abgebrochen war (der Fortschrittsbalken hat nichts mit dem Download des Paketes zu tun sondern mit dem Fortschritt der Installation):
[root@myserver11 (my-dc-1) ~]# svcs |grep -i cn-agent
online Nov_21 svc:/smartdc/agent/cn-agent:default
[root@myserver1 (my-dc-1) ~]# svcs |grep -i cn-agent
maintenance 13:03:47 svc:/smartdc/agent/cn-agent-update:default
[root@myserver1 (my-dc-1) ~]# less /var/svc/log/smartdc-agent-cn-agent-update:default.log
[ Feb 7 13:03:46 Leaving maintenance because clear requested. ]ETURN)
[ Feb 7 13:03:46 Enabled. ]
[ Feb 7 13:03:47 Executing start method
("/opt/smartdc/agents/lib/node_modules/cn-agent/smf/method/cn-agent start"). ]
/sbin/sh[1]: exec: /opt/smartdc/agents/lib/node_modules/cn-agent/smf/method/cn-agent: not found
[ Feb 7 13:03:47 Method "start" exited with status 127. ]
Wieder kam ein Hinweis von der Liste. Es gibt einen Bug in einer älteren Version von agents-core, der dazu führt, dass bei einem Update via apm keine Pre-Install Skripte ausgeführt werden. Also zuerstmal agent-core aktualisieren:
sdcadm self-update --latest
sdcadm experimental update agents_core
Das funktionierte zur Abwechslung mal ohne Fehlermeldung. Jetzt noch die Installation der gewünschten Version von cn-agent "per Hand" (auf jedem compute node und dem headnode):
updates-imgadm get-file 809098db-2f75-4dc2-9e94-c019728f40cb > /var/tmp/cn-agent.tgz && apm install /var/tmp/cn-agent.tgz
Danach ist jetzt ein "sdcadm experimental update cn-agent"
wieder ohne Fehlermeldung möglich. Und das sdcadm post-setup cmon
liefert auch keine Fehlermeldung mehr und überall läuft der cmon-agent:
[root@headnode (de-gt-1) ~]# sdcadm insts |grep cmon
aedb6df0-b158-4859-a0b7-51a2bf82855c cmon headnode master-20170124T220325Z-gbed9ddb cmon0
fee2a216-ec79-42b4-8e78-d64c1cb27363 cmon-agent headnode 1.1.0 -
240ddd18-ce6d-414a-9155-458faa3d6382 cmon-agent hmom-gts3-de01 1.1.0 -
ef7f3511-eee9-426b-a59e-05d164e93e4c cmon-agent hmom-gts3-de02 1.1.0 -
b15826fc-8495-45bf-b454-22b3c5131979 cmon-agent hmom-gts3-de03 1.1.0 -
70ca6a40-c985-4aab-9b58-83e39f07dcad cmon-agent hmom-gts3-de04 1.1.0 -
af78af45-be53-401d-8aba-95598065c39c cmon-agent hmom-gts3-de05 1.1.0 -
4e033e53-7498-42b7-96e0-33b72272ad65 cmon-agent hmom-gts3-de06 1.1.0 -
61a84f41-58fd-4b7b-aa84-5d036e49dfa2 cmon-agent lnxp-5700 1.1.0 -
911f6431-f9d1-4968-bb8c-9ee3ac9f842f cmon-agent lnxp-5702 1.1.0 -
b3ebd5b7-e7c8-4db2-b64b-ee227d1278c3 cmon-agent lnxp-5704 1.1.0 -
3f9f6b83-078d-4561-9452-fbcefd00ddba cmon-agent lnxp-5707 1.1.0 -
dd9593f6-2d0e-431d-900b-13c8a8549b61 cmon-agent lnxp-6102 1.1.0 -
fdda5117-c6fc-40b6-bbc9-93af1ddc4d0d cmon-agent lnxp-6103 1.1.0 -
cdbfe4f6-09bf-4ce3-9a3d-10b4ba7b156a cmon-agent lnxp-6104 1.1.0 -
7336296c-c33f-4449-b2ed-bb2c9fae2735 cmon-agent lnxp-6105 1.1.0 -
ee7689e3-f31a-4852-8a43-938fcc0ab40f cmon-agent lnxv-10009 1.1.0 -
[root@headnode (de-gt-1) ~]#