Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LXC 2.0 #119

Open
izznogooood opened this issue Jul 3, 2017 · 13 comments
Open

LXC 2.0 #119

izznogooood opened this issue Jul 3, 2017 · 13 comments

Comments

@izznogooood
Copy link

izznogooood commented Jul 3, 2017

I have various issues, should i report them or is the project dead?

@claudyus
Copy link
Owner

claudyus commented Jul 4, 2017

I would be happy merge any PRs!

@lcherone
Copy link

lcherone commented Jul 6, 2017

LXC 1.0 has a successor its called LXD!!, so unless this project can support LXD, IMO its dead... I've switched to LXD as it has more features like images, snapshots, live migration, ect ect... I use https://lxc.systems to control it all as there is not a open source script that can do multiple servers and configure nginx or apply iptables rules ect. my2cent

@rickyosser
Copy link

rickyosser commented Jul 6, 2017 via email

@lcherone
Copy link

lcherone commented Jul 6, 2017

Dont get me wrong, Your LXC1.0-Web-Panel is great for local devs, ive used it locally with ngrok and it works fine after fiddling with IPtables ect yeah works great .. no argument, but it's lacking the features required to take it any further than a local dev tool for people still using Ubuntu 14.04 or lower!

We used it in the office for a while and quickly found that we were only consuming the API part after a while, I built a PHP Client specific for LXC-Web-Panel https://packagist.org/packages/lcherone/lxcpapi

So after a while, we wanted to add more servers, so we now use LXD (its an API to containers like you say)...

@rickyosser
Copy link

rickyosser commented Jul 6, 2017 via email

@izznogooood
Copy link
Author

izznogooood commented Jul 6, 2017

As long as LXC-Web-Panel funxtions for local containers it's good
enough for me! :)

But It doesnt...
It shows the wrong memory consumption (which btw redlines at 512mb, thats not alot today...)
It fails to show ip's on some containers which all have the "same" cfg.
Networking only works with lxc-bridge
Doesnt handle setting memmorty options back to unlimited.

I could go on.

Why I dont contribute, I'm not a programer.

And sure I can use lxd... But for the task at hand it's overcomplicated and need more attention than a simple cfg file.

@claudyus
Copy link
Owner

Hi @izznogooood,

as said by @rickyosser LWP is a administrator tool that would stay in the niche of administrate the local containers keeping the codebase and installation process as simple as possible.

There are some pitfalls for sure in the code now, some things are not configurable (like the maximum ram limit) or not supported (like the multiple ip for containers or complex network configuration) but I don't see anyone ready to sponsor any development of those "features" nor actively proposing any PR.

The "I'm not a programmer", is in my eyes an excuse to don't take part.
For example change the "maximum ram limit" is as simple as change a few lines of code in this file https://github.com/claudyus/LXC-Web-Panel/blob/master/lwp/templates/index.html#L104

I will be happy to help coding, merge and release improvement if provided but we should avoid to implement use-case outside the project niche which is "management of local container"

I believe that migrating the interface to LXD is promising but time consuming, I start to write integration test in preparation of this migration but this is a time-consuming activity and I don't see anyone that use LWP daily that would stand up and sponsorship or help in this task. Anyway, other tools are outstanding the LWP feature in this scenario like docker based platform, ubuntu snappy or project like the one promoted by @aarnaud in this conversation #103

Best Regards

@bmullan
Copy link

bmullan commented Feb 19, 2018

LXC if you look in the Ubuntu repositories comes as LXC1 and LXC2 !

The CLI for both of them are quite different..!

LXC v1.x is the original LXC.

LXC v1.x syntax is like: lxc-create, lxc-copy, lxc-list etc.

LXC v2.x is what LXD supports (and in March 2018 will come LXD/LXC 3.0).

LXC v2.x syntax is like: lxc launch (vs create), lxc copy, lxc list etc

In LXC v2.x (and LXD) none of the original LXC v1.x commands are present and they have all been replaced and/or updated to newer and much easier to use commands. There have also been added many new and more powerful features than existed in the original LXC v1.x.

So in a sense LXD is based on the original LXC but at the same time the LXC that LXD uses is very much different than the original LXC1.

brian

@izznogooood
Copy link
Author

izznogooood commented Feb 19, 2018

You are talking about LXD.
LXC2 uses the exact same cmd's. (some cfg variables have changed but are backward compatible)

root@proxmox:~# lxc
lxc-attach         lxc-checkconfig    lxc-console        lxc-destroy        lxc-freeze         lxc-ls             lxc-start          lxc-unfreeze       lxc-usernsexec     
lxc-autostart      lxc-checkpoint     lxc-copy           lxc-device         lxcfs              lxc-monitor        lxc-stop           lxc-unshare        lxc-wait           
lxc-cgroup         lxc-config         lxc-create         lxc-execute        lxc-info           lxc-snapshot       lxc-top            lxc-update-config  
root@proxmox:~# lxc-create --version
2.1.1
root@proxmox:~# 

LXC v2.x syntax is like: lxc launch (vs create), lxc copy, lxc list etc

No, LXD syntax is like that...

https://discuss.linuxcontainers.org/t/comparing-lxd-vs-lxc/24

@bmullan
Copy link

bmullan commented Feb 19, 2018

That doesn't seem to be the description that Stephane Graber (lxd/lxc project lead) gave:

https://lists.linuxcontainers.org/pipermail/lxc-users/2017-April/013083.html

where Stephane said:

The packaging in Ubuntu is a bit confusing unfortunately...

"lxc1" is the "LXC 1.0 user experience" which is what normal people call LXC
"lxc2" is the "LXC 2.0 user experience" which is what normal people call LXD

So if you install "lxc1", you'll get the usual LXC tools
"lxc-create/lxc-start/..." and all of those will be at version 2.0.7,
getting all the bugfix and security updates and supported through 2021.

Just above that section in the email the URL points to ... the email also states that if you do an apt-cache show lxc2 it displays:

apt-cache show lxc2

Description-en: Container hypervisor based on LXC - metapackage
LXD offers a REST API to remotely manage containers over the network,
using an image based workflow and with support for live migration.
.
This is a dummy metapackage to install LXD and its client.

So from this it doesn't even look like there's a lxc2, there's just lxc1
and lxd. Is that the case? If sow what's the LXC2 listed on that page? I
want to avoid to use stuff that will be dropped in the near future.

@izznogooood
Copy link
Author

izznogooood commented Feb 19, 2018

You are now talking about how ubuntu distribute and present it's packages.

LXD is a LXC api.

I understand this can be confusing, but I have nothing to add here. If you still feel confused I suggest writing him on the forum, he is quite active and friendly.

PS: I'd like to add the snippet I showed you was from Debian Strech (Proxmox)

If you do sudo apt install lxc in debian you get:

lxc/stable 1:2.0.7-2+deb9u1 amd64
Linux Containers userspace tools

Which is LXC (2.0.7-2) not LXD.

@bmullan
Copy link

bmullan commented Feb 19, 2018 via email

@izznogooood
Copy link
Author

Which is not not... != not my self away here. But i think you get it :)

I'm not confused

Well your the only one! :).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants