ILO හරහා HP සේවාදායකයන් කළමනාකරණය කිරීම සඳහා ඩොකර් කන්ටේනරය

ඔබ සමහරවිට කල්පනා කරනවා ඇති - ඩොකර් මෙහි පවතින්නේ ඇයි? ILO වෙබ් අතුරු මුහුණතට ලොග් වී ඔබේ සේවාදායකය අවශ්‍ය පරිදි සැකසීමේ ගැටලුව කුමක්ද?
මට නැවත ස්ථාපනය කිරීමට අවශ්‍ය පැරණි අනවශ්‍ය සේවාදායකයන් කිහිපයක් ඔවුන් මට ලබා දුන් විට මා සිතුවේ එයයි. සේවාදායකයම විදේශයන්හි පිහිටා ඇත, පවතින එකම දෙය වෙබ් අතුරු මුහුණතයි. හොඳයි, ඒ අනුව, සමහර විධානයන් ක්රියාත්මක කිරීමට මට Virtual Console වෙත යාමට සිදු විය. එතනින් තමයි පටන් ගත්තේ.
ඔබ දන්නා පරිදි, ජාවා සාමාන්‍යයෙන් HP හෝ Dell හි විවිධ ආකාරයේ අථත්‍ය කොන්සෝල සඳහා භාවිතා කරයි. අඩුම තරමින් එය එසේ විය (සහ පද්ධති ඉතා පැරණි ය). නමුත් ෆයර්ෆොක්ස් සහ ක්‍රෝම් බොහෝ කලකට පෙර මෙම ඇප්ලට් සඳහා සහය දැක්වීම නැවැත්වූ අතර නව IcedTea මෙම පද්ධති සමඟ ක්‍රියා නොකරයි. එබැවින්, විකල්ප කිහිපයක් මතු විය:

1. ඔබගේ යන්ත්‍රයේ බ්‍රව්සර් සහ ජාවා අනුවාද වලින් සත්වෝද්‍යානයක් තැනීම අරඹන්න, මෙම විකල්පය තවදුරටත් අවශ්‍ය නොවීය. විධාන කිහිපයක් සඳහා පද්ධතිය සමච්චල් කිරීමට ආශාවක් නැත.
2. අතථ්‍ය යන්ත්‍රයේ තරමක් පැරණි යමක් දියත් කරන්න (ඔබට ජාවා 6 අවශ්‍ය බව පර්යේෂණාත්මකව පෙනී ගියේය) සහ ඒ හරහා ඔබට අවශ්‍ය සියල්ල වින්‍යාස කරන්න.
3. 2 වන කරුණට සමාන, බහාලුමක් තුළ පමණක්, සගයන් කිහිප දෙනෙකුට එකම ගැටලුවකට මුහුණ දී ඇති අතර, සියලු මුරපද යනාදිය සහිත අතථ්‍ය යන්ත්‍ර රූපයකට වඩා ඔවුන්ට ඩොකර්හබ් හි ඇති බහාලුමකට සබැඳියක් මාරු කිරීම වඩාත් පහසු වේ.
(ඇත්ත වශයෙන්ම, මට 3 වන ස්ථානය ලැබුණේ මම ලකුණු 2 කිරීමෙන් පසුව පමණි)
අපි අද 3 වන කරුණ කරන්නෙමු.

මම ප්‍රධාන වශයෙන් ව්‍යාපෘති දෙකකින් ආශ්වාදයක් ලැබුවා:
1. docker-baseimage-gui
2. docker-firefox-java
මූලික වශයෙන් පළමු ව්යාපෘතිය docker-baseimage-gui Docker හි ඩෙස්ක්ටොප් යෙදුම් ධාවනය කිරීම සඳහා දැනටමත් උපයෝගිතා සහ වින්‍යාසයන් අඩංගු වේ. සාමාන්‍යයෙන් ඔබට සම්මත විචල්‍යයන් නිර්වචනය කිරීමට අවශ්‍ය වන අතර ඔබගේ යෙදුම බ්‍රවුසරය (වෙබ්සොකට්) හෝ VNC හරහා ප්‍රවේශ විය හැක. අපගේ නඩුවේදී, අපි Firefox සහ VNC හරහා දියත් කරන්නෙමු; එය websocket හරහා ක්‍රියා කළේ නැත.
පළමුව, අවශ්‍ය පැකේජ ස්ථාපනය කරමු - Java 6 සහ 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

දැන් ඔබට කිරීමට ඇත්තේ ILO අතුරුමුහුණත පිටුවට ගොස් ඔබගේ පරිශීලක නාමය සහ මුරපදය ඇතුළත් කිරීමයි. ස්වයංක්‍රීය ආරම්භයේදී ෆයර්ෆොක්ස් දියත් කරන්න:

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

උදාහරණයක් ලෙස, HILO_HOST පරිසර විචල්‍යයේ අපගේ ILO අතුරුමුහුණතේ වෙබ් ලිපිනය අඩංගු වේ myhp.example.com
පුරනය වීම ස්වයංක්‍රීය කිරීමට, අපි අවසරය එකතු කරමු. ILO වෙත පුරනය වීම සාමාන්‍ය POST ඉල්ලීමක් සමඟ සිදු වේ, එහි ප්‍රතිඵලයක් ලෙස ඔබට JSON session_key එකක් ලැබෙනු ඇත, එය ඔබ GET ඉල්ලීමකින් සමත් වේ:
HILO_USER සහ HILO_PASS පරිසර විචල්‍යයන් අර්ථ දක්වා තිබේ නම් curl හරහා session_key ගණනය කරමු:

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

අපි session_key එක docker හි පටිගත කළ පසු, අපට VNC ධාවනය කළ හැක:

exec x11vnc -forever -create

දැන් අපි VNC හරහා දේශීය සත්කාරක 5900 (හෝ ඔබ කැමති වෙනත්) වෙත සම්බන්ධ කර අථත්‍ය කොන්සෝලය වෙත යන්න.
සියලුම කේතය ගබඩාවේ ඇත docker-ilo-client.
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

ADDRESS_OF_YOUR_HOST යනු ILO සත්කාරක නාමය වන අතර, SOME_USERNAME යනු පිවිසුම වන අතර, ඒ අනුව, ILO සඳහා මුරපදය SOME_PASSWORD වේ.
ඊට පසු, ඕනෑම VNC සේවාලාභියෙකු ලිපිනයට දියත් කරන්න: vnc://localhost:5900
එකතු කිරීම් සහ ඇදීමේ ඉල්ලීම්, ඇත්ත වශයෙන්ම, සාදරයෙන් පිළිගනිමු.

DELL යන්ත්‍රවල IDRAC අතුරුමුහුණත් වෙත සම්බන්ධ කිරීම සඳහා සමාන ව්‍යාපෘතියක් පවතී: docker-idrac6.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න