Skip to content

Commit

Permalink
ALP zSeries deployment (#118)
Browse files Browse the repository at this point in the history
  • Loading branch information
tbazant authored Apr 12, 2023
1 parent 40bf3d7 commit 613bde8
Show file tree
Hide file tree
Showing 8 changed files with 292 additions and 37 deletions.
2 changes: 1 addition & 1 deletion DC-alp-bedrock
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ ASSEMBLY="yes"
# ASSEMBLY_DIR="xml"

STYLEROOT="/usr/share/xml/docbook/stylesheet/suse2022-ns"
DOCBOOK5_RNG_URI="http://docbook.org/xml/5.2/rng/docbookxi.rng"
DOCBOOK5_RNG_URI="urn:x-suse:rng:v2:geekodoc-flat"
PROFOS="alp-bedrock"
3 changes: 1 addition & 2 deletions DC-alp-micro
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,5 @@ ASSEMBLY="yes"
# ASSEMBLY_DIR="xml"

STYLEROOT="/usr/share/xml/docbook/stylesheet/suse2022-ns"

DOCBOOK5_RNG_URI="http://docbook.org/xml/5.2/rng/docbookxi.rng"
DOCBOOK5_RNG_URI="urn:x-suse:rng:v2:geekodoc-flat"
PROFOS="alp-micro"
15 changes: 13 additions & 2 deletions articles/ALP.asm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
<resource xml:id="_task-convert-yaml-to-json" href="../tasks/convert-yaml-to-json.xml"/>
<resource xml:id="_task-deploy-alp-raw-image" href="../tasks/deploy-alp-raw-image.xml"/>
<resource xml:id="_task-deploy-alp-dinstaller" href="../tasks/deploy-alp-dinstaller.xml"/>
<resource xml:id="_task-deploy-alp-zseries" href="../tasks/deploy-alp-zseries.xml"/>
<resource xml:id="_task-enable-podman" href="../tasks/enable-podman.xml"/>
<resource xml:id="_task-run-yast-with-podman" href="../tasks/run-yast-with-podman.xml"/>
<resource xml:id="_task-run-kvm-with-podman" href="../tasks/run-kvm-with-podman.xml"/>
Expand All @@ -72,13 +73,21 @@
<title>The &productname; Guide</title>
<revhistory>
<title>Changelog</title>
<revision><revnumber>6</revnumber><date>2023-04-04</date>
<revdescription>
<para>
Added &zseries; deployment.
</para>
</revdescription>
</revision>
<revision><revnumber>5</revnumber><date>2023-03-30</date>
<revdescription>
<para>
Added an article on running the &ansible; workload.
</para>
</revdescription>
</revision><revision><revnumber>4</revnumber><date>2023-03-28</date>
</revision>
<revision><revnumber>4</revnumber><date>2023-03-28</date>
<revdescription>
<para>
Updated the &dinstaller; section to include product selection and
Expand Down Expand Up @@ -171,7 +180,9 @@
<module renderas="chapter" resourceref="_concept-alp"/>
<module renderas="chapter" resourceref="_concept-alp-deployment">
<module renderas="section" resourceref="_task-prepare-alp-vm"/>
<module renderas="section" resourceref="_task-deploy-alp-dinstaller"/>
<module renderas="section" resourceref="_task-deploy-alp-dinstaller">
<module renderas="section" resourceref="_task-deploy-alp-zseries"/>
</module>
<module renderas="section" resourceref="_task-deploy-alp-raw-image">
<module renderas="section" resourceref="_concept-configure-ignition">
<module renderas="section" resourceref="_task-convert-yaml-to-json"/>
Expand Down
Binary file added images/src/png/alp-dinstaller-zseries-dasd.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/src/png/alp-zseries-zvm-sles.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/src/png/alp-zseries-zvm.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
63 changes: 31 additions & 32 deletions tasks/deploy-alp-dinstaller.xml
Original file line number Diff line number Diff line change
Expand Up @@ -133,10 +133,24 @@
</mediaobject>
</figure>
<para>
Select the disk device where &productnameshort; should be installed
or click <menuchoice><guimenu>advanced options
menu</guimenu><guimenu>Configure iSCSI</guimenu></menuchoice> to
manage iSCSI targets for the installation.
Select the disk device where &productnameshort; should be installed.
Optionally, click <guimenu>Settings</guimenu> to enable LVM or enter
a password for disk encryption.
</para>
<tip>
<para>
If you enable disk encryption, you may be asked for a decryption
password on each reboot. Because the &grub; boot loader does not
enable switching keyboard layouts, select a password made of
alphanumeric characters and be aware of national keyboard layout
differences. For extended post-deployment information about disk
encryption, refer to
<xref linkend="alp-post-deploy-full-disk-encryption"/>.
</para>
</tip>
<para>
To configure iSCSI targets or DASD disks (for &zseries;) for the
installation, click <guimenu>advanced options menu</guimenu>
</para>
<figure>
<title>Discover iSCSI targets</title>
Expand Down Expand Up @@ -167,51 +181,36 @@
</textobject>
</mediaobject>
</figure>
<para>
Click <guimenu>Settings</guimenu> from the <guimenu>Storage</guimenu>
screen to enable LVM or enter a password for disk encryption.
</para>
<tip>
<para>
If you enable disk encryption, you will be asked for a decryption
password on each reboot. Because the &grub; boot loader does not
enable switching keyboard layouts, select a password made of
alphanumeric characters and be aware of national keyboard layout
differences. For extended post-deployment information about disk
encryption, refer to
<xref
linkend="alp-post-deploy-full-disk-encryption"/>.
</para>
</tip>
</step>
<step>
<para>
In the <guimenu>Users</guimenu> section, specify a &rootuser;
password, upload a <guimenu>Root SSH public key</guimenu>, or create
an additional user account and optionally enable auto-login for it.
</para>
<figure>
<title>Creating a user account</title>
<title>DASD storage contextual menu (&zseries;)</title>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="alp-dinstaller-user.png" width="50%"/>
<imagedata fileref="alp-dinstaller-zseries-dasd.png" width="75%"/>
</imageobject>
<imageobject role="html">
<imagedata fileref="alp-dinstaller-user.png" width="50%"/>
<imagedata fileref="alp-dinstaller-zseries-dasd.png" width="75%"/>
</imageobject>
<textobject role="description"><phrase>Creating a user account</phrase>
<textobject role="description"><phrase>DASD storage contextual menu (&zseries;)</phrase>
</textobject>
</mediaobject>
</figure>
</step>
<step>
<para>
In the <guimenu>Users</guimenu> section, specify a &rootuser;
password, upload a <guimenu>Root SSH public key</guimenu>, or create
an additional user account and optionally enable auto-login for it.
</para>
</step>
<step>
<para>
To begin the installation, click <guimenu>Install</guimenu> and
confirm with <guimenu>Continue</guimenu>.
</para>
<para>
After the installation is finished, click <guimenu>Reboot</guimenu>
and select <guimenu>ALP</guimenu> from the boot menu after reboot.
and select <guimenu>&productnameshort;</guimenu> from the boot menu
after reboot.
</para>
</step>
</procedure>
Expand Down
246 changes: 246 additions & 0 deletions tasks/deploy-alp-zseries.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,246 @@
<?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
[
<!ENTITY % entities SYSTEM "../common/generic-entities.ent">
%entities;
]>
<article xml:id="task-deploy-alp-zseries" xml:lang="en"
role="task"
xmlns="http://docbook.org/ns/docbook" version="5.1"
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">
<title>Deploying &productnameshort; on a &zseries; host</title>
<section xml:id="introduction-deploy-alp-zseries">
<title>Introduction</title>
<para>
This article describes how to deploy &productnameshort; on an &zseries;
host using &dinstaller;.
</para>
<note>
<para>
In order to run &dinstaller; on &zseries;, bear in mind that the
&dinstaller; live images do not contain
<systemitem>linuxrc</systemitem>, <systemitem>wicked</systemitem> and
the <systemitem>installation-images</systemitem> packages. Therefore
the devices activation and configuration needs adjusting and there is
no interactive menu for configuring certain parameters of the
installation.
</para>
</note>
</section>
<section xml:id="requirements-deploy-alp-zseries">
<title>Requirements</title>
<para>
Before installing &productnameshort; on &zseries;, you need to fullfil
the following requirements:
</para>
<itemizedlist>
<listitem>
<para>
Deployment on the &zseries; architecture is specific and requires
that you review its basic concepts. Although &productnameshort; is
different from &sle; systems, study the information provided by
<link xlink:href="https://documentation.suse.com/sles/html/SLES-all/cha-zseries.html#sec-zseries-prep"/>
before starting the deployment because most of it is valid for the
&productnameshort; deployment as well.
</para>
</listitem>
<listitem>
<para>
Refer to
<link
xlink:href="https://documentation.suse.com/sles/html/SLES-all/cha-zseries.html#sec-zseries-requirements"/>
for generic system requirements.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="alp-zseries-prepare-iso-image">
<title>Download and prepare the installation image</title>
<para>
Download the &dinstaller; image for the &zseries; architecture from
<link xlink:href="&alp-dld-site;/Installer:/0.8/images/iso"/>, for
example:
</para>
<screen>&prompt.user;curl -LO &alp-dld-site;/Installer:/0.8/images/iso/d-installer-live.s390x-0.8.3-ALP-Build11.1.iso</screen>
<para>
Prepare the ISO image to be served by the FTP server. Extract its content
so that you can modify it:
</para>
<screen>
&prompt.sudo;mv d-installer-live.s390x-0.8.3-ALP-Build11.1.iso /srv/ftp/d-installer.iso
&prompt.sudo;cd /srv/ftp/
&prompt.sudo;isoinfo -R -X -i d-installer.iso
&prompt.sudo;chmod a+u boot s390x/initrd
</screen>
<tip>
<para>
Setting up an installation server (NFS or FTP) is out of the scope of
this article. For further information, refer to
<link xlink:href="https://documentation.suse.com/sles/html/SLES-all/cha-zseries.html#sec-zseries-prep"/>.
</para>
</tip>
</section>
<section xml:id="alp-zseries-example-deployment">
<title>Example deployment procedure</title>
<para>
The following procedure describes steps to deploy &productnameshort; on a
&zseries; machine via a z/VM console.
</para>
<procedure>
<step>
<para>
Install the <package>x3270</package> package that provides the
3270-type terminal emulator.
</para>
</step>
<step>
<para>
Connect to the LPAR server using the x3270 console. When asked,
provide your login credentials.
</para>
<figure>
<title>Login prompt inside the z/VM console</title>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="alp-zseries-zvm.png" width="50%"/>
</imageobject>
<imageobject role="html">
<imagedata fileref="alp-zseries-zvm.png" width="50%"/>
</imageobject>
<textobject role="description"><phrase>Login prompt inside the z/VM console</phrase>
</textobject>
</mediaobject>
</figure>
</step>
<step>
<para>
Enter the Conversational Monitoring System (CMS):
</para>
<screen>#CP IPL CMS</screen>
</step>
<step>
<para>
Link the TCPMAINT disk to have the FTP command available:
</para>
<screen>VMLINK TCPMAINT 592</screen>
</step>
<step>
<para>
Connect to the FTP server and download the required files for IPLing
installation. In our case, the anonymous user is allowed:
</para>
<screen>FTP example.org (addr ipv4
anonymous

cd boot/s390x
locsite fix 80
ascii
get parmfile sles.parmfile.a (repl
get sles.exec sles.exec.a (repl
locsite fix 80
binary
get linux sles.linux.a (repl
get initrd sles.initrd.a (repl
quit</screen>
<note>
<para>
The <command>locsite fix 80</command> command sets the VM file
format to a fixed length of 80. This file format is necessary for
<emphasis>punching</emphasis> the binary files to a virtual machine
reader.
</para>
</note>
</step>
<step>
<para>
Optionally, you can use the <command>FILELIST</command> command to
list the files and edit the <emphasis role="bold">parmfile</emphasis>
with XEDIT. Our example parmfile has the following content:
</para>
<screen>cio_ignore=all,!condev<co xml:id="alp-zseries-cioignore"/>
rd.cio_accept=0.0.0160
rd.zdev=qeth,0.0.0800:0.0.0801:0.0.0802,layer2=1,portno=0<co xml:id="alp-zseries-rdzdev"/>
ip=192.168.0.111::192.168.0.1:24:zvmtest.example.org:enc800:none<co xml:id="alp-zseries-ip"/>
nameserver=192.168.0.1
root=live:ftp://example.org/d-installer.iso<co xml:id="alp-zseries-live"/></screen>
<calloutlist>
<callout arearefs="alp-zseries-cioignore">
<para>
Although the <option>cio_ignore</option> parameter is optional,
it is used to list only the relevant installation devices and
accept the device that are used for the installation.
</para>
</callout>
<callout arearefs="alp-zseries-rdzdev alp-zseries-ip">
<para>
Because we do not have an interactive dialog for enabling and
configuring our network device, we need to provide the settings
through the kernel command line. The <option>rd.zdev</option>
option activates the <literal>qeth</literal> device and the
<option>ip</option> option configures network settings for the
<literal>enc800</literal> Linux network interface.
</para>
</callout>
<callout arearefs="alp-zseries-live">
<para>
The system boots from a live image retrieved from the specified
URL. Our example uses FTP protocol, but it can be HTTP as well.
</para>
</callout>
</calloutlist>
</step>
<step>
<para>
The following is the content of the <filename>sles.exec</filename>
file:
</para>
<screen>/* REXX LOAD EXEC FOR SUSE LINUX S/390 VM GUESTS */
/* LOADS SUSE LINUX S/390 FILES INTO READER */
SAY ''
SAY 'LOADING SLES FILES INTO READER...'
'CP CLOSE RDR'
'PURGE RDR ALL'
'SPOOL PUNCH * RDR'
'PUNCH SLES LINUX A (NOH'
'PUNCH SLES PARMFILE A (NOH'
'PUNCH SLES INITRD A (NOH'
'IPL 00C'</screen>
<para>
Boot the installation image by running the
<filename>sles.exec</filename> REXX file:
</para>
<screen>sles</screen>
<figure>
<title>Booting the installation image</title>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="alp-zseries-zvm-sles.png" width="50%"/>
</imageobject>
<imageobject role="html">
<imagedata fileref="alp-zseries-zvm-sles.png" width="50%"/>
</imageobject>
<textobject role="description"><phrase>Booting the installation image</phrase>
</textobject>
</mediaobject>
</figure>
</step>
<step>
<para>
After the installation system finishes the booting process, connect
to the machine either with the Web browser (for example,
https://example.host.org:9090) or via SSH using the default
credentials (user name: <literal>root</literal>, password:
<literal>linux</literal>). The rest of the installation process is
identical to <xref linkend="task-deploy-alp-dinstaller"/>.
</para>
</step>
</procedure>
</section>
</article>

0 comments on commit 613bde8

Please sign in to comment.