CPU load Frage

digidax

Renowned Member
Mar 23, 2009
99
1
73
Hallo,

auf einem 8 x Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz läuft eine CT mit Centos 8 und eine VM mit Centos 4.
Die Node ist wie folgt ausgelastet:

Code:
top - 13:59:57 up 30 days,  5:45,  2 users,  load average: 1.23, 0.97, 0.90
Tasks: 316 total,   1 running, 315 sleeping,   0 stopped,   0 zombie
%Cpu(s):  7.6 us,  2.8 sy,  0.0 ni, 84.1 id,  0.0 wa,  0.0 hi,  5.5 si,  0.0 st
MiB Mem :   7865.5 total,   2954.4 free,   4534.8 used,    376.4 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   2928.6 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
2086 root      20   0 3153040   2.0g   5360 S  18.8  26.2 922:38.59 kvm
    1 root      20   0  170116   7040   4124 S   0.0   0.1   2:12.91 systemd
    2 root      20   0       0      0      0 S   0.0   0.0   6:26.21 kthreadd
    3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp
    4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_par_gp
    6 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/0:0H-kblockd
    9 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 mm_percpu_wq
   10 root      20   0       0      0      0 S   0.0   0.0   0:09.96 ksoftirqd/0
   11 root      20   0       0      0      0 I   0.0   0.0  10:39.32 rcu_sched
   12 root      rt   0       0      0      0 S   0.0   0.0   0:05.88 migration/0
   13 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/0
   14 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/0
   15 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/1
   16 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/1
   17 root      rt   0       0      0      0 S   0.0   0.0   0:05.97 migration/1
   18 root      20   0       0      0      0 S   0.0   0.0   0:06.56 ksoftirqd/1
   20 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/1:0H-kblockd

Die CT:
Code:
top - 14:02:13 up  3:06,  1 user,  load average: 0.97, 0.89, 0.91
Tasks:  30 total,   1 running,  29 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.8 us,  0.0 sy,  0.0 ni, 99.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   4096.0 total,   3856.1 free,    179.8 used,     60.1 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   3916.2 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
    1 root      20   0  241504   7108   4932 S   0.0   0.2   0:00.49 systemd
   43 root      20   0   91332   6308   5324 S   0.0   0.2   0:00.18 systemd-journal
   48 root      20   0   85428   5124   4132 S   0.0   0.1   0:00.28 systemd-logind
   49 dbus      20   0   53120   2924   2176 S   0.0   0.1   0:00.35 dbus-daemon
   50 root      20   0  367148  10208   8112 S   0.0   0.2   0:00.15 NetworkManager
   55 root      20   0   77864   4328   3404 S   0.0   0.1   0:00.00 sshd
   56 root      20   0  191896  13304   7396 S   0.0   0.3   0:00.40 php-fpm
   58 root      20   0  257456   7432   5128 S   0.0   0.2   0:00.39 httpd
   61 root      20   0   22996   2072   1232 S   0.0   0.0   0:00.00 crond
   62 root      20   0    6512   1184   1072 S   0.0   0.0   0:00.00 agetty
   64 root      20   0    6512   1184   1072 S   0.0   0.0   0:00.00 agetty
   65 root      20   0    6512   1128   1016 S   0.0   0.0   0:00.00 agetty
  125 root      20   0  274308   3420   2720 S   0.0   0.1   0:00.34 rsyslogd
  131 apache    20   0  194288  12396   6360 S   0.0   0.3   0:00.01 php-fpm
  132 apache    20   0  194288  12080   6052 S   0.0   0.3   0:00.01 php-fpm
  133 apache    20   0  194288  12024   5996 S   0.0   0.3   0:00.00 php-fpm
  134 apache    20   0  194288  12336   6300 S   0.0   0.3   0:00.00 php-fpm
  135 apache    20   0  194288  12388   6348 S   0.0   0.3   0:00.01 php-fpm
  145 apache    20   0  259508   6228   3908 S   0.0   0.1   0:00.00 httpd
  146 apache    20   0 2693464   7788   4540 S   0.0   0.2   0:01.95 httpd
  147 apache    20   0 2562328   7388   4364 S   0.0   0.2   0:01.88 httpd
  148 apache    20   0 2562328   7416   4380 S   0.0   0.2   0:01.88 httpd
  361 mysql     20   0 1815956  78084  12728 S   0.0   1.9   0:04.71 mysqld
  420 root      20   0   72008  25356   2612 S   0.0   0.6   0:00.08 miniserv.pl
  498 root      20   0  124628   6408   5192 S   0.0   0.2   0:00.01 sshd
  501 root      20   0   93252   7028   5776 S   0.0   0.2   0:00.01 systemd
  502 root      20   0  283096   2388      0 S   0.0   0.1   0:00.00 (sd-pam)
  507 root      20   0  124628   3860   2632 S   0.0   0.1   0:00.00 sshd
  508 root      20   0  224732   2644   2096 S   0.0   0.1   0:00.00 bash
  526 root      20   0  261124   2776   2144 R   0.0   0.1   0:00.00 top

und die VM:

Code:
top - 13:04:02 up 2 days, 22:58,  1 user,  load average: 0.00, 0.00, 0.00
Tasks: 100 total,   1 running,  99 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0% us,  0.0% sy,  0.0% ni, 99.9% id,  0.1% wa,  0.0% hi,  0.0% si
Mem:   2056112k total,  2031428k used,    24684k free,    56428k buffers
Swap:        0k total,        0k used,        0k free,  1787936k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
    1 root      16   0  4776  528  440 S  0.0  0.0   0:00.70 init
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.15 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.17 migration/1
    5 root      34  19     0    0    0 S  0.0  0.0   0:00.07 ksoftirqd/1
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.17 migration/2
    7 root      34  19     0    0    0 S  0.0  0.0   0:00.10 ksoftirqd/2
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.16 migration/3
    9 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/3
   10 root      RT   0     0    0    0 S  0.0  0.0   0:00.15 migration/4
   11 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/4
   12 root      RT   0     0    0    0 S  0.0  0.0   0:00.14 migration/5
   13 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/5
   14 root      RT   0     0    0    0 S  0.0  0.0   0:00.12 migration/6
   15 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/6
   16 root      RT   0     0    0    0 S  0.0  0.0   0:00.09 migration/7
   17 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/7
   18 root       5 -10     0    0    0 S  0.0  0.0   0:00.07 events/0
   19 root       5 -10     0    0    0 S  0.0  0.0   0:00.03 events/1
   20 root       5 -10     0    0    0 S  0.0  0.0   0:00.04 events/2
   21 root       5 -10     0    0    0 S  0.0  0.0   0:00.03 events/3
   22 root       5 -10     0    0    0 S  0.0  0.0   0:00.03 events/4
   23 root       5 -10     0    0    0 S  0.0  0.0   0:00.02 events/5
   24 root       5 -10     0    0    0 S  0.0  0.0   0:00.02 events/6
   25 root       5 -10     0    0    0 S  0.0  0.0   0:00.02 events/7
   26 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 khelper
   27 root       6 -10     0    0    0 S  0.0  0.0   0:00.00 kthread
   28 root      15 -10     0    0    0 S  0.0  0.0   0:00.00 kacpid
   43 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/0
   44 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/1
   45 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/2
   46 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/3
   47 root       5 -10     0    0    0 S  0.0  0.0   0:00.01 kblockd/4
   48 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/5
   49 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/6
   50 root       5 -10     0    0    0 S  0.0  0.0   0:00.00 kblockd/7
   51 root      15   0     0    0    0 S  0.0  0.0   0:00.05 khubd
  102 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pdflush
  103 root      15   0     0    0    0 S  0.0  0.0   0:00.32 pdflush

Versionen:
Code:
proxmox-ve: 6.1-2 (running kernel: 5.3.13-1-pve)
pve-manager: 6.1-5 (running version: 6.1-5/9bf06119)
pve-kernel-5.3: 6.1-1
pve-kernel-helper: 6.1-1
pve-kernel-5.0: 6.0-11
pve-kernel-5.3.13-1-pve: 5.3.13-1
pve-kernel-5.0.21-5-pve: 5.0.21-10
pve-kernel-5.0.15-1-pve: 5.0.15-1
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.2-pve4
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: 0.8.35+pve1
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.13-pve1
libpve-access-control: 6.0-5
libpve-apiclient-perl: 3.0-2
libpve-common-perl: 6.0-10
libpve-guest-common-perl: 3.0-3
libpve-http-server-perl: 3.0-3
libpve-storage-perl: 6.1-3
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve3
lxc-pve: 3.2.1-1
lxcfs: 3.0.3-pve60
novnc-pve: 1.1.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.1-2
pve-cluster: 6.1-3
pve-container: 3.0-16
pve-docs: 6.1-3
pve-edk2-firmware: 2.20191127-1
pve-firewall: 4.0-9
pve-firmware: 3.0-4
pve-ha-manager: 3.0-8
pve-i18n: 2.0-3
pve-qemu-kvm: 4.1.1-2
pve-xtermjs: 3.13.2-1
qemu-server: 6.1-4
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.2-pve2

Woher kommt die Load über 1 auf der Node?
 
Update: nach dem Stoppen der VM, geht die Load der Node auf < 0,1
Startet man wieder die VM bleibt nun die Load < 0,1

sehr komisch. Ich beobachte weiter.
 
Das Problem ist auf einmal wieder da, auf der node ist nur noch eine VM, diese ist komplett idle (CentOS 4 minimal, frische installation)
1582795872472.png
Wird die Vm gestopt, geht die Load der Node auf einen normalen idel Wert herunter.

Werden weitere Angaben benötigt?

System ist up to date:
Code:
proxmox-ve: 6.1-2 (running kernel: 5.3.18-2-pve)
pve-manager: 6.1-7 (running version: 6.1-7/13e58d5e)
pve-kernel-5.3: 6.1-5
pve-kernel-helper: 6.1-5
pve-kernel-5.3.18-2-pve: 5.3.18-2
pve-kernel-5.3.10-1-pve: 5.3.10-1
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: not correctly installed
ifupdown2: 2.0.1-1+pve4
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.14-pve1
libpve-access-control: 6.0-6
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.0-12
libpve-guest-common-perl: 3.0-3
libpve-http-server-perl: 3.0-4
libpve-storage-perl: 6.1-4
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 3.2.1-1
lxcfs: 3.0.3-pve60
novnc-pve: 1.1.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.1-3
pve-cluster: 6.1-4
pve-container: 3.0-19
pve-docs: 6.1-6
pve-edk2-firmware: 2.20191127-1
pve-firewall: 4.0-10
pve-firmware: 3.0-5
pve-ha-manager: 3.0-8
pve-i18n: 2.0-4
pve-qemu-kvm: 4.1.1-3
pve-xtermjs: 4.3.0-1
qemu-server: 6.1-6
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.3-pve1

lg Frank
 
Was genau ist deine Frage? Wenn ich dich richtig interpretiere wunderst du dich darüber, dass die Summe der Gast-Load-Werte nicht dem Hypervisor/Host entspricht?

Mal abgesehen davon, dass CentOS 4 schon SEHR lange aus dem Support raus ist und somit viele neuen Features zum Strom und CPU-Zyklensparen nicht beherrscht haben VMs immer eine viel höhere Auslastung auch beim Idle-Sein als Container. Das ist einer der Gründe, warum man Container anstelle von VMs verwendet um genau eben nicht diese unnötigen CPU-Zyklen zu verbraten.
 
Die Frage ist, ob es normal ist, dass eine minimale Linux VM mit Kernel 2.6.9-103.ELsmp auf der Node mit dem Prozess "vmx_vmexit" 25% CPU verbrät?

Das ist meine einzigste VM, alles andere sind Container. Ich brauche aber einen MySQL 4 Server und den bekomme ich z.B. unter CentOS 8 nicht installiert.
Darum eine VM mit CentOS 4. Aber das scheint wohl normal zu sein.
 
Die Frage ist, ob es normal ist, dass eine minimale Linux VM mit Kernel 2.6.9-103.ELsmp auf der Node mit dem Prozess "vmx_vmexit" 25% CPU verbrät?

Klar, der Kernel ist Steinalt (2004) und keinerlei Ahnung, dass es sowas wie virtualisierte Hardware gibt. Er prüft also z.B. ständig in einer VM unnötiges Zeugs und verbrät dabei CPU-Zyklen, Energie und somit Geld.

Ich brauche aber einen MySQL 4 Server

Immer noch nicht genau spezifiziert, warum man soooo alte Software benötigt.
 
Dein Nachbohren wegen der alten Software imponiert mir:

Wir nutzen hier eine Maschine (weltweit einzigster Prototyp), welche vorher errechnete Steuerungsparameter aus einer MySQL 4 Datenbank liest.
Als ich damals unsere Container Systeme die auf OpenVZ liefen, von CentOS4 auf CentOS5 aktualisierte, wurde auch in CentOS5
MySQL5 eingeführt. Ich zog die DB von MySQL4 auf MySQL5 um, und die Maschine lief nicht mehr. Ich kontaktierte den Entwickler der Maschine und der sagte, dass es mit irgendwelchen JOINS zusammen hängt, da hätte sich was von MySQLv4 zu v5 gändert. Trotz mehrfachen Bitten und finanziellen Anreizen schaffte es der Entwickler nicht mehr vor seinem überrraschenden Ableben, die Joins zu ändern. So weit ich weiß, wurde das sehr komplexe Programm auf Delphi programmiert, wir haben nur die Windows Binaries und keinen Source Code. Darum MySQL4. Ich hatte auch schon mal überlegt, einen MySQL Proxy zwischen der Maschine und einem MariaDB Server zu schalten, um die SELECTs zu manipulieren. Dazu müßte ich aber ersteinmal herausfinden, was sich bei den JOINS von v4 zu v5 gändert hat. Eine CentOS 4 VM mit MySQL 4 aufzusetzen war da der einfachere Weg.
 
Hey,
ich würde versuchen, laufende Dienste auf der Centos 4 VM soweit möglich zu stoppen. Also nur das laufen lassen, was Du wirklich brauchst.
Desweiteren kann man häufig in der my.cnf der MySQL Instanz einzelne Dinge optimieren, die zu weniger Last führen.
 
@wigor, ja habe ich bereits gemacht. Ohne das mysqld läuft liegt die CPU Auslastung bei rund 24%, bei diesen Prozessen:
Code:
# ps ax
  PID TTY      STAT   TIME COMMAND
    1 ?        S      0:00 init [5]
    2 ?        S      0:00 [migration/0]
    3 ?        SN     0:00 [ksoftirqd/0]
    4 ?        S      0:00 [migration/1]
    5 ?        SN     0:00 [ksoftirqd/1]
    6 ?        S      0:00 [migration/2]
    7 ?        SN     0:00 [ksoftirqd/2]
    8 ?        S      0:00 [migration/3]
    9 ?        SN     0:00 [ksoftirqd/3]
   10 ?        S      0:00 [migration/4]
   11 ?        SN     0:00 [ksoftirqd/4]
   12 ?        S      0:00 [migration/5]
   13 ?        SN     0:00 [ksoftirqd/5]
   14 ?        S      0:00 [migration/6]
   15 ?        SN     0:00 [ksoftirqd/6]
   16 ?        S      0:00 [migration/7]
   17 ?        SN     0:00 [ksoftirqd/7]
   18 ?        S<     0:00 [events/0]
   19 ?        S<     0:00 [events/1]
   20 ?        S<     0:00 [events/2]
   21 ?        S<     0:00 [events/3]
   22 ?        S<     0:00 [events/4]
   23 ?        S<     0:00 [events/5]
   24 ?        S<     0:00 [events/6]
   25 ?        S<     0:00 [events/7]
   26 ?        S<     0:00 [khelper]
   27 ?        S<     0:00 [kthread]
   28 ?        S<     0:00 [kacpid]
   43 ?        S<     0:00 [kblockd/0]
   44 ?        S<     0:00 [kblockd/1]
   45 ?        S<     0:00 [kblockd/2]
   46 ?        S<     0:00 [kblockd/3]
   47 ?        S<     0:00 [kblockd/4]
   48 ?        S<     0:00 [kblockd/5]
   49 ?        S<     0:00 [kblockd/6]
   50 ?        S<     0:00 [kblockd/7]
   51 ?        S      0:00 [khubd]
  102 ?        S      0:00 [pdflush]
  103 ?        S      0:02 [pdflush]
  104 ?        S      0:00 [kswapd0]
  105 ?        S<     0:00 [aio/0]
  106 ?        S<     0:00 [aio/1]
  107 ?        S<     0:00 [aio/2]
  108 ?        S<     0:00 [aio/3]
  109 ?        S<     0:00 [aio/4]
  110 ?        S<     0:00 [aio/5]
  111 ?        S<     0:00 [aio/6]
  112 ?        S<     0:00 [aio/7]
  256 ?        S      0:00 [kseriod]
  511 ?        S<     0:00 [ata/0]
  512 ?        S<     0:00 [ata/1]
  513 ?        S<     0:00 [ata/2]
  514 ?        S<     0:00 [ata/3]
  515 ?        S<     0:00 [ata/4]
  516 ?        S<     0:00 [ata/5]
  517 ?        S<     0:00 [ata/6]
  518 ?        S<     0:00 [ata/7]
  519 ?        S<     0:00 [ata_aux]
  529 ?        S      0:00 [scsi_eh_0]
  530 ?        S      0:00 [scsi_eh_1]
  531 ?        S      0:00 [scsi_eh_2]
  532 ?        S      0:00 [scsi_eh_3]
  533 ?        S      0:00 [scsi_eh_4]
  534 ?        S      0:00 [scsi_eh_5]
  564 ?        S      0:00 [kjournald]
 1142 ?        S<     0:00 [kauditd]
 1298 ?        Ss     0:00 udevd
 3187 ?        Ss     0:00 syslogd -m 0
 3191 ?        Ss     0:00 klogd -x
 3209 ?        Ss     0:00 portmap
 3218 ?        Ss     0:00 rpc.statd
 3248 ?        Ss     0:00 rpc.idmapd
 3342 ?        S      0:00 /usr/sbin/smartd
 3351 ?        Ss     0:00 /usr/sbin/acpid
 3363 ?        Ss     0:00 /usr/sbin/sshd
 3378 ?        Ss     0:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
 3519 ?        Ss     0:00 /usr/libexec/postfix/master
 3525 ?        S      0:00 qmgr -l -t fifo -u
 3530 ?        Ss     0:00 crond
 3547 ?        Ss     0:00 /usr/sbin/atd
 3565 ?        Ss     0:00 dbus-daemon-1 --system
 3576 ?        Ss     2:16 hald
 3585 tty1     Ss+    0:00 /sbin/mingetty tty1
 3587 tty2     Ss+    0:00 /sbin/mingetty tty2
 3588 tty3     Ss+    0:00 /sbin/mingetty tty3
 3589 tty4     Ss+    0:00 /sbin/mingetty tty4
 3590 tty5     Ss+    0:00 /sbin/mingetty tty5
 3591 tty6     Ss+    0:00 /sbin/mingetty tty6
13527 ?        SLs    0:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g
16693 ?        S      0:00 pickup -l -t fifo -u

Ab es scheint schon so zu sein, dass der 2.6.9-103.ELsmp Kernel nicht so effizient ist.
 
Hey,

ich würde nochmal alternativ testen, wie die VM bei nur 2 cores performt. Vielleicht hat der alte Kernel hier seine Probleme.
 
Mit 2 Kernen liegt die CPU Auslastung nun bei 16%. Die Performance von der MySQl4 Instanz ist ausreichend für unsere Zwecke.
Kennt sich Jemand mit den "Extra CPU Flags: " in den EInstellungen der VM zur Hardware/Prozessor aus? Vielleicht kann man da noch etwas tunen? Die VM läuft ohne Internetzugang mit der Maschine in einem eigenen Subnet in eigenem VLAN und es gibt keinerlei sicherheitsrelevanten Dinge zu beachten.
 
Es gab früher noch eine HZ Einstellung des Kernels. Da gab´s IIRC so Empfehlungen wie 100 für Server, 1000 für Desktop. Meines Wissens aber wurde der Kernel entsprechend kompiliert, was u.U. in diesem Fall keine Option ist. Damit könnte man vermutlich die CPU-Last in der VM weiter verringern.
 
Dein Nachbohren wegen der alten Software imponiert mir:

Wir nutzen hier eine Maschine (weltweit einzigster Prototyp), welche vorher errechnete Steuerungsparameter aus einer MySQL 4 Datenbank liest.
Als ich damals unsere Container Systeme die auf OpenVZ liefen, von CentOS4 auf CentOS5 aktualisierte, wurde auch in CentOS5
MySQL5 eingeführt. Ich zog die DB von MySQL4 auf MySQL5 um, und die Maschine lief nicht mehr. Ich kontaktierte den Entwickler der Maschine und der sagte, dass es mit irgendwelchen JOINS zusammen hängt, da hätte sich was von MySQLv4 zu v5 gändert. Trotz mehrfachen Bitten und finanziellen Anreizen schaffte es der Entwickler nicht mehr vor seinem überrraschenden Ableben, die Joins zu ändern. So weit ich weiß, wurde das sehr komplexe Programm auf Delphi programmiert, wir haben nur die Windows Binaries und keinen Source Code. Darum MySQL4. Ich hatte auch schon mal überlegt, einen MySQL Proxy zwischen der Maschine und einem MariaDB Server zu schalten, um die SELECTs zu manipulieren. Dazu müßte ich aber ersteinmal herausfinden, was sich bei den JOINS von v4 zu v5 gändert hat. Eine CentOS 4 VM mit MySQL 4 aufzusetzen war da der einfachere Weg.

Danke für das ausführliche Beschreiben. Wow, das ist echt mies und verständlich. Extrem Legacy-Code :-/

Ich denke, du kannst es auch als LX(C)-Container hinbekommen, auch ein Docker-Container wird gehen. Hab letztens erst eine Oracle 9 in CentOS 4 zum laufen gebracht.
 
Ich hatte am Wochenende mal ganz frech einen CentOS4 OpenVZ Template in die PVE eingespielt, hat sogar geklappt. Nur beim Start des Containers kamen dann irgendwelche Fehler. Ich dachte mir dann, dass die Architektur des 64Bit CentOS4 Container wohl mit dem 5er Kernel der Node ein Problem hat, da hat sich ga segr viel geändert. Darum erschien die VM die praktikabelste Lösung, klar das hier mehr Ressourcen gebunden werden.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!