Differences between revisions 10 and 56 (spanning 46 versions)
Revision 10 as of 2013-04-22 23:27:17
Size: 5236
Editor: ?PhunLang
Comment:
Revision 56 as of 2021-05-07 18:27:26
Size: 4548
Comment: Add notes detailing the relationship between the GCE images and the cloud team.
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Cloud/[[Google Compute Engine]] Image lists for Google Compute Engine <<TableOfContents>>
Line 4: Line 4:
== Official Debian Images ==
(Work in Progress)
{{{#!wiki caution
'''Notice'''
Line 7: Line 7:
For discussion about Debian on various cloud providers, please visit [[http://lists.debian.org/debian-cloud/|Debian-Cloud mailing list]]. Debian images available on GCE are not published by Debian and are considered derivatives from Debian's perspective. In particular, they enable third-party apt sources and install software in the default image that is not part of Debian. If you are interested in enabling Debian to publish working images to GCE in the future, please contact the [[Teams/Cloud|cloud team]].
}}}
Line 9: Line 10:
== Procedure to build images == Cloud/[[GoogleComputeEngine]] Image lists for Google Compute Engine
Line 11: Line 12:
To build Debian image for Google Compute Engine, follow these instructions: == Google Compute Engine Documentation ==
Google Compute Engine documentation:
[[https://cloud.google.com/compute/docs/]]
Line 13: Line 16:
 1. '''Request access to Google Compute Engine'''
  If you want to help with the Cloud/GoogleComputeEngineImage effort and don't already have Google Compute Engine space to work in, contact David(cache@google.com) and Jimmy (jimmy@debian.org).
  Be sure to provide the following information in your email:
Google Cloud SDK (gcloud CLI) Documentation
[[https://cloud.google.com/sdk/]]
Line 17: Line 19:
      * A description of how you can help
      * The name of your Google account (Google Apps and consumer accounts are both fine)
== Debian Images ==
Line 20: Line 21:
  We will add people to the appropriate projects, within certain constraints. See "Access To Test Account for Debian Developers" below. Google Compute Engine Debian 10 Buster images are built with fai from the official Debian cloud image project [[https://salsa.debian.org/cloud-team/debian-cloud-images]].
Line 22: Line 23:
 1. '''Create images using our github fork on any Linux machine'''
  Example command line (root access is needed for the loopback mounting process):
    * # Either squeeze or wheezy should work.
    * sudo ./build-debian-cloud gce --codename squeeze --volume-size 10
Google Compute Engine Debian 9 Stretch images are built with bootstrap-vz. All the configuration and manifest data is provided open source as part of that project [[https://github.com/andsens/bootstrap-vz/tree/master/manifests/official/gce]].
Line 27: Line 25:
 1. '''Follow the steps to upload and use a custom image''' Debian community members are welcome to help improve and maintain the images in Google Compute Engine. Issues can be filed in the compute-image-packages Github project [[https://github.com/GoogleCloudPlatform/compute-image-packages/issues]].
Line 29: Line 27:
  The image will end up in the same directory. From there, follow the steps to upload and use a custom image in Google Compute Engine, beginning with step 4 here: https://developers.google.com/compute/docs/images#installinganimage. Once official Debian images are published via the debian-cloud project, end users will be able to use them simply by adding a suitable --image option when creating their instance, e.g. More details about what is configured or added is maintained in the Google Compute Engine Images documentation [[https://cloud.google.com/compute/docs/images]].
Line 31: Line 29:
    * gcutil addinstance mynewinstance --image=projects/debian-cloud/gloabal/images/<image-name> For discussion about Debian on various cloud providers, please visit the [[http://lists.debian.org/debian-cloud/|debian-cloud mailing list]].
Line 33: Line 31:
  Note the linked instructions tell you to run:
   * gcutil --project=<project-id> addimage <image-name> <image-uri> --preferred_kernel=/projects/google/global/kernels/<kernel-name>
=== SSH user accounts ===
SSH in Google Compute Engine is provided using user provided SSH keys. There is not a default account or password configured in GCE images. For more information on how to SSH into GCE Debian instances, refer to the Google Compute Engine SSH documentation:
[[https://cloud.google.com/compute/docs/instances/connecting-to-instance]]
Line 36: Line 35:
  To find the correct <kernal-name>, you can either use kernel gce-v20130325 which appears to be Google's latest build. However, if you want a list of available kernels you can run:
    * gcutil listkernels --project=google (Rather than your own project)
The software to facilitate SSH key based login via metadata is provided in the base images and is open source licensed under the Apache License 2.0 [[https://github.com/GoogleCloudPlatform/compute-image-packages]].
Line 39: Line 37:
== Image Build Script == == Listing Current Images ==
To list the currently-recommended, newest versions of Debian images on Google Compute Engine, use the Google Cloud SDK command line tool gcloud [[https://cloud.google.com/compute/docs/gcloud-compute/]]:
Line 41: Line 40:
Anders Ingemann has created a build script for bootstrapping instances that runs automatically and needs no user interaction. You can also attach custom scripts to the script as well. Download or clone the script on [[https://github.com/andsens/build-debian-cloud | github]]. Any bugs or suggestions should be reported via the github issue tracker. {{{
gcloud compute images list --project=debian-cloud --no-standard-images
}}}
Line 43: Line 44:
== Future Plans == == Using An Image ==
Line 45: Line 46:
To use the most up to date Debian 10 Buster image, use the "debian-10" image family when creating a new instance.
Line 46: Line 48:
== User-contributed images ==
|| arch || version || GCE project || Image Name || Kernel ID || size || maintainer ||
|| x86_64 || squeeze || debian-cloud || projects/debian-cloud/global/images/debian-squeeze-20130418 || projects/google/global/kernels/gce-v20130325 || 10G || jkaplowitz@google.com ||
|| x86_64 || wheezy || debian-cloud || projects/debian-cloud/global/images/debian-wheezy-20130418 || projects/google/global/kernels/gce-v20130325 || 10G || jkaplowitz@google.com ||
{{{
gcloud compute instances create "<instance-name>" --image-project debian-cloud --image-family debian-10 --zone="<zone>"
}}}
Line 51: Line 52:
== Notes on Kernel ==
You may notice that all Google Compute Engine images are booted using an
injected Linux 3.3.8 kernel using a configuration to reduce security
vulnerabilities. Most notably, that configuration disables modules and access
to /dev/mem. We are working to add support for booting from arbitrary kernels,
as we know it’s an important freedom. In the meantime, /proc/config.gz will
show the enabled options. Kernel source code is available here:
To use the most up to date Debian 9 Stretch image, use the "debian-9" image family when creating a new instance.
Line 59: Line 54:
https://developers.google.com/compute/docs/kernels#source {{{
gcloud compute instances create "<instance-name>" --image-project debian-cloud --image-family debian-9 --zone="<zone>"
}}}
Line 61: Line 58:
== SSH user accounts ==
One intentional difference from the Amazon EC2 images is that, instead of
sshing in via a default “admin” account, we install a cron job in /etc/cron.d
to manage accounts in line with the Google Compute Engine documentation. See
here for how ssh works:
https://developers.google.com/compute/docs/hello_world#ssh
== Listing Older and Deprecated Images ==
Line 68: Line 60:
== GCE Documentation ==
Google Compute Engine home page, including documentation:
https://developers.google.com/compute/
As Google Compute Engine releases new images, older images will be deprecated and eventually removed. When this happens, Google Compute Engine sets the deprecation status on an image.

{{{
gcloud compute images list --project=debian-cloud --no-standard-images --show-deprecated
}}}

== Building a Google Compute Engine Image ==

To build a Debian image for Google Compute Engine, use the tools and configurations from the open source Google provided tools which wrap the fai build
[[https://github.com/GoogleCloudPlatform/compute-image-tools/tree/master/daisy_workflows/image_build/debian]] or the Debian cloud images build tools directly [[https://salsa.debian.org/cloud-team/debian-cloud-images]].
Line 74: Line 73:
If you have any questions, concerns, or general feedback, please don’t hesitate to contact the Google Compute team (gc-team@google.com) or David McWherter (cache@google.com) or me (jimmy@debian.org or jkaplowitz@google.com) directly about this effort. If you have any questions, concerns, or general feedback, please don’t hesitate to contact the Google Compute team (gc-team@google.com) or open an issue in the compute-image-packages Github project [[https://github.com/GoogleCloudPlatform/compute-image-packages/issues]].
Line 76: Line 75:
== Access to test account, for Debian Developers interested in testing, or working on official images == == Google Compute Engine Debian Experiments Project ==
Line 78: Line 77:
The Google GCE team has created two projects for Debian’s use for Google Compute Engine. Billing for Compute and Storage has been waived on these projects. The first project, ‘debian-cloud’ is intended for pushing new images for customers. The second project ‘debian-cloud-experiments’ is intended for Debian volunteers to experiment with the project. It has a small quota and must be shared. We can work with Debian to maintain who can use these projects, or we can push management off to trusted parties in Debian. Google Compute Engine is working toward toward general availability, so over time it will become easier for anyone to get involved. A project, "debian-cloud-experiments", for Debian is available with limited quota for Debian Developers to experiment with the platform. Please let us know if you would like access to experiment in this project.

----

CategoryVirtualization | CategorySystemAdministration

Notice

Debian images available on GCE are not published by Debian and are considered derivatives from Debian's perspective. In particular, they enable third-party apt sources and install software in the default image that is not part of Debian. If you are interested in enabling Debian to publish working images to GCE in the future, please contact the cloud team.

Cloud/GoogleComputeEngine Image lists for Google Compute Engine

Google Compute Engine Documentation

Google Compute Engine documentation: https://cloud.google.com/compute/docs/

Google Cloud SDK (gcloud CLI) Documentation https://cloud.google.com/sdk/

Debian Images

Google Compute Engine Debian 10 Buster images are built with fai from the official Debian cloud image project https://salsa.debian.org/cloud-team/debian-cloud-images.

Google Compute Engine Debian 9 Stretch images are built with bootstrap-vz. All the configuration and manifest data is provided open source as part of that project https://github.com/andsens/bootstrap-vz/tree/master/manifests/official/gce.

Debian community members are welcome to help improve and maintain the images in Google Compute Engine. Issues can be filed in the compute-image-packages Github project https://github.com/GoogleCloudPlatform/compute-image-packages/issues.

More details about what is configured or added is maintained in the Google Compute Engine Images documentation https://cloud.google.com/compute/docs/images.

For discussion about Debian on various cloud providers, please visit the debian-cloud mailing list.

SSH user accounts

SSH in Google Compute Engine is provided using user provided SSH keys. There is not a default account or password configured in GCE images. For more information on how to SSH into GCE Debian instances, refer to the Google Compute Engine SSH documentation: https://cloud.google.com/compute/docs/instances/connecting-to-instance

The software to facilitate SSH key based login via metadata is provided in the base images and is open source licensed under the Apache License 2.0 https://github.com/GoogleCloudPlatform/compute-image-packages.

Listing Current Images

To list the currently-recommended, newest versions of Debian images on Google Compute Engine, use the Google Cloud SDK command line tool gcloud https://cloud.google.com/compute/docs/gcloud-compute/:

gcloud compute images list --project=debian-cloud --no-standard-images

Using An Image

To use the most up to date Debian 10 Buster image, use the "debian-10" image family when creating a new instance.

gcloud compute instances create "<instance-name>" --image-project debian-cloud --image-family debian-10 --zone="<zone>"

To use the most up to date Debian 9 Stretch image, use the "debian-9" image family when creating a new instance.

gcloud compute instances create "<instance-name>" --image-project debian-cloud --image-family debian-9 --zone="<zone>"

Listing Older and Deprecated Images

As Google Compute Engine releases new images, older images will be deprecated and eventually removed. When this happens, Google Compute Engine sets the deprecation status on an image.

gcloud compute images list --project=debian-cloud --no-standard-images --show-deprecated

Building a Google Compute Engine Image

To build a Debian image for Google Compute Engine, use the tools and configurations from the open source Google provided tools which wrap the fai build https://github.com/GoogleCloudPlatform/compute-image-tools/tree/master/daisy_workflows/image_build/debian or the Debian cloud images build tools directly https://salsa.debian.org/cloud-team/debian-cloud-images.

Google Contacts

If you have any questions, concerns, or general feedback, please don’t hesitate to contact the Google Compute team (gc-team@google.com) or open an issue in the compute-image-packages Github project https://github.com/GoogleCloudPlatform/compute-image-packages/issues.

Google Compute Engine Debian Experiments Project

A project, "debian-cloud-experiments", for Debian is available with limited quota for Debian Developers to experiment with the platform. Please let us know if you would like access to experiment in this project.


CategoryVirtualization | CategorySystemAdministration