Open NorihisaNakai opened 10 years ago
Hi @phil21 ,
Thanks for the prompt response We got dosen of the x11 and x10 in production. I'm aware of the fact there are some AMI / BMC differences within the same series like x7 / x8. I'll test these out as soon as I got this up & running.
Speaking of which, please help me out with getting this up, as the doc is not very clear about which steps to follow.
1) I checked out the branch
git clone -b ast2100-support https://github.com/kelleyk/noVNC.git ./
2) Ran launch
./utils/launch.sh --vnc IPMIIP:5900
3) Connected to http
Im not sure if step 2 & 3 are correct. Im running this next to a normal HTTPD server which makes me thing I do not need to run the launch part. Either with connecting to my apache server and pointing the novnc server settings to IPMI or with the websocket im getting a long rendering time and eventually a 1006 error code. Please advice which are the correct steps to follow.
Like @phil21 (hi!) said, we expect that this will work with any of the boards with Aten ("SMT") firmware. This should be a few X8s, many X9s, and most or all X10/X11s.
I'll confess that I've never actually used utils/launch.sh
; I use websockify directly.
All you need to do is:
python websockify.py <port-to-listen-on> <bmc-inetaddr>:5900
e.g.
python websockify.py 5999 10.1.2.3:5900
Then, visit any web server serving my branch of noVNC (for testing purposes you can try e.g. cd /path/to/novnc; python -m SimpleHTTPServer 8080
) and point it at websockify
(in the above example, assuming you're running websockify
locally, that'd be localhost:5999
).
Where noVNC asks for a password, enter USERNAME:PASSWORD
(e.g. ADMIN:ADMIN
if you have not changed the defaults).
The only issue that we're aware of is that quality is not quite as good as it should be for data blocks sent using the JPEG-style compression method. If you open noVNC's settings (before or after connecting) and turn off chroma subsampling (by selecting YUV 4:4:4), you should notice that terminal output in particular looks tremendously better. (This setting can also be pre-configured as part of the URL.)
Re: your question about whether all of the files are necessary: I'm afraid that most of them probably are. It would be wonderful if it were possible to merge and minify noVNC like it is for many JavaScript applications, but unfortunately that's just not the way it's put together.
Did anyone try noVNC with AST2050 based BMC yet? (Dell PowerEdge-C CloudEdge / Quanta / Tyan). These are using the AMI "MegaRAC" firmware, so it's different from the ATEN/SMT firmware.
@kelleyk Can anybody tell me which is the current branch to test? I tried a X10SRH-CF with latest redfish IPMI firmware with has a native HTML5 console with the bmc-support branch from https://github.com/kelleyk/noVNC.git but i get no connection while it works with a X10DRFR-NT board.
Nothing happens to me for thre X10SRH-CF:
WebSocket server settings:
Navigate to this URL:
http://...&port=6080
Press Ctrl-C to exit
localhost - - [22/Mar/2017 21:45:51] 127.0.0.1: Plain non-SSL (ws://) WebSocket connection localhost - - [22/Mar/2017 21:45:51] 127.0.0.1: Path: '/websockify' localhost - - [22/Mar/2017 21:45:51] connecting to: XXXX:5900
handler exception: [Errno 107] Transport endpoint is not connected
And now nothing happens ... but i can successfully connect to the 5900 port via netcat.
Have you tried to update X10SRH-CF bmc firmware to newer version from X10DRFR-NT? Technically speaking those boards are identical by platform and fw image internals. I can't give you any guarantees but..
Thanks but no this doesn't change anything. Is there any way to debug the issue?
Here's a fun change, I have a X11SSE-F with the 1.28 firmware... apparently it now speaks SSL over the VNC port (5900), rather then just raw VNC. That pretty much breaks all the existing functionality.
ah that might be the same case to me with the latest redfish X10 firmware. But wouldn't that just mean to activate SSL in websockify?
Enabling --ssl-target on websockify gets you a step closer, but in my case I'm then getting 'Invalid server version: 055.008)
I modified the code so it accepts 055.008 but when novnc sends a client version of 003.008 the server closes the connection ;-(
Yea, take a look at https://github.com/kelleyk/noVNC/pull/1 . It gets you a step further, but then fails to actually auth.
What's funny is this board has kellyk's noVNC fork embedded in it. It certainly makes figuring out what's wrong easier
I added auth support in https://github.com/kelleyk/noVNC/pull/2 , but it still won't actually work.
@disaster123 That's the current version, yes.
Let me see if I can find a moment to take a look. If other people are being impacted by the way that the newer firmware behaves, please speak up!
@kelleyk Hi, see here https://github.com/kelleyk/noVNC/pull/2#issuecomment-289174527
It may be useful if someone with an affected X11 board can make it available for @kelleyk (hey!) to debug directly against. This of course means a non-production machine suitable for lab use.
I honestly haven't had the time (or yet need) to dig deeper into the new html5 firmware on the BMC, but I suspect a few changes.
I don't know if it's the right place to ask this question, but since I've updated my noVNC setup from kelleyk/noVNC@63cc01f796ed7df80c537269f9f4855ab7df5169 to kelleyk/noVNC@eb386b7672b1cef4ca02c9da769d5d08beefd0ab I can no longer connect to any of my servers.
I get an "Unsupported server" error in noVNC UI.
Here's the motherboards I use:
Is this a known issue?
@jleroy Hm -- no, I wasn't aware of issues like that. Would you mind opening an issue in kelleyk/noVNC
and repeating that information, along with the firmware version of each board you've tried?
@kelleyk The "Issues" tab seems to be disabled on kelleyk/noVNC
repository (or maybe I'm really tired).
@jleroy @kelleyk I noticed the same "Unsupported server" error on X8SIL-F (version 03.16) using that commit.
I've enabled issues on that repository.
Yikes; I'm sorry to have caused trouble for so many of you! Please file issues and tell me which version (commit SHA) of noVNC you're using, which board you're trying to connect to, what version its firmware is, and what happens.
@kelleyk: Thank you. I've created an issue on your repository.
BTW, X11SSE-F now works correctly using https://github.com/kelleyk/noVNC/pull/2
what about hp ILO support ?
@kelleyk @devicenull is there a current branch merging all open pull requests regarding kvm? I lost the overview / current status of this one.
Also is there any chance this gets merged into novnc?
I'm still open to merging this, assuming it gets rebased. If it has been rebased (and I've just missed it), please let me know and I'll start reviewing.
does anybody can helps me understand how aten ikvm subrect encoding transform to basic raw encoding? I'm try to write server side proxy to convert aten ikvm traffic to plain vnc. And now i don't understand how to convert subrect..
This is great, would love to see it merged. How different is the AMI hardware, do you know at all? I was so excited to be able to not need java to do server maintaince, then I found out my X8 has the AMI board, not the ATEN.
@vtolstov The best documentation is probably my implementation, which you can see here: https://github.com/kelleyk/noVNC/tree/bmc-support/core/ast2100
Each frame is a list of MCUs, which could feasibly be translated into a subrect. The loop that decodes each block (MCU) in a frame is here: https://github.com/kelleyk/noVNC/blob/bmc-support/core/ast2100/ast2100.js#L235
Each MCU begins with a four-bit value that indicates how it is encoded. There are two distinct types of compression involved. The first is based on vector quantization (with 0, 1, or 2-bit codewords, producing 1, 2, or 4 colors) and the other is similar to how JPEG/JFIF MCUs are compressed. The Huffman and quantization tables are not contained in the data stream, but you can extract them from my work. There is also support for 4:2:0 chroma subsampling; in this mode, there won't be any VQ blocks.
Like in JPEG/JFIF, the MCUs are 8x8 pixels (for either compression method) when chroma subsampling is disabled, and 16x16 pixels when chroma subsampling is enabled.
@beren12 The AMI board is unlikely to be very similar; it's a different SoC and different software stack. Sorry!
Ah, figures. I'll just have to keep using a vm with java installed.
Great work though!
Hi
I have an server with iLO and IPMI access. I want to create a web console with this server using ipmi sol (serial over lan). The solution I think is redirect sol connection (ipmitool sol activate) to a kvm device.
Searching in DigitalOcean console, I see they are using noVNC to create the console, and searching more I got a way to connect an Ubuntu console using qemu (qemu-system-i386 -vnc :1 -nographic -serial mon:stdio -append 'console=ttyS0' binary.img -kernel /boot/vmlinuz-3.13.0-141-generic) and output it using noVNC (./utils/launch.sh --vnc localhost:5901).
So now I need to remotelly redirect ipmi sol to access this server console, but I don't have idea in how to create this redirection, and if it is possible. I have tried an other solution using iLO configured ports to connect it direct to noVNC, but not worked and got Connection refused.
Anyone has a suggestion about this case? Thanks
Did this ever get merged into the main repo?
No, it hasn't been, yet--sorry! I've been pressed for time.
On Sat, Aug 25, 2018 at 12:28 PM, David Lenwell notifications@github.com wrote:
Did this ever get merged into the main repo?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/novnc/noVNC/issues/385#issuecomment-415991334, or mute the thread https://github.com/notifications/unsubscribe-auth/AAx_hscHEvIc7920Q2OSayTRuD5r4A69ks5uUaV7gaJpZM4CYH0E .
Figured I'd chime in as well - I'm having the same error as a few above - "Unsupported server" on my X9DRD SuperMicro board using FW: 3.39.
Checking in on this a few years later..
Me3 - would love for this to get merged!
Hi, We want to connect to iKVM (Supermicro motherboard IPMI VNC Server) on noVNC. But, iKVM VNC protocol use original future on VNC protocol. if project have to support iKVM, would you tell me schedule?
Thank you for your cooperation.
Norihisa Nakai