Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-20 Thread Matthias Beyer
No.

I need a way to describe debian/centos VM ISO images with Nix. Not
more, not less.

On 19-12-2015 23:01:22, Wout Mertens wrote:
> So basically you need a frontend that creates .nix files for profs and a vm
> image with all binaries for everything already on it?
> 
> On Sat, Dec 19, 2015 at 4:34 PM Matthias Beyer 
> wrote:
> 
> > On 11-12-2015 15:56:00, Marc Weber wrote:
> > >
> > > But serausly, if the profs need etiher mysql or postgresql why not put
> > > both on one iso and be done? Should students switch isos if they "happen
> > > to require the other software .." ?
> >
> > Because we would have N different ISOs flying around. Each Prof needs
> > another custom image, and having N configuration.nix vs. having N
> > vm.iso flying around ... is a deal, actually.
> >
> > >
> > > Because nixos can "switch configurations" there are more options: use
> > > usb sticks, then each prof can provide his config and students can
> > > update their 'usb clone' fast because only differences will be fetched
> > > (doing as much sharing on the stick as possible).
> > >
> >
> > We cannot expect the profs to write .nix files.
> >
> > --
> > Mit freundlichen Grüßen,
> > Kind regards,
> > Matthias Beyer
> >
> > Proudly sent with mutt.
> > Happily signed with gnupg.
> > ___
> > nix-dev mailing list
> > nix-dev@lists.science.uu.nl
> > http://lists.science.uu.nl/mailman/listinfo/nix-dev
> >
> -- 
> 
> Wout.
> (typed on mobile, excuse terseness)

-- 
Mit freundlichen Grüßen,
Kind regards,
Matthias Beyer

Proudly sent with mutt.
Happily signed with gnupg.


signature.asc
Description: PGP signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-20 Thread Wout Mertens
¯\_(ツ)_/¯ good luck I'd say :)

On Sun, Dec 20, 2015 at 10:45 AM Matthias Beyer 
wrote:

> No.
>
> I need a way to describe debian/centos VM ISO images with Nix. Not
> more, not less.
>
> On 19-12-2015 23:01:22, Wout Mertens wrote:
> > So basically you need a frontend that creates .nix files for profs and a
> vm
> > image with all binaries for everything already on it?
> >
> > On Sat, Dec 19, 2015 at 4:34 PM Matthias Beyer 
> > wrote:
> >
> > > On 11-12-2015 15:56:00, Marc Weber wrote:
> > > >
> > > > But serausly, if the profs need etiher mysql or postgresql why not
> put
> > > > both on one iso and be done? Should students switch isos if they
> "happen
> > > > to require the other software .." ?
> > >
> > > Because we would have N different ISOs flying around. Each Prof needs
> > > another custom image, and having N configuration.nix vs. having N
> > > vm.iso flying around ... is a deal, actually.
> > >
> > > >
> > > > Because nixos can "switch configurations" there are more options: use
> > > > usb sticks, then each prof can provide his config and students can
> > > > update their 'usb clone' fast because only differences will be
> fetched
> > > > (doing as much sharing on the stick as possible).
> > > >
> > >
> > > We cannot expect the profs to write .nix files.
> > >
> > > --
> > > Mit freundlichen Grüßen,
> > > Kind regards,
> > > Matthias Beyer
> > >
> > > Proudly sent with mutt.
> > > Happily signed with gnupg.
> > > ___
> > > nix-dev mailing list
> > > nix-dev@lists.science.uu.nl
> > > http://lists.science.uu.nl/mailman/listinfo/nix-dev
> > >
> > --
> >
> > Wout.
> > (typed on mobile, excuse terseness)
>
> --
> Mit freundlichen Grüßen,
> Kind regards,
> Matthias Beyer
>
> Proudly sent with mutt.
> Happily signed with gnupg.
>
-- 

Wout.
(typed on mobile, excuse terseness)
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-19 Thread Matthias Beyer
On 11-12-2015 16:45:38, Vladimír Čunát wrote:
> On 12/08/2015 03:31 PM, Matthias Beyer wrote:
> > Maybe you guys have some more ideas on what we can do and how we could 
> > do
> > it. Feel free to post your crazy ideas, I want _everything_ I could 
> > possible
> > do in my bachelors thesis.
> 
> Perhaps NixOS containers instead of full VMs? That sounds doable for
> bachelor, but I know too little about these things to be a good judge.

The problem is that the hosts do not run nixos.

-- 
Mit freundlichen Grüßen,
Kind regards,
Matthias Beyer

Proudly sent with mutt.
Happily signed with gnupg.


signature.asc
Description: PGP signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-19 Thread Matthias Beyer
On 11-12-2015 15:56:00, Marc Weber wrote:
> 
> But serausly, if the profs need etiher mysql or postgresql why not put
> both on one iso and be done? Should students switch isos if they "happen
> to require the other software .." ?

Because we would have N different ISOs flying around. Each Prof needs
another custom image, and having N configuration.nix vs. having N
vm.iso flying around ... is a deal, actually.

> 
> Because nixos can "switch configurations" there are more options: use
> usb sticks, then each prof can provide his config and students can
> update their 'usb clone' fast because only differences will be fetched
> (doing as much sharing on the stick as possible).
> 

We cannot expect the profs to write .nix files.

-- 
Mit freundlichen Grüßen,
Kind regards,
Matthias Beyer

Proudly sent with mutt.
Happily signed with gnupg.


signature.asc
Description: PGP signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-19 Thread Wout Mertens
So basically you need a frontend that creates .nix files for profs and a vm
image with all binaries for everything already on it?

On Sat, Dec 19, 2015 at 4:34 PM Matthias Beyer 
wrote:

> On 11-12-2015 15:56:00, Marc Weber wrote:
> >
> > But serausly, if the profs need etiher mysql or postgresql why not put
> > both on one iso and be done? Should students switch isos if they "happen
> > to require the other software .." ?
>
> Because we would have N different ISOs flying around. Each Prof needs
> another custom image, and having N configuration.nix vs. having N
> vm.iso flying around ... is a deal, actually.
>
> >
> > Because nixos can "switch configurations" there are more options: use
> > usb sticks, then each prof can provide his config and students can
> > update their 'usb clone' fast because only differences will be fetched
> > (doing as much sharing on the stick as possible).
> >
>
> We cannot expect the profs to write .nix files.
>
> --
> Mit freundlichen Grüßen,
> Kind regards,
> Matthias Beyer
>
> Proudly sent with mutt.
> Happily signed with gnupg.
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
-- 

Wout.
(typed on mobile, excuse terseness)
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-11 Thread Vladimír Čunát
On 12/08/2015 03:31 PM, Matthias Beyer wrote:
> Maybe you guys have some more ideas on what we can do and how we could do
> it. Feel free to post your crazy ideas, I want _everything_ I could 
> possible
> do in my bachelors thesis.

Perhaps NixOS containers instead of full VMs? That sounds doable for
bachelor, but I know too little about these things to be a good judge.




smime.p7s
Description: S/MIME Cryptographic Signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-11 Thread Marc Weber
VMs:

Either you put the 'iso's on disk, then each VM has its own data on disk
(may startup faster) - or you "share data" and fetch it via network
(nfs or whatever) - like "network booting", then you can share,
ad you can have "one nixos host" sharing all mysql/postgresql and the
configs required to boot the different systems ..

Having many isos is not a problem - that's why nix has a garbage
collector :-)

The nice thing is using nix you can share the configuration and do both:
generates isos or do network boot (in theory - no idea whether a lot of
work as been done on this ..)

Some packages do depend no "nix" setups (eg /etc/*) thus may or may not
work on regular linux systems as expected.

But serausly, if the profs need etiher mysql or postgresql why not put
both on one iso and be done? Should students switch isos if they "happen
to require the other software .." ?

Because nixos can "switch configurations" there are more options: use
usb sticks, then each prof can provide his config and students can
update their 'usb clone' fast because only differences will be fetched
(doing as much sharing on the stick as possible).

Marc Weber
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] [Bachelors Thesis] Studi-Cloud VMs managing with Nix?

2015-12-08 Thread Matthias Beyer
Hi,

some of you already know: I'm going to write my bachelors thesis next year, from
march until June or July.

I had another idea and one of my protential supervisors is really interested in
a solution to the following problem:

We have a cloud for students here, each student is able to start one or several
VMs on an OpenStack installation. There are some prepared images already
available: Debian, Ubuntu, CentOS.

Managing updates for packages on the VMs is done by the VM users. From time to
time, some users want customized images (sometimes a Professor wants VMs for a
course with Apache, MySQL, etc availabe). These custom images vary a lot, so
each time a custom image is requested by a professor, a new image is generated,
started on the VMs and thrown away afterwards. If a student wants a custom
image, she or he gets told to do it on their own.

Several ideas came up:

1)
Generating custom images for the cloud. Basically a web interface where
a user can select
1.1) I want apache
1.2) I want postgresql / mysql
1.3) I want owncloud
1.4) I want that on debian/centos/ubuntu
and build a new .iso image from it.

A solution to this problem may or may not involve nix.

The problem is that this would result in a _lot_ of new .iso images
floating around:

user 1: I want apache, mysql
user 2: I want apache, mysql, php
user 3: I want apache, mysql, php, python

-> 3 images.

My idea here: All these "custom" packages are installed into a
cloud-global store and they are "mounted" into the VMs on startup. Not
thought about this in-depth yet, though I guess a solution like this
would be possible.

2)
Managed VMs where a user gets (via the web interface from 1) some tools
installed, for example owncloud, but doesn't get root access to the VM.
Updates and Upgrades could be rolled out by the admins of the cloud.

Problem is: One machine has not that much disc space available, so it we
would need to share one global /nix/store.

This VMs could run NixOS, as the user has no ability to get access to
the actual VM.

3)
Unmanaged VMs where a User is able to install custom packages (even
modified ones) via the nix package manager.

This one is actually a bit critical, as we cannot expect users to
understand that there is actually a second package manager besides
apt-get available. We would wrap apt-get (for example) to warn the user
when she/he wants to do an update on a package which is already
installed via nix.

Running NixOS is no option, sadly.

Two sub-options exist:

3.1) A user is able to install to the (cloud-) global store. After
 one VM dies (or gets removed) a nix-gc call would need to be
 ran on the global store, of course.

3.2) A user gets the /nix/store via an AUFS, where the global store
 is RO mounted into the image, so the global store provides some
 basic packages each user can use. If a user wants to install a
 custom package, it gets installed locally in the VM and if the
 VM gets removed, the package is removed as well. The global
 store is not affected at all.

4)
Related to 1-3 -> Ability to install packages into the VM(s) via an
openstack webinterface.

I did not put much brain-power in this yet.

We are speaking of about 300 VMs and 10TB storage which would be available,
though I was told that 1TB of package storage is no problem, but we should keep
it around this number if possible.


What I want from you:
-

Maybe you guys have some more ideas on what we can do and how we could do
it. Feel free to post your crazy ideas, I want _everything_ I could possible
do in my bachelors thesis.

Is the stuff I just mentioned even doable? What would it need to do this
stuff? Do you think one can do this in a _bachelors_ thesis?

TL;DR:
--

- 300 VMs in a studycloud (openstack)

- debian/ubuntu/centos .iso images

- customizeable images via openstack webinterface -> nix build
  infrastructure (?)

- "Managed" VMs, updates rolled out by admins -> cloud-global /nix/store

- AUFS-/nix/store to get basic package set from cloud-global store, ability
  to install local packages into local store

- We cannot assume the user to know nix

- Maybe even webinterface-based package installation for VMs

-> Tell me your thoughts on these notes/ideas!

-- 
Mit freundlichen Grüßen,
Kind regards,
Matthias Beyer

Proudly sent with mutt.
Happily signed with gnupg.


signature.asc
Description: PGP signature
___
nix-dev mailing list