kimchi-project / kimchi

An HTML5 management interface for KVM guests
https://github.com/kimchi-project/kimchi/releases/latest
Other
3.12k stars 364 forks source link

Better and easier installation procedure for Kimchi #1302

Open ffrediani opened 4 years ago

ffrediani commented 4 years ago

I always found a hell to install kimchi. It should not be like that. It's not a piece of very complex software to have to be like that.

There always been many issues with the fact it runs as a wok plugin. Why making it as a wok plugin ? Can't it be made much simpler so anyone can easily install on most distributions.

Most installations I have tried failed and just a few succeed. Checking the issues tab there has been a lot of other people with similar issues. Even building from source makes it difficult to work. Sometimes doesn't install at all. When it installs it doesn't load the kimchi plugin and the trobleshooting stuff is pretty short to be very helpful.

Does it have to be like that ? Can't it be make much simple like a tarball you drop into web-server tree or at least to have repositories with ready packages for most known distributions which easy up a lot the installation process ? For example the built packages doesn't even are available for LTS versions of Ubuntu or even the most recent Debian ones, only 10 and that's it.

Can this be considered to be re-architected ? Can it be more accessible to others ?

This feature request isn't intended to resolve any specific installation issue but to ask the maintainers to make a deep consideration to make the installation of this useful software much nicer and simpler, even if that means changing its architecture.

tabnul commented 4 years ago

Agreed, was unable to install on LTS 18.0.4 due to cheetah not available and all kinds of other errors (syntax errors, i suspect some conflict in python version).

I eventually went to ubuntu 19.10 and i still had to overcome some issues (e.g. PEM files for nginx where unavailable and caused installation to crash. I manually created them and then i could proceed. still had to manually install the distro module). It is working now.

alinefm commented 4 years ago

Hey @ffrediani

I completely understand your frustration and be sure, I'd be the first person willing to make Wok and Kimchi more accessible for everyone, but it is almost impossible to keep track of all the available Linux distributions out there. We don't have many active developers (as you can see for the git history) and most of the people have a full time job that is not related to Wok/Kimchi.

We did our best to test Wok and Kimchi 3.0 on Fedora, Ubuntu, Debian and openSUSE latest versions (yeah, not enough) and proper listed the step by step to install them (https://github.com/kimchi-project/kimchi/releases/tag/3.0.0)

And it should be easy to build and install Wok and Kimchi following the steps on README. If you do so and it doesn't work for you, please, let me know. I think the big problems related to that rely on Wok and Kimchi dependencies that differs from distribution to distribution (when you can find all them).

I can't see how making the installation process easier is related to Kimchi architecture. Could you clarify your thoughts about it?

About troubleshooting, we do have these pages: https://github.com/kimchi-project/wok/wiki/Troubleshooting https://github.com/kimchi-project/kimchi/wiki/Troubleshooting

alinefm commented 4 years ago

Hey @tabnul

Did you follow all the steps described at https://github.com/kimchi-project/kimchi/releases/tag/3.0.0 and you were not able to make it working on Ubuntu 19.10?

Could you expose your problems you had, please?

During our tests, there was a warning related to the PEM file (as it is generated on server start up) but the installation didn't crash.

ffrediani commented 4 years ago

Hello @alinefm thanks for your reply. In my view is not about keeping a track of all possible Linux distribution, but a few most used, specially LTS ones in order to build some .deb and .rpm packages. But more important than that perhaps it about changing the architecture of the whole thing. It seems that fact it depends on Wok and runs as a plug-in of it make is rather more complex to install. Just to give you an example on similar software WebVirtMgr (https://github.com/retspen/webvirtmgr) and WebVirtCloud (https://github.com/retspen/webvirtcloud) seems easier to run in the sense that it only depends on some python/django stuff and the main code runs in a tarball that you just put inside a web server folder. Seems a much more flexible way to run stuff rather than depending on something that had to be compiled or a binary package to match everything on that distribution.

I know it may not be an easy thing to make such re-design but perhaps that could be a way to make it more accessible and flexible to install. The interface is nice and it has potential to be used by more people and perhaps by this usage gather more developers to contribute.

ffrediani commented 4 years ago

I followed exactlly the instructions for 3.0.0 for Ubuntu 18.10 and neither the .deb packages or the compile from source worked at all. What I managed to do is install the 2.5.0 using the deb packages (from source didn't work either) and still it had a problem complaining that python-imaging didn't exist (as it changed name to python-pil which makes you have to change the /var/lib/dpkg/status in that distribution, otherwise apt would uninstall kimchi.

tabnul commented 4 years ago

Hey @tabnul

Did you follow all the steps described at https://github.com/kimchi-project/kimchi/releases/tag/3.0.0 and you were not able to make it working on Ubuntu 19.10?

Could you expose your problems you had, please?

During our tests, there was a warning related to the PEM file (as it is generated on server start up) but the installation didn't crash.

Hi,

Yes i did. The PEM errors were indeed warnings. NGinx unable to start because of missing PEM files (directly after WOK install) I manually created them using;

sudo openssl req -x509 -newkey rsa:4096 -keyout /etc/wok/wok-key.pem -out /etc/wok/wok-cert.pem -days 2000 -nodes -subj "/C=US/CN=wok/O=kimchi-project.org"

sudo openssl dhparam -dsaparam -out /etc/wok/dhparams.pem 2048

After installing kimchi, i got errrors of a missing 'distro' module (there is an issue here from a user experiencing the same). I fixed that one by manually installing distro using; sudo pip3 install distro