ʻO ka pahu Docker no ka mālama ʻana i nā kikowaena HP ma o ILO

E noʻonoʻo paha ʻoe - no ke aha e noho ai ʻo Docker ma aneʻi? He aha ka pilikia me ka hoʻopaʻa inoa ʻana i ka ILO pūnaewele a hoʻonohonoho i kāu kikowaena e like me ka mea e pono ai?
ʻO ia kaʻu i manaʻo ai i ka wā i hāʻawi mai ai lākou iaʻu i ʻelua mau kikowaena pono ʻole pono ʻole iaʻu e hoʻokomo hou (ka mea i kapa ʻia ʻo reprovision). Aia ka server pono'ī ma nā ʻāina ʻē, ʻo ka mea wale nō i loaʻa ʻo ka interface pūnaewele. No laila, pono wau e hele i ka Virtual Console e holo i kekahi mau kauoha. Ma laila i hoʻomaka ai.
E like me kāu e ʻike ai, hoʻohana maʻamau ʻia ʻo Java no nā ʻano console virtual like ʻole, inā ma HP a i ʻole Dell. ʻO ka liʻiliʻi loa ke ʻano o ia ma mua (a ua kahiko loa nā ʻōnaehana). Akā ua ho'ōki ʻo Firefox a me Chrome i ke kākoʻo ʻana i kēia mau applets i ka wā ma mua, a ʻaʻole hana ka IcedTea hou me kēia mau ʻōnaehana. No laila, ua puka mai kekahi mau koho:

1. E hoʻomaka i ke kūkulu ʻana i kahi zoo mai nā polokalamu kele pūnaewele a me nā mana Java ma kāu mīkini, ʻaʻole pono kēia koho. ʻAʻohe makemake e hoʻohenehene i ka ʻōnaehana no ka pono o nā kauoha ʻelua.
2. E hoʻokuʻu i kahi mea kahiko ma ka mīkini virtual (ua hoʻololi ʻia i ka hoʻokolohua pono ʻoe iā Java 6) a hoʻonohonoho i nā mea āpau āu e pono ai ma o ia.
3. E like me ka helu 2, i loko o kahi pahu wale nō, ʻoiai ua loaʻa kekahi mau hoa hana i ka pilikia like a ʻoi aku ka maʻalahi o ka hoʻoili ʻana iā lākou i kahi loulou i kahi pahu ma Dockerhub ma mua o kahi kiʻi mīkini virtual, me nā ʻōlelo huna a pau, etc.
(ʻOiaʻiʻo, loaʻa iaʻu i ka helu 3 ma hope o kaʻu hana ʻana i ka helu 2)
E hana mākou i ka helu 3 i kēia lā.

Ua hoʻoikaika nui ʻia au e nā papahana ʻelua:
1. docker-baseimage-gui
2. docker-firefox-java
ʻO ka papahana mua loa docker-baseimage-gui Loaʻa i nā pono a me nā hoʻonohonoho no ka holo ʻana i nā noi papa ma Docker. Pono ʻoe e wehewehe i nā ʻano like ʻole a hiki ke loaʻa kāu noi ma o ka polokalamu kele pūnaewele (websocket) a i ʻole VNC. I kā mākou hihia, e hoʻomaka mākou ma Firefox a me VNC; ʻaʻole ia i hana ma o websocket.
ʻO ka mua, e hoʻokomo i nā pūʻolo pono - Java 6 a me IcedTea:

RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list &&
apt-get update &&
apt-get -y upgrade &&
apt-get -y install firefox
nano curl
icedtea-6-plugin
icedtea-netx
openjdk-6-jre
openjdk-6-jre-headless
tzdata-java

ʻO nā mea a pau āu e hana ai, ʻo ka hele ʻana i ka ʻaoʻao interface ILO a hoʻokomo i kou inoa inoa a me kāu ʻōlelo huna. E hoʻokuʻu iā Firefox ma ka autostart:

RUN bash -c 'echo "exec openbox-session &" >> ~/.xinitrc' &&
bash -c 'echo "firefox ${HILO_HOST}">> ~/.xinitrc' &&
bash -c 'chmod 755 ~/.xinitrc'

Aia ma ka HILO_HOST kaiapuni ka helu wahi o kā mākou ILO, no ka laʻana myhp.example.com
No ka hoʻokaʻawale ʻana i ke komo ʻana, e hoʻohui kākou i ka ʻae. Loaʻa iā ʻoe ke komo i ka ILO me kahi noi POST maʻamau, ma muli o ka loaʻa ʻana o kahi JSON session_key, a laila e hāʻawi ʻia i kahi noi GET:
E helu kākou i ka session_key ma o ka curl inā i wehewehe ʻia nā ʻano hoʻololi kaiapuni HILO_USER a me HILO_PASS:

export HOME=/config
export HILO_HOST=${HILO_HOST%%/}
SESSION_KEY=""
data="{"method":"login","user_login":"${HILO_USER}","password":"${HILO_PASS}"}"
if [[ -n "${HILO_USER}" && -n "${HILO_PASS}" ]]; then
    SESSION_KEY=$(curl -k -X POST "${HILO_HOST}/json/login_session" -d "$data" 2>/dev/null | grep -Eo '"session_key":"[^"]+' | sed 's/"session_key":"//')
fi
echo "SESSION_KEY=$SESSION_KEY"
echo $SESSION_KEY > /session_key

Ke hoʻopaʻa mākou i ka session_key ma docker, hiki iā mākou ke holo i ka VNC:

exec x11vnc -forever -create

I kēia manawa, hoʻopili wale mākou ma o VNC i ke awa 5900 (a i ʻole kekahi o kāu koho) ma localhost a hele i ka console virtual.
Aia nā code a pau i loko o ka waihona docker-ilo-mea kūʻai.
Kauoha piha e hoʻohui iā ILO:

docker run -d --rm --name ilo-client -p 5900:5900 -e HILO_HOST=https://ADDRESS_OF_YOUR_HOST -e HILO_USER=SOME_USERNAME -e HILO_PASS=SOME_PASSWORD sshnaidm/docker-ilo-client

ʻo ADDRESS_OF_YOUR_HOST ka inoa hoʻokipa ILO, ʻo SOME_USERNAME ka inoa inoa, a no laila, SOME_PASSWORD ka ʻōlelo huna no ILO.
Ma hope o kēlā, hoʻomaka wale i kekahi mea kūʻai aku VNC i ka helu wahi: vnc://localhost:5900
ʻO nā hoʻohui a me nā noi huki, ʻoiaʻiʻo, hoʻokipa ʻia.

Aia kekahi papahana like no ka hoʻopili ʻana i nā kikowaena IDRAC o nā mīkini DELL: docker-idrac6.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka