Skip to content

Commit

Permalink
ALP: isolated interactive Agama deployment (#229)
Browse files Browse the repository at this point in the history
* added article file and topicmap
* Added a title page
* Removed non-deployment stuff
* 1st ALP deployment draft
* Introduced alp-deployment-all profiling condition
* renamed profiling string + re-valiated ALP guide
* merged 2 ASM files into 1
* Update references/alp-requirements.xml

Co-authored-by: Tom Schraitle <[email protected]>
  • Loading branch information
tbazant and tomschr authored Nov 3, 2023
1 parent 9172d96 commit e7c1d82
Show file tree
Hide file tree
Showing 13 changed files with 668 additions and 489 deletions.
2 changes: 2 additions & 0 deletions DC-alp-dolomite
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ IMG_SRC_DIR="images"
STYLEROOT="/usr/share/xml/docbook/stylesheet/suse2022-ns"
DOCBOOK5_RNG_URI="urn:x-suse:rng:v2:geekodoc-flat"
PROFOS="alp-dolomite"
PROFCONDITION="alp-deployment-all"
STRUCTID="alp-dolomite"
9 changes: 9 additions & 0 deletions DC-deploying-alp-dolomite-interactively-using-agama
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
MAIN="alp-dolomite.asm.xml"
SRC_DIR="articles"
IMG_SRC_DIR="images"

STYLEROOT="/usr/share/xml/docbook/stylesheet/suse2022-ns"
DOCBOOK5_RNG_URI="urn:x-suse:rng:v2:geekodoc-flat"
PROFOS="alp-dolomite"
PROFCONDITION="alp-deployment-agama-interactive"
STRUCTID="deploying-alp-dolomite-interactively-using-agama"
264 changes: 203 additions & 61 deletions articles/alp-dolomite.asm.xml

Large diffs are not rendered by default.

176 changes: 14 additions & 162 deletions concepts/alp-deployment.xml
Original file line number Diff line number Diff line change
@@ -1,174 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file originates from the project https://github.com/openSUSE/doc-kit -->
<!-- This file can be edited downstream. -->
<?xml-stylesheet href="urn:x-suse:xslt:profiling:docbook51-profile.xsl"
type="text/xml"
title="Profiling step"?>
<!DOCTYPE article
<!DOCTYPE topic
[
<!ENTITY % entities SYSTEM "../common/generic-entities.ent">
%entities;
]>
<topic xml:id="concept-alp-deployment" xml:lang="en"
role="concept"
xmlns="http://docbook.org/ns/docbook" version="5.1"
<!-- this concept is just an empty envelope for the ALP guide-->
<topic xml:id="alp-deployment"
role="concept" xml:lang="en"
xmlns="http://docbook.org/ns/docbook" version="5.2"
xmlns:its="http://www.w3.org/2005/11/its"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink">
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:trans="http://docbook.org/ns/transclusion">
<info>
<title>&productnameshort; deployment</title>
<meta name="maintainer" content="[email protected]" its:translate="no"/>
<title>&productnameshort; Deployment</title>
</info>
<section xml:id="alp-pre-deployment-considerations">
<title>Considerations before deployment</title>
<para>
This section introduces tips and suggestions that need to be considered
before or during the deployment.
</para>
<section xml:id="alp-pre-deployment-considerations-root-ssh-login">
<title>&rootuser; SSH login</title>
<para>
By default, &rootuser; SSH login in &productnameshort; is permitted
only by using the SSH key. &rootuser; SSH login with password is
prohibited. To enable &rootuser; SSH login with password, you have
several options:
</para>
<itemizedlist>
<listitem>
<para>
<emphasis role="bold">Create an unprivileged user.</emphasis>
Depending on the installation method, you can either create a new
user in the &alp-installer; installer, or use
&combustion;/&ignition; tools. Refer to
<xref
linkend="task-deploy-alp-installer"/> and
<xref
linkend="concept-configure-ignition"/> for more
details.
</para>
<tip>
<para>
Creating an unprivileged user during system installation is
useful for logging in to the &cockpit; Web interface. Find more
details in
<link
xlink:href="https://documentation.suse.com/alp/dolomite/html/cockpit-alp-dolomite/index.html"/>.
</para>
</tip>
</listitem>
<listitem>
<para>
<emphasis role="bold">Install the
<package>openssh-server-config-rootlogin</package>
package.</emphasis> Use &combustion;/&ignition; tools to install
the package during the deployment process.
</para>
<tip>
<para>
See <xref linkend="alp-post-deploy-enable-root-ssh-login"/> for
details on installing
<package>openssh-server-config-rootlogin</package> manually after
the system is deployed.
</para>
</tip>
</listitem>
</itemizedlist>
</section>
</section>
<section xml:id="alp-deployment-methods">
<title>Deployment methods</title>
<para>
&productname; is distributed either as a disk image of the
&alp-installer; installer, or as a pre-built raw disk image.
</para>
<section xml:id="alp-deployment-installer">
<title>The &alp-installer; installer</title>
<abstract>
<para>
While the &alp-installer; installer handles both bare-metal and
virtualized/cloud deployments, it is a preferred method for bare-metal
deployments. &productnameshort; deployment using the &alp-installer;
installer is similar to a traditional operating system setup. After
booting the &alp-installer; installer image, the installer uses a
graphical user-friendly interface to walk you through the system
configuration and deployment.
This chapter describes background information and specific steps to
successfully deploy &productnameshort; by using the preferred
deployment method.
</para>
<note>
<para>
The installer live images do not contain <package>linuxrc</package>,
<package>wicked</package> and
<package>installation-images</package> packages. Therefore, the
device activation and configuration need adjusting, and there is no
interactive menu for configuring certain parameters of the
installation.
</para>
</note>
</section>
<section xml:id="alp-deployment-raw-image">
<title>Raw disk image</title>
<para>
This method handles both bare-metal and virtualized/cloud deployment.
It is different from the installer-based deployment in that you do not
boot an installer but the actual &productnameshort; image itself. On
first boot, you can configure basic system options using an
<emphasis>ncurses</emphasis> user interface. Using a raw disk image,
you can fine-tune the deployment setup with &combustion; and &ignition;
tools.
</para>
</section>
</section>
<section xml:id="requirements-deploy-alp-raw-image">
<title>Hardware requirements</title>
<para>
The minimum supported hardware requirements for deploying
&productnameshort; follow:
</para>
<variablelist>
<varlistentry>
<term>BIOS</term>
<listitem>
<para>
Installing &productnameshort; is supported on hosts with UEFI BIOS
only. Hosts with the legacy BIOS are not supported.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>CPU</term>
<listitem>
<para>
&x86-64;, &aarch64; and &zseries; CPU architectures are supported.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Maximum number of CPUs</term>
<listitem>
<para>
The maximum number of CPUs supported by software design is 8192.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Memory</term>
<listitem>
<para>
&productnameshort; requires at least 1&nbsp;GB RAM. Bear in mind
that this is a minimal value for the operating system, the actual
memory size depends on the workload.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Hard disk</term>
<listitem>
<para>
The minimum hard disk space is 12&nbsp;GB, while the recommended
value is 20&nbsp;GB of hard disk space. Adjust the value according
to the workloads of your containers.
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
</abstract>
</info>
</topic>

94 changes: 45 additions & 49 deletions concepts/alp.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,54 +17,50 @@
xmlns:xlink="http://www.w3.org/1999/xlink">
<info>
<meta name="maintainer" content="[email protected]" its:translate="no"/>
<title>General description</title>
</info>
<section xml:id="what-is-alp">
<title>What is &productnameshort;?</title>
<para>
&productnameshort; is a minimal operating system that allows customers to
run their workloads in a containerized or virtualized form. Typically,
&productnameshort; is deployed on bare-metal servers and runs data
center-oriented workloads. &productnameshort; is best described by the following
characteristics:
</para>
<variablelist>
<varlistentry>
<term>Minimalistic</term>
<listitem>
<para>
&productnameshort; provides the bare minimum to run workloads and
services as containers or virtual machines. Its default software
collection is carefully preselected to include only packages
required to support its mission.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Secure</term>
<listitem>
<para>
&productnameshort; is an immutable operating system with a
read-only file system. Changes to the file system are performed in
<emphasis>transactions</emphasis> and can easily be rolled back.
Moreover, the &selnx; access control makes it a truly secure
platform.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Container-ready</term>
<listitem>
<para>
In &productnameshort;, containerized workloads replace traditional
applications. They contain all software dependencies required to
run a specific application or tool. &productnameshort; uses
&podman; as the default container engine. &podman; makes it easy to
find, run, build, share and deploy containerized workloads.
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
</info>
<para>
&productnameshort; is a minimal operating system that allows customers to
run their workloads in a containerized or virtualized form. Typically,
&productnameshort; is deployed on bare-metal servers and runs data
center-oriented workloads. &productnameshort; is best described by the
following characteristics:
</para>
<variablelist>
<varlistentry>
<term>Minimalistic</term>
<listitem>
<para>
&productnameshort; provides the bare minimum to run workloads and
services as containers or virtual machines. Its default software
collection is carefully preselected to include only packages required
to support its mission.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Secure</term>
<listitem>
<para>
&productnameshort; is an immutable operating system with a read-only
file system. Changes to the file system are performed in
<emphasis>transactions</emphasis> and can easily be rolled back.
Moreover, the &selnx; access control makes it a truly secure
platform.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Container-ready</term>
<listitem>
<para>
In &productnameshort;, containerized workloads replace traditional
applications. They contain all software dependencies required to run
a specific application or tool. &productnameshort; uses &podman; as
the default container engine. &podman; makes it easy to find, run,
build, share and deploy containerized workloads.
</para>
</listitem>
</varlistentry>
</variablelist>
</topic>

2 changes: 1 addition & 1 deletion glues/alp-deployment-more-info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<listitem>
<para>
Transactional updates are described in
<xref linkend="concept-transactional-update"/>.
<link xlink:href="https://documentation.suse.com/alp/dolomite/html/alp-dolomite/concept-transactional-update.html"/>.
</para>
</listitem>
<listitem>
Expand Down
68 changes: 68 additions & 0 deletions references/alp-deployment-methods.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE topic
[
<!ENTITY % entities SYSTEM "../common/generic-entities.ent">
%entities;
]>
<!-- refers to legacy doc: <add github link to legacy doc piece, if applicable> -->
<!-- point back to this document with a similar comment added to your legacy doc piece -->
<!-- refer to README.md for file and id naming conventions -->
<!-- metadata is dealt with on the assembly level -->
<topic xml:id="alp-dolomite-deployment-methods"
role="reference" xml:lang="en"
xmlns="http://docbook.org/ns/docbook" version="5.2"
xmlns:its="http://www.w3.org/2005/11/its"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:trans="http://docbook.org/ns/transclusion">
<info>
<title>&productnameshort; deployment methods</title>
<meta name="maintainer" content="[email protected]" its:translate="no"/>
<abstract>
<para>
&productnameshort; is distributed either as a disk image of the
&alp-installer; installer, or as a pre-built raw disk image. You can
deploy &productnameshort; either on a bare metal host, or as a
virtualized guest on a &vmhost;. In the latter case, you need to
prepare a new virtual machine first.
</para>
</abstract>
</info>
<section xml:id="alp-deployment-installer">
<title>The &alp-installer; installer</title>
<para>
While the &alp-installer; installer handles both bare-metal and
virtualized/cloud deployments, it is a preferred method for bare-metal
deployments. &productnameshort; deployment using the &alp-installer;
installer is similar to a traditional operating system setup. After
booting the &alp-installer; installer image, the installer uses a
graphical user-friendly interface to walk you through the system
configuration and deployment.
</para>
<note>
<para>
The installer live images do not contain <package>linuxrc</package>,
<package>wicked</package> and <package>installation-images</package>
packages. Therefore, the device activation and configuration need
adjusting, and there is no interactive menu for configuring certain
parameters of the installation.
</para>
</note>
</section>
<section xml:id="alp-deployment-raw-image">
<title>Raw disk image</title>
<para>
This method handles both bare-metal and virtualized/cloud deployment. It
is different from the installer-based deployment in that you do not boot
an installer but the actual &productnameshort; image itself. On first
boot, you can configure basic system options using an
<emphasis>ncurses</emphasis> user interface. Using a raw disk image, you
can fine-tune the deployment setup with &combustion; and &ignition;
tools.
</para>
<para>
There are two types of images, depending on whether you intend to run
&productnameshort; on an encrypted disk or an unencrypted disk.
</para>
</section>
</topic>
Loading

0 comments on commit e7c1d82

Please sign in to comment.