unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* AWS + OpenStack support
@ 2017-04-10 20:21 Mark Meyer
  2017-04-11  4:16 ` Chris Marusich
  2017-04-13 14:39 ` Ludovic Courtès
  0 siblings, 2 replies; 10+ messages in thread
From: Mark Meyer @ 2017-04-10 20:21 UTC (permalink / raw)
  To: guix-devel

Hi list, is anybody interested in having support for running guix on AWS
and/or OpenStack?

I've GuixSD running on AWS. The way to get there was somewhat contrived,
but it worked well.

Basically these `cloud' environments provide some form of instance
configuration. You're supposed to create an image of your OS and it'll
self configure upon (first) boot. This includes more than enabling
DHCP. Generally AWS will provide a so called metadata server. The
important thing serves are your public keys. You'll generally specify a
set of public keys on instance startup.

So I'd like to extend Shepherd with a first-boot service that runs `guix
system reconfigure'. And as a second step I want to include a Guile
package that queries the metadata server. You should be able to do
something like

  (user "guix-sd"
        (public-keys (metadata-get-keys)))

Despite this the only thing that is required to run on AWS is basically
an SSH implementation and a DHCP configuration.

To get GuixSD running on AWS I did the following:

  - Build a disk-image out of my local GuixSD installation, enable
    OpenSSH and DHCP. Create a custom user and set the password.

  - Copy the disk-image to S3

  - Create an IAM role that includes read-only access to S3

  - Start an `Amazon Linux' instance as an intermediate, I used Amazon
    Linux but anything else will just work as well. Attach the IAM role,
    when creating the instance and also attach a 2GB sized EBS volume.

  - Log into the intermediate, download the disk-image from S3 onto
    local disk, then dd the image onto the attached 2GB EBS volume.

  - Do a snapshot of the 2GB volume, then register that as an AMI,
    setting the virtualization type to `HVM'.

You could do without the S3 storage in the middle, but I like it better
this way, since my internet access is not the fastest and you need to
transfer 1~2GB.

Is anybody interested in publicly accessible AMIs for AWS? An AMI is an
Amazon Machine Image. When you got an AMI for your system, you can spin
up an instance with minimal configuration.

I would like to do the aforementioned steps during the next weekend,
which will be a four day weekend in my country, so there's some time to
kill.

Let me know what you think, don't forget to CC me, since I'm not on the
list.

Cheers, Mark

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2017-04-14 12:41 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-10 20:21 AWS + OpenStack support Mark Meyer
2017-04-11  4:16 ` Chris Marusich
2017-04-13 14:39 ` Ludovic Courtès
2017-04-13 15:02   ` Chris Marusich
2017-04-13 17:25     ` Mark Meyer
2017-04-14 12:39     ` Ludovic Courtès
2017-04-13 17:30   ` Mark Meyer
2017-04-13 17:34     ` ng0
2017-04-13 19:14       ` Mark Meyer
2017-04-14 12:41         ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).