DPC 19.10 -päivityksessä näkyy käyttöliittymä "Yhteyden muodostaminen localhostiin epäonnistui"
Summary: DPC 19.10 -päivityksen jälkeen DPC-käyttöliittymässä näkyy teksti Failure to connection to localhost/127.0.0.1:8143.
Symptoms
DPC 19.10 -päivityksen jälkeen et voi käyttää DPC-käyttöliittymää.
Tarkistettaessa tiedostoa /var/log/dpc/elg/elg.log näet seuraavat virheet:
2024-05-09 13:34:54,911 DEBUG reactor-http-epoll-4 c.d.i.i.k.c.IAMCliRunner Received error during execution: finishConnect(..) failed: Connection refused: localhost/127.0.0.1:8143; nested exception is io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: Connection refused: localhost/127.0.0.1:8143
Suorittaminen docker ps -komennolla näkyy, että Keycloak-säilössä on 'EXITED':
/data01/docker/volumes/keycloak-postgres-db/_data # docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 05dd8ebc74e8 dpd/dpc/iam-service:latest "java -cp iam:iam/li…" 52 minutes ago Up 48 minutes 127.0.0.1:8870->8870/tcp, ::1:8870->8870/tcp iam-service 34a6b3c4c5c4 dpd/dpc/dp-keycloak:2.3.0-2 "/opt/keycloak/bin/k…" 52 minutes ago Exited (127) 10 minutes ago iam-provider df560f07da93 dpd/dpc/postgres-db:2.3.0-2 "docker-entrypoint.s…" 52 minutes ago Up 49 minutes (healthy) 5432/tcp postgres-db
Docker-lokeja tarkistettaessa näkyy seuraava virhe:
/data01/docker/volumes/keycloak-postgres-db/_data # docker logs --tail 100 34a6b3c4c5c4 Fatal glibc error: CPU does not support x86-64-v2
Cause
DPC 19.10 -versiossa käytetty Keycloak-versio (Keycloak 21) edellyttää, että suoritintyyppi on x86-64-v2 tai uudempi.
DPC:tä varten luodussa virtuaalikoneessa ei ole tällaista suoritinta, joten Keycloak-säilö on poistumassa eikä ole käynnissä.
Resolution
Tämä ongelma voi johtua muutamasta ongelmasta.
- ESXi-isäntä ei tue x86-64-v2:ta, useimmat vuoden 2008 jälkeen valmistetut suorittimet tukevat tätä mikroarkkitehtuuria.
- Virtuaalikone on saatettu rakentaa ilman tätä mikroarkkitehtuurin tukea.
Voit ratkaista tämän ongelman selvittämällä, tukeeko isäntäsi x86-64-v2:ta.
- Jos näin käy, voit ottaa käyttöön uuden virtuaalikoneen, johon kyseinen mikroarkkitehtuuri on määritetty, ja ottaa sitten DPC:n käyttöön kyseisessä virtuaalikoneessa.
- Jos se ei tue sitä, sinun on löydettävä isäntä, joka tukee tätä mikroarkkitehtuuria, ja siirrettävä DPC-virtuaalikone kyseiseen isäntään.
Voit tarkistaa, tukeeko virtuaalikoneesi tätä, luomalla Linux-virtuaalikoneeseen cpuinfo.sh-komentosarjan, jossa on seuraavat tiedot:
#!/usr/bin/awk -f
BEGIN {
while (!/flags/) if (getline < "/proc/cpuinfo" != 1) exit 1
if (/lm/&&/cmov/&&/cx8/&&/fpu/&&/fxsr/&&/mmx/&&/syscall/&&/sse2/) level = 1
if (level == 1 && /cx16/&&/lahf/&&/popcnt/&&/sse4_1/&&/sse4_2/&&/ssse3/) level = 2
if (level == 2 && /avx/&&/avx2/&&/bmi1/&&/bmi2/&&/f16c/&&/fma/&&/abm/&&/movbe/&&/xsave/) level = 3
if (level == 3 && /avx512f/&&/avx512bw/&&/avx512cd/&&/avx512dq/&&/avx512vl/) level = 4
if (level > 0) { print "CPU supports x86-64-v" level; exit level + 1 }
exit 1
}
Kirjoita komentosarjatiedosto chmod +x ja suorita se seuraavalla komennolla:
./cpuinfo.sh
Jos saat seuraavan tuloksen, sitä tuetaan:
./cpu-type.sh CPU supports x86-64-v2