Branch: refs/heads/master
Home:
https://github.com/tribe29/checkmk
Commit: ad8318baa2c1079406e7aaae0f69d69c75dc935c
https://github.com/tribe29/checkmk/commit/ad8318baa2c1079406e7aaae0f69d69c7…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/wato/pages/activate_changes.py
M cmk/gui/watolib/activate_changes.py
M cmk/gui/watolib/automation_commands.py
M cmk/gui/watolib/sites.py
Log Message:
-----------
Move specific helper out of generic automation command module
The automation commands are a very generic feature and should not rely
on specific code like the activation logic and so on. Moved the helper
function to the more related activate_changes watolib module.
Change-Id: I422e74e87c74da0ad5c7527f3d2924586db5e572
Commit: f1d5ce0dd02eb10da5ba838fa08492d9f4ed56df
https://github.com/tribe29/checkmk/commit/f1d5ce0dd02eb10da5ba838fa08492d9f…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
M tests/unit/cmk/gui/watolib/test_watolib.py
M tests/unit/conftest.py
Log Message:
-----------
New config sync: Implement automation for first sync step
Called on remote site from a central site to get the current config sync
state.
The central site hands over the list of replication paths it will try to
synchronize later. The remote site computes the list of replication
files and sends it back together with the current configuration
generation ID. The config generation ID is increased on every WATO
modification and ensures that nothing is changed between the two config
sync steps.
Change-Id: Ia8c967009b3b906afe4bfc68ec61a5527d2a97b9
Commit: 443211ae3a50079d98e33be58e1691fdf7593aa8
https://github.com/tribe29/checkmk/commit/443211ae3a50079d98e33be58e1691fdf…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
New config sync: Add basic difference computation
Implementing the new synchronization to the state where the files know
to the central and remote site have been compared resulting in a list of
files to be synchronized and a list of files to be deleted.
Change-Id: Ib69f8dc52ed17359d5309896f456f7aa62fec45a
Next: Add the synchronization logic
Commit: bbafc8235d38f64fcc05c717f7bc50ae28d88349
https://github.com/tribe29/checkmk/commit/bbafc8235d38f64fcc05c717f7bc50ae2…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
New config sync: Add sync archive creation
All files to be synchronized are now packed in a simple tar
archive in memory.
The next step is to create the receiving and unpacking logic.
Change-Id: Ie4e10b224ec84328bc5beb58e6303e89e3047cf1
Commit: 34c444770fb4c381565c0f741eb80382ef2473cd
https://github.com/tribe29/checkmk/commit/34c444770fb4c381565c0f741eb80382e…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
M tests/unit/cmk/gui/watolib/test_watolib.py
Log Message:
-----------
New config sync: Add sync receiving logic
The new automation call "receive-config-sync" has been added.
The central site hands over the a tar archive with the files to be
written and a list of files to be deleted. The configuration generation
is used to validate that no modification has been made between the two
sync steps (get-config-sync-state and this autmoation).
Change-Id: I721ccbacbafd4dd2a67357ec7bff5bb61864f1a8
Commit: 6bbe2d8f516af9ae201cf84b8cc2bf4b86860e62
https://github.com/tribe29/checkmk/commit/6bbe2d8f516af9ae201cf84b8cc2bf4b8…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
New config sync: Put glue between central and remote site
The full config synchronization chain is now in place. Most of the logic
is already working. Now that the >1.7 synchronization is working, the
detection of the remote sites version has been enabled again, which
means that the new logic will be used for 1.7 or newer sites and the
older logic will be used for older sites.
Next steps:
a) Add a test for the full >1.7 synchronization procedure
b) Bring the configuration generation to life
Change-Id: Ib3c1a370fed3ce3980d292a1e526302fb319dbff
Commit: 67d69d3cc1ae2df15b69de0fdc102e5ea94c00bc
https://github.com/tribe29/checkmk/commit/67d69d3cc1ae2df15b69de0fdc102e5ea…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M omd/packages/python-modules/python-modules.make
M virtual-envs/2.7/Pipfile
M virtual-envs/2.7/Pipfile.lock
Log Message:
-----------
Add responses for mocking requests calls during unit tests
Change-Id: Icf7bed16ddccd5acc57421f6dcf582a2efb7fbc4
Commit: 035a29303438d1b6582aca92ac198647581d4126
https://github.com/tribe29/checkmk/commit/035a29303438d1b6582aca92ac1986475…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/automations.py
Log Message:
-----------
Automation logging: Log site ID instead of whole site spec
Change-Id: I4e44cdb746e31ddd156cdd2530bd6eb3e202830a
Commit: b82d2e9bf2913a832cc60a6b0eaa3d71c499fc56
https://github.com/tribe29/checkmk/commit/b82d2e9bf2913a832cc60a6b0eaa3d71c…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M tests/unit/cmk/gui/watolib/test_config_sync.py
Log Message:
-----------
Add site synchronize test
Change-Id: I3fdb90512ad7a2c2322f2bf941e8f19091a64c2e
Commit: 0edf2efc50852366bbef5449ecb8cf9c4f39048e
https://github.com/tribe29/checkmk/commit/0edf2efc50852366bbef5449ecb8cf9c4…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/wato/__init__.py
M cmk/gui/watolib/activate_changes.py
M cmk/gui/webapi.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
New config sync: Introduce config generation
The new config sync is done in two steps:
a) ask for the remote site step
b) compute files to sync and sync
In case the remote config is modified between these steps we need
some mechanism to prevent the second step on the remote site.
The config generation is a simple number that is increased on each
configuration change that is done by WATO.
The first call gets the current configuration generation with the
first response. The second request sends the configuration generation
back and both are compared. This way we ensure that we have a
consistent state during the whole config sync procedure on the
remote site.
Change-Id: I4a2aaa050f4ede7e9cafbdb4399fb379d78af003
Commit: acca52f2472ffe8d7d229bb89cd8afb057912007
https://github.com/tribe29/checkmk/commit/acca52f2472ffe8d7d229bb89cd8afb05…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/__init__.py
M cmk/gui/watolib/activate_changes.py
M cmk/gui/watolib/sites.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
M tests/unit/cmk/gui/watolib/test_config_sync.py
Log Message:
-----------
distributed.mk of dcd is now also created by the central site
To make the incremental configuration creation work we need to
centralize the whole configuration file creation. The distributed.mk
files that tell the DCD whether or not a connection is working in
"remote site" mode was previously created dynamically by the remote
site in the moment a config snapshot was received.
From now on these files are created by the central site
and will be
replicated to the remote site like the other config files. The old
behaviour is kept for compatibility with pre 1.7 remote sites.
Change-Id: I4fe3dcbbb0aabab95a39afd6f4ae4773dc21e009
Commit: 336a535a5d7601ea4c20be38115737229e369897
https://github.com/tribe29/checkmk/commit/336a535a5d7601ea4c20be38115737229…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M cmk/gui/watolib/sites.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
Cleanup site_config directory on site deletion
Change-Id: Id1025346d78dd8a7574989112cf0ce5a51f2a346
Commit: 798ad8ace8b56541909b07e3b797fe398ec3cdf0
https://github.com/tribe29/checkmk/commit/798ad8ace8b56541909b07e3b797fe398…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
A .werks/11072
Log Message:
-----------
11072 Distributed environments: Improve config synchronization
Synchronizing configurations between the central and remote sites has taken too
much time in the past because the entire configuration was always synchronized.
Even files that are still present on the remote site were completely
synchronized, which led to increased computing effort, traffic and runtime.
This mechanism has now been replaced by an incremental mechanism. Before each
synchronization, the system determines which files already exist on the remote
site. Only those files are synchronized that differ from the central site.
For the migration from Checkmk 1.6 to 1.7 the change is compatible. Both
central 1.6 sites can communicate with remote 1.7 sites and 1.7 central sites
can communicate with 1.6 remote sites. Mixed environments should only be used
for migration purposes. In such a scenario, the previous synchronization
mechanism is used. After 1.7 this compatibility mode will be removed.
Change-Id: Id2e3601f75ee2808fd1f4eb1257899ba6c0fff71
Commit: c4a4ec331397928a038445d6c46da877cb93fe50
https://github.com/tribe29/checkmk/commit/c4a4ec331397928a038445d6c46da877c…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
Log Message:
-----------
Fix blocking IO
Change-Id: I8bcfcd90e6671dd13a33d527223d48cad74ed860
Commit: 4b1058122aceddeffd53b7f1304ed9c9494911fd
https://github.com/tribe29/checkmk/commit/4b1058122aceddeffd53b7f1304ed9c94…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
M tests/unit/cmk/gui/watolib/test_config_sync.py
Log Message:
-----------
New config sync: Add handling of symlinks and type changes
The previous implementation did not handled the special way they should
be handled. The synchronization will not resolve the links. It simply
creates the equal symlink on the remote site.
Different type changes are now handled (dir to file, file to dir,
dir to symlink and symlink to dir).
Change-Id: I59bc774e99c223e6e8c2037bae25d93e4ab91406
Commit: ec9c3e7c7d6e78acdd0a437e9da1100e19d7d4c8
https://github.com/tribe29/checkmk/commit/ec9c3e7c7d6e78acdd0a437e9da1100e1…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
Log Message:
-----------
Output a little more information during config synchronization
Change-Id: I2b689c84d1a242bf5318555813b6774841fa2278
Commit: 93aa6443542a8d62484871e47811c6dd88cdd412
https://github.com/tribe29/checkmk/commit/93aa6443542a8d62484871e47811c6dd8…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M cmk/gui/watolib/automations.py
Log Message:
-----------
New config sync: Fix archive handling
The previous way of transporting the sync archive in the post body
was very inefficient. Especially when transferrign larger files this
was slow.
Change-Id: I0eba47ce225ac60eafad3865fd7c99b0a7cd609a
Commit: 5c8fe2488f7ba9b57d575e6c744575361eb6cfbb
https://github.com/tribe29/checkmk/commit/5c8fe2488f7ba9b57d575e6c744575361…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M tests/unit/cmk/gui/watolib/test_activate_changes.py
Log Message:
-----------
New config sync: Preserve permissions of files
Do not apply the umask of the remote site during unpacking. Try to reflect
the permissions of the synchronized files 1:1.
Change-Id: I1e59c4e4e24535cccbc6472a6d3ea26cd3e8cfa1
Commit: 216fad7115f96f4cdee2af1042c2a006ccb3ba9b
https://github.com/tribe29/checkmk/commit/216fad7115f96f4cdee2af1042c2a006c…
Author: Lars Michelsen <lm(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
M cmk/gui/watolib/activate_changes.py
M cmk/gui/watolib/snapshots.py
Log Message:
-----------
Execute WATO backup snapshot creation asynchronously
Since we were not able to drop the snapshots in their current form and
they are still slowing down our activation procedure, this commit now
moves them into a subprocess which makes it possible to execute it
asynchronously while the site config snapshots are created.
Change-Id: I49864405f815172c3bf4c03d786334547abdceba
Commit: 126070923beaede77a5151a162a745c57f4e9e7c
https://github.com/tribe29/checkmk/commit/126070923beaede77a5151a162a745c57…
Author: Jonas Kluger <jonas.kluger(a)tribe29.com>
Date: 2020-05-08 (Fri, 08 May 2020)
Changed paths:
A .werks/10907
M checks/ucd_cpu_util
M tests-py3/unit/checks/generictests/datasets/ucd_cpu_util_1.py
Log Message:
-----------
10907 FIX ucd_cpu_util: Fix CPU utilization calculation
Fixed the calculation for the CPU utilization. The system value used the outdated
values/OIDs.
No longer query the CpuRawKernel value, since its already included in the CpuRawSystem.
CpuRawSystem = CpuRawKernel + CpuRawWait
The system value gets computed as:
system = CpuRawSystem + CpuRawInterrupt + CpuRawSoftIRQ
(CpuRawInterrupt in this case is equal to IRQ)
Change-Id: I39fe2bf3669bd90823ee1e5d96a5253b4add0d47
Compare:
https://github.com/tribe29/checkmk/compare/9ab8f6c384b2...126070923bea