Skip to content

Commit

Permalink
Update EIB quickstart (suse-edge#444)
Browse files Browse the repository at this point in the history
* Update EIB quickstart

Signed-off-by: Atanas Dinov <[email protected]>

* Update EIB docs references

Signed-off-by: Atanas Dinov <[email protected]>

---------

Signed-off-by: Atanas Dinov <[email protected]>
  • Loading branch information
atanasdinov authored Oct 3, 2024
1 parent 5b6e937 commit 48d7952
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 29 deletions.
2 changes: 1 addition & 1 deletion asciidoc/components/longhorn.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@ EOF
[NOTE]
====
Customizing any of the Helm chart values is possible via a separate file provided under `helm.charts[].valuesFile`.
Refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/building-images.md#kubernetes[upstream documentation] for details.
Refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/building-images.md#kubernetes[upstream documentation] for details.
====

Let's build the image:
Expand Down
4 changes: 2 additions & 2 deletions asciidoc/guides/air-gapped-eib-deployments.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ Many of these options will be repeated across the different component sections,

[TIP]
====
Full list of customization options in the definition file can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/building-images.md#image-definition-file[upstream documentation]
Full list of customization options in the definition file can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/building-images.md#image-definition-file[upstream documentation]
====

We will take a look at the following fields which will be present in all definition files:
Expand Down Expand Up @@ -869,4 +869,4 @@ replicaset.apps/cdi-uploadproxy-646f4cd7f7 1 1 1 3m44s

== Troubleshooting

If you run into any issues while building the images or are looking to further test and debug the process, please refer to the https://github.com/suse-edge/edge-image-builder/tree/release-1.0/docs[upstream documentation].
If you run into any issues while building the images or are looking to further test and debug the process, please refer to the https://github.com/suse-edge/edge-image-builder/tree/release-1.1/docs[upstream documentation].
56 changes: 30 additions & 26 deletions asciidoc/quickstart/eib.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ For more information, read the <<components-eib,Edge Image Builder Introduction>

== Prerequisites

* An x86_64 physical host (or virtual machine) running SLES 15 SP5, openSUSE Leap 15.5, or openSUSE Tumbleweed.
* An x86_64 physical host (or virtual machine) running SLES 15 SP6, openSUSE Leap 15.6, or openSUSE Tumbleweed.
* An available container runtime (e.g. Podman)
* A downloaded copy of the latest SLE Micro 5.5 SelfInstall "GM2" ISO image found https://www.suse.com/download/sle-micro/[here].
* A downloaded copy of the latest SLE Micro 6.0 SelfInstall ISO image found https://www.suse.com/download/sle-micro/[here].

NOTE: Other operating systems may function so long as a compatible container runtime is available, but testing on other platforms has not been extensive. The documentation focuses on Podman, but the same functionality should be able to be achieved with Docker.

Expand All @@ -42,7 +42,7 @@ export CONFIG_DIR=$HOME/eib
mkdir -p $CONFIG_DIR/base-images
----

In the previous step we created a "base-images" directory that will host the SLE Micro 5.5 input image, let's ensure that the downloaded image is copied over to the configuration directory:
In the previous step we created a "base-images" directory that will host the SLE Micro 6.0 input image, let's ensure that the downloaded image is copied over to the configuration directory:

[,shell]
----
Expand All @@ -66,7 +66,7 @@ The configuration directory at this point should look like the following:
[#quickstart-eib-definition-file]
== Creating the image definition file

The definition file describes the majority of configurable options that the Edge Image Builder supports, a full example of options can be found https://github.com/suse-edge/edge-image-builder/blob/release-1.0/pkg/image/testdata/full-valid-example.yaml[here], and we would recommend that you take a look at the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/building-images.md[upstream building images guide] for more comprehensive examples than the one we're going to run through below. Let's start with a very basic definition file for our OS image:
The definition file describes the majority of configurable options that the Edge Image Builder supports, a full example of options can be found https://github.com/suse-edge/edge-image-builder/blob/release-1.1/pkg/image/testdata/full-valid-example.yaml[here], and we would recommend that you take a look at the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/building-images.md[upstream building images guide] for more comprehensive examples than the one we're going to run through below. Let's start with a very basic definition file for our OS image:

[,console]
----
Expand Down Expand Up @@ -127,7 +127,7 @@ operatingSystem:

[NOTE]
====
It's also possible to add additional users, create the home directories, set user-id's, add ssh-key authentication, and modify group information. Please refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/building-images.md[upstream building images guide] for further examples.
It's also possible to add additional users, create the home directories, set user-id's, add ssh-key authentication, and modify group information. Please refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/building-images.md[upstream building images guide] for further examples.
====

=== Configuring RPM packages
Expand Down Expand Up @@ -179,7 +179,7 @@ The above is a simple example, but for completeness, download the NVIDIA package
[,bash]
----
$ mkdir -p $CONFIG_DIR/rpms/gpg-keys
$ curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey > rpms/gpg-keys/nvidia.gpg
$ curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey > $CONFIG_DIR/rpms/gpg-keys/nvidia.gpg
----

[WARNING]
Expand All @@ -189,7 +189,7 @@ Adding in additional RPM's via this method is meant for the addition of supporte

[NOTE]
====
A more comprehensive guide with additional examples can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/installing-packages.md[upstream installing packages guide].
A more comprehensive guide with additional examples can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/installing-packages.md[upstream installing packages guide].
====

=== Configuring Kubernetes cluster and user workloads
Expand Down Expand Up @@ -252,7 +252,7 @@ kubernetes:

[NOTE]
====
Further examples of options such as multi-node deployments, custom networking, and Helm chart options/values can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/building-images.md#kubernetes[upstream documentation].
Further examples of options such as multi-node deployments, custom networking, and Helm chart options/values can be found in the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/building-images.md#kubernetes[upstream documentation].
====

[#quickstart-eib-network]
Expand Down Expand Up @@ -341,6 +341,8 @@ The output of the command should be similar to:
[,console]
----
Setting up Podman API listener...
Downloading file: dl-manifest-1.yaml 100% (498/498 B, 9.5 MB/s)
Pulling selected Helm charts... 100% (1/1, 43 it/min)
Generating image customization components...
Identifier ................... [SUCCESS]
Custom Files ................. [SKIPPED]
Expand All @@ -351,26 +353,27 @@ Users ........................ [SUCCESS]
Proxy ........................ [SKIPPED]
Resolving package dependencies...
Rpm .......................... [SUCCESS]
Os Files ..................... [SKIPPED]
Systemd ...................... [SKIPPED]
Fips ......................... [SKIPPED]
Elemental .................... [SKIPPED]
Suma ......................... [SKIPPED]
Downloading file: dl-manifest-1.yaml 100% (498/498 B, 5.9 MB/s)
Populating Embedded Artifact Registry... 100% (3/3, 11 it/min)
Populating Embedded Artifact Registry... 100% (3/3, 10 it/min)
Embedded Artifact Registry ... [SUCCESS]
Keymap ....................... [SUCCESS]
Configuring Kubernetes component...
The Kubernetes CNI is not explicitly set, defaulting to 'cilium'.
Downloading file: rke2_installer.sh
Downloading file: rke2-images-core.linux-amd64.tar.zst 100% (782/782 MB, 98 MB/s)
Downloading file: rke2-images-cilium.linux-amd64.tar.zst 100% (367/367 MB, 100 MB/s)
Downloading file: rke2.linux-amd64.tar.gz 100% (34/34 MB, 101 MB/s)
Downloading file: sha256sum-amd64.txt 100% (3.9/3.9 kB, 1.5 MB/s)
Downloading file: dl-manifest-1.yaml 100% (498/498 B, 7.2 MB/s)
Downloading file: rke2-images-core.linux-amd64.tar.zst 100% (657/657 MB, 48 MB/s)
Downloading file: rke2-images-cilium.linux-amd64.tar.zst 100% (368/368 MB, 48 MB/s)
Downloading file: rke2.linux-amd64.tar.gz 100% (35/35 MB, 50 MB/s)
Downloading file: sha256sum-amd64.txt 100% (4.3/4.3 kB, 6.2 MB/s)
Kubernetes ................... [SUCCESS]
Certificates ................. [SKIPPED]
Cleanup ...................... [SKIPPED]
Building ISO image...
Kernel Params ................ [SKIPPED]
Image build complete!
Build complete, the image can be found at: eib-image.iso
----

The built ISO image is stored at `$CONFIG_DIR/eib-image.iso`:
Expand Down Expand Up @@ -414,15 +417,16 @@ The contents of this directory should look like:
│ │── artefacts/
│ │ │── registry/
│ │ │ ├── hauler
│ │ │ ├── nginx:1.14.2-registry.tar.zst
│ │ │ ├── rancher_kubectl:v1.28.7-registry.tar.zst
│ │ │ └── registry.suse.com_suse_sles_15.5_virt-operator:1.1.1-150500.8.12.1-registry.tar.zst
│ │ │ ├── nginx:<version>-registry.tar.zst
│ │ │ ├── rancher_kubectl:<version>-registry.tar.zst
│ │ │ └── registry.suse.com_suse_sles_15.6_virt-operator:<version>-registry.tar.zst
│ │ │── rpms/
│ │ │ └── rpm-repo
│ │ │ ├── addrepo0
│ │ │ │ └── x86_64
│ │ │ │ ├── nvidia-container-toolkit-1.15.0-1.x86_64.rpm
│ │ │ │ ├── ...
│ │ │ │ ├── nvidia-container-toolkit-<version>.rpm
│ │ │ │ ├── nvidia-container-toolkit-base-<version>.rpm
│ │ │ │ ├── libnvidia-container1-<version>.rpm
│ │ │ │ └── libnvidia-container-tools-<version>.rpm
│ │ │ ├── repodata
│ │ │ │ ├── ...
│ │ │ └── zypper-success
Expand All @@ -438,7 +442,7 @@ The contents of this directory should look like:
│ │ │ └── sha256sum-amd64.txt
│ │ └── manifests/
│ │ ├── dl-manifest-1.yaml
│ │ └── kubevirt-chart.yaml
│ │ └── kubevirt.yaml
│ ├── createrepo.log
│ ├── eib-build.log
│ ├── embedded-registry.log
Expand Down Expand Up @@ -472,7 +476,7 @@ If the build fails, `eib-build.log` is the first log that contains information.

At this point, you should have a ready-to-use image that will:

1. Deploy SLE Micro 5.5
1. Deploy SLE Micro 6.0
2. Configure the root password
3. Install the `nvidia-container-toolkit` package
4. Configure an embedded container registry to serve content locally
Expand All @@ -484,9 +488,9 @@ At this point, you should have a ready-to-use image that will:
[#quickstart-eib-image-debug]
== Debugging the image build process

If the image build process fails, refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/debugging.md[upstream debugging guide].
If the image build process fails, refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/debugging.md[upstream debugging guide].

[#quickstart-eib-image-test]
== Testing your newly built image

For instructions on how to test the newly built CRB image, refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.0/docs/testing-guide.md[upstream image testing guide].
For instructions on how to test the newly built CRB image, refer to the https://github.com/suse-edge/edge-image-builder/blob/release-1.1/docs/testing-guide.md[upstream image testing guide].

0 comments on commit 48d7952

Please sign in to comment.