Erstellen eines VPX-Amazon-Maschinen-Images (AMI) in SC2S
Beiträge von
Autor: Jill Fetscher, Architektin
SC2S ist eine Air-Gapped-AWS-Instanziierung ohne Zugriff auf einen AWS Marketplace. Alle Amazon Machine Images (AMI) müssen mithilfe des vmimport
Tools manuell in die Umgebung hochgeladen werden. Aufgrund der Beschaffenheit der Citrix ADC VPX-Appliance ist die Image-Datei zu groß, um das vmimport
Tool zu verwenden. Das VPX-AMI muss so erstellt werden, dass es für die zukünftige Verwendung bootfähig ist. Wir haben die folgende Methode speziell für SC2S entwickelt, sie kann jedoch für zukünftige Anwendungsfälle dieser Art verwendet werden, bei denen kein Marktplatz existiert oder kein VPX-AMI-Angebot auf dem Marktplatz verfügbar ist.
Erstellen Sie eine VPX in SC2S: Schritte auf der niedrigen Seite (kommerzielles AWS)
-
Erstellen Sie eine VPC und ein Subnetz in UC2S (kommerziell) mit demselben CIDR-Block wie die VPC, in der sich der Citrix ADC in SC2S befindet. (Erstellen Sie beispielsweise eine VPC mit der Größe 10.0.0.0/16 mit einem einzelnen öffentlichen Subnetz der Größe 10.0.0.0/24 mithilfe des VPC-Assistenten.)
Dies kann auf zwei Arten geschehen:
- Erstellen Sie eine Test-VPC in SC2S mit dem grundlegenden CIDR und Subnetz
- Kopieren Sie das CIDR und das Subnetz, das in SC2S verwendet wird
Hinweis:
Für C2S erfolgt die VPC-Erstellung über einen Dienst und wird automatisch ein IP-Bereich aus dem Supernet zugewiesen. In diesem Fall ist die zweite Methode erforderlich. Warten Sie für GovCloud auf weitere Anweisungen oder laden Sie die neueste Version von VPX vom Marketplace herunter.
-
Stellen Sie eine EC2-Instance aus dem Citrix ADC AMI im AWS Marketplace bereit. Die Instanz muss über eine Kundenlizenz verfügen. Verwenden Sie eine Nicht-Nitro-basierte Instanz (z. B.
m4.xlarge
).Wählen Sie die VPC aus, die Sie in den vorherigen Schritten erstellt haben. Deaktivieren Sie Öffentliche IP automatisch zuweisen.
Benennen Sie die Instanz mit einem leicht erkennbaren Namen. In den folgenden Schritten erstellen wir viele Instanzen und es ist notwendig, jede Instanz für die weitere Konfiguration zu identifizieren.
Die Sicherheitsgruppe wird automatisch gefüllt. Klicken Sie in den restlichen Schritten auf Weiter, um die Instanz zu starten.
-
Erstellen Sie einen Bastion-Host für Windows Server 2019 oder 2016, um Ihre VPX-Instanz zu erreichen.
Diese Instanz kann eine
m4.xlarge
sein und muss in derselben VPC und AZ wie der Citrix ADC mit einer automatisch zugewiesenen öffentlichen IP erstellt werden. Das Root-Volume erfordert mindestens 45 GiB Allzweck-SSD (gp2).Hinweis:
Wenn die Umgebung die Erstellung von Elastic IPs (EIP) zulässt, können Sie die Erstellung des Bastion-Hosts überspringen und die VPX-Instanz kann direkt aus dem Netzwerk oder Internet verbunden werden. Wir empfehlen die Verwendung eines Bastion-Hosts aus Sicherheitsgründen und die mangelnde Verfügbarkeit von EIP in Umgebungen mit Air-Gapped.
Nennen Sie die Instanz etwas Erkennbares (z. B. SC2S: WS2016 Bastion Low).
Erstellen Sie der Einfachheit halber eine Sicherheitsgruppe, um All Trafficzuzulassen. Sie können diese Sicherheitsgruppe später sperren.
Sobald die Instanz bereit ist, wird RDP über die öffentliche IP in den Computer eingebunden. Laden Sie dann PuTTY und WinSCP herunter und kopieren Sie das Schlüsselpaar, das zum Erstellen der VPX-Instanz verwendet wurde. Dies erfordert die Konvertierung von .pem in eine .ppk unter Verwendung von PuTTYgen. Deaktivieren Sie im Server-Manager die Windows-Firewall und die erweiterte Sicherheit von Internet Explorer. Stellen Sie mithilfe von PuTTY sicher, dass Sie SSH in die neu bereitgestellte Citrix ADC Appliance aufnehmen können. Notieren Sie sich das
nsroot
Passwort für die Instanz. Standardmäßig ist dies die AWS InstanceID. Notieren Sie sich die private IP der Instanz, da sie in einem späteren Schritt benötigt wird. In diesem Stadium haben Sie eine funktionierende Citrix ADC Appliance.Hinweis:
Konfiguriere diesen VPX nicht! Melden Sie sich einfach
nsroot
an, um die Funktionalität zu überprüfen. -
Schalten Sie die Citrix ADC ADC-Instanz von der AWS-Konsole aus. Trennen Sie das Stamm-EBS-Volume von der Citrix ADC ADC-Instanz.
Um das Root-Volume zu trennen, klicken Sie auf das Root-Gerät
/dev/sda1
und dann auf die Volume-ID. Wählen Sie auf der Registerkarte Volume das Volume aus, geben Sie ihm einen erkennbaren Namen (z. B. SC2S: Commercial Root Vol) und notieren Sie sich die Volume-ID. Klicken Sie auf Aktionen > Volume trennen > OK. Der Volume-Status sollte jetzt Availablesein. -
Stellen Sie eine neue Amazon Linux EC2-Instance bereit (Amazon Linux 2 AMI (HVM), SSD-Volume-Typ, 64-Bit, EBS-gestützt, ENA-fähig). Diese Instance sollte denselben Instance-Typ wie die zuvor bereitgestellte VPX-Instanz haben (z. B.
m4.xlarge
) und sich in derselben VPC und demselben Subnetz befinden, wobei die Einstellung „Öffentliche IP automatisch zuweisen“ deaktiviert ist. Nennen Sie die Instanz etwas Erkennbares (zum Beispiel SC2S: Linux Low). Stellen Sie die Sicherheitsgruppe so ein, dass vorerst der gesamte Datenverkehr zugelassen wird Sobald die Instance gestartet ist, schalten Sie sie aus. -
Hängen Sie das abgetrennte EBS-Root-Volume von der VPX an die Linux EC2-Instance an.
Wählen Sie die von Ihnen erstellte Linux-Instanz aus, indem Sie auf Instanz > Anhängen
-
Erstellen Sie ein Volume mit einer höheren Kapazität als das Root-VPX-Volume. Die Root-Volume-Kapazität des VPX-Volumes beträgt 30 GiB. Erstellen Sie das Volumen mit einer Kapazität von 35 GiB. Stellen Sie den Volume-Typ auf Allzweck-SSD (gp2) ein und nennen Sie ihn etwas Erkennbares (z. B. SC2S: Copy Low Vol). Hängen Sie das neue Volume an die Linux-Instanz an.
-
Schalten Sie die Linux-Instanz und SSH vom Bastion-Host mithilfe der privaten Schlüsseldatei ein. Logge dich ein als
ec2-user*
. -
Erstellen Sie eine Partition auf dem NEUEN EBS-Volume.
Hinweis:
In diesem Beispiel ist das VPX-Root-Volume SC2S: Commercial Root Vol
/dev/sdf
und das neu erstellte 35-GiB-Volume SC2S: Copy Low Vol/dev/sdg
. Die Partition soll nur auf SC2S erstellt werden: Copy Low Vol . In der AWS-Konsole werden diese Blockgeräte durch symbolische Links gekennzeichnet. In der Linux-Instanz/dev/sdf
und/dev/sdg
werden jeweils als/dev/xvdf
und/dev/xvdg
bezeichnet.Stellen Sie in der Linux-CLI sicher, dass kein Dateisystem vorhanden ist. Die Antwort sollte nur aus Daten bestehen.
sudo file –s /dev/xvdg <!--NeedCopy-->
Erstellen Sie ein Dateisystem.
sudo mkfs -t xfs /dev/xvdg <!--NeedCopy-->
Erstellen Sie einen Mount-Punkt und mounten Sie das Gerät.
sudo mkdir /copy <!--NeedCopy-->
sudo mount /dev/svdg /copy <!--NeedCopy-->
Stellen Sie sicher, dass das Gerät eingehängt wurde und dass es drei Geräte gibt (
xvda
z.xvdf
B. undxvdg
).lsblk <!--NeedCopy-->
Erstellen Sie die Partition mit
fdisk
, wählen Sien
für neu,p
für primäre Partition,1
für die Partitionsnummer und die Standardwerte für den ersten und letzten Sektor (ENTER, ENTER). Drücken Sie zum Beenden STRTL+C.sudo fdisk /dev/xvdg >n >p >1 >enter >enter >CTRL+C <!--NeedCopy-->
-
Kopieren Sie das VPX-Root-Volume auf Blockebene auf das neue EBS-Volume (kopieren Sie beispielsweise SC2S: Commercial Root Vol nach SC2S: Copy Low Vol). Die hier erstellte Datei kann dann in die SC2S-Umgebung verschoben werden.
citrixADC.img
sudo dd if=/dev/xvdf of=/copy/citrixADC.img status=progress <!--NeedCopy-->
Diese Kopie kann mehrere Stunden dauern.
Überprüfen Sie nach Abschluss des Kopiervorgangs, ob sich die Datei im Verzeichnis /copy befindet, und ändern Sie die Berechtigungen für die Datei, um Lesen, Schreiben und Ausführen zu ermöglichen.
ls /copy sudo chmod 777 /copy/citrixADC.img <!--NeedCopy-->
-
WinSCP die
citrixADC.img
Datei an einen Ort, an dem sie auf die hohe Seite DTO’ed werden kann. Bei Bedarf ist die Bastion groß genug, um die Bilddatei in sie zu kopieren.
Erstellen Sie eine VPX in SC2S — Schritte auf der hohen Seite
-
Erstellen Sie eine VPC mit demselben CIDR-Block und -Subnetz wie in Schritt 1 für die niedrige Seite, oder verwenden Sie die vorhandene VPC. In diesem Beispiel lautet der CIDR der VPC 10.0.0.0/16 und der Subnetz-IP-Bereich ist 10.0.0.0/16. Dies ist äußerst wichtig, da das endgültige VPX, das erstellt wird, dieselbe IP haben muss wie das Original vom kommerziellen Marktplatz.
-
Starten Sie in der neuen VPC und im neuen Subnetz eine Instanz von Amazon Linux (Amazon Linux 2 AMI (HVM), SSD Volume Type, EBS-gestützt, ENA-fähig, 64-Bit) desselben Instance-Typs wie die auf der niedrigen Seite bereitgestellte Citrix ADC ADC-Instanz (z. B.
m4.xlarge
). Nennen Sie die Instanz etwas Erkennbares (zum Beispiel SC2S: Linux High). Wenn die Instance bereit ist, fahren Sie sie herunter. - Fügen Sie zwei EBS-Volumes mit einer höheren Kapazität als der übertragenen Dateigröße hinzu (z. B. 35 GiB). Diese Volumes müssen denselben SSD-Typ (gp2) haben wie das auf der niedrigen Seite erstellte.
- Der erste Band ist für die Kopie von der niedrigen Seite. Nennen Sie das Volume etwas Erkennbares (zum Beispiel „SC2S: Copy High Vol“). Hängen Sie dieses Volume als an die neue Linux-Instanz in SC2S an
/dev/sdf
. Dies ist der symbolische Link für/dev/xvdf
auf der Instanz.
- Das zweite Volume wird zum Root-Volume für das neue VPX. Nennen Sie das Volume etwas Erkennbares (zum Beispiel „SC2S: Final VPX Vol“). Hängen Sie dieses Volume als an die neue Linux-Instanz in SC2S an
/dev/sdg
. Dies ist der symbolische Link für/dev/xvdg
auf der Instanz.
An die Instanz sind jetzt drei Blockgeräte angeschlossen, einschließlich des Root-Geräts. Schalten Sie die Instanz ein.
- Der erste Band ist für die Kopie von der niedrigen Seite. Nennen Sie das Volume etwas Erkennbares (zum Beispiel „SC2S: Copy High Vol“). Hängen Sie dieses Volume als an die neue Linux-Instanz in SC2S an
-
Erstellen Sie einen Highside-Bastionshost für Windows Server 2019 oder 2016 auf die gleiche Weise wie die Low-Side-Bastion. Diese Instanz sollte sich in der neu erstellten VPC und im Subnetz befinden und mindestens 45 GiB für Dateiübertragungen haben. Stellen Sie „Öffentliche IP automatisch zuweisen“ auf aktiviert. Nennen Sie die Instanz etwas Erkennbares (zum Beispiel „SC2S: WS2016 Bastion_High“) und setzen Sie die Sicherheitsgruppe so, dass sie vorerst „All Traffic“ zulässt.
-
Sobald der Bastion-Host bereit ist, können Sie RDP mithilfe der öffentlichen IP auf den Computer übertragen, PuTTY und WinSCP herunterladen und über das Keypair kopieren, das zum Erstellen der VPX-Instanz verwendet wurde. Dies erfordert die Konvertierung von .pem in eine .ppk unter Verwendung von PuTTYgen. Deaktivieren Sie im Server-Manager die Windows-Firewall und die erweiterte Sicherheit von Internet Explorer vorerst.
-
Kopieren Sie die Datei CitrixADC.img auf den neuen Bastion-Host.
-
Starten Sie eine PuTTY-Sitzung mit der neuen Linux-Instanz (z. B. „SC2S: Linux High“) vom Bastion-Host aus, wobei Sie den privaten AWS-Schlüssel mit dem Benutzernamen verwenden
ec2-user
. -
Verwenden Sie diese Option,
lsblk
um zu überprüfen, ob alle Geräte in der Instanz vorhanden sind. -
Stellen Sie sicher, dass das
/dev/xvdf
Gerät kein Dateisystem hat, und erstellen Sie dann eines.Hinweis:
Erstellen Sie KEIN Dateisystem auf dem
/dev/xvdg
Gerät.sudo file –s /dev/xvdf sudo mkfs –t xfs /dev/xvdf <!--NeedCopy-->
-
Erstellen Sie einen Einhängepunkt für das Gerät, mounten Sie das Gerät und stellen Sie sicher, dass der Volume-Einhängepunkt ist
/copy
.sudo mkdir /copy sudo mount /dev/xvdf /copy lsblk <!--NeedCopy-->
-
Erstellen Sie eine Partition mit
fdisk
.sudo fdisk /dev/xvdf >n >p >1 >enter >enter >CTRL+C <!--NeedCopy-->
-
Ändern Sie die Berechtigungen für das Verzeichnis /copy.
sudo chmod 777 /copy <!--NeedCopy-->
-
Stellen Sie mithilfe von WinSCP auf dem Bastion-Host eine Verbindung zur Linux-Instanz her. Kopieren Sie die Datei CitrixADC.img in das Verzeichnis /copy. Nachdem die Datei kopiert wurde, ändern Sie die Berechtigungen, um Lesen, Schreiben und Ausführen für alle über die WinSCP-Konsole zu ermöglichen.
-
Kopieren Sie in der Linux CLI die Image-Datei mit dem folgenden Befehl auf das /dev/xvdg-Gerät:
sudo dd if=/copy/citrixADC.img of=/dev/xvdg status=progress <!--NeedCopy-->
-
Führen Sie nach Abschluss des Kopiervorgangs den
lsblk
Befehl aus, um zu überprüfen, ob die Partitionen des Citrix ADC auf dem /dev/xvdg-Gerät angezeigt werden.lsblk <!--NeedCopy-->
-
Schalten Sie die Linux-Instanz aus und trennen Sie das Volume /dev/xvdg (/dev/sdg) (zum Beispiel „SC2S: Final VPX Vol“).
-
Stellen Sie eine neue Linux-Instance mit EXAKT demselben Instance-Typ wie die VPX auf der niedrigen Seite bereit, in derselben VPC und demselben Subnetz, die auf der High-Side erstellt wurden (Amazon Linux 2 AMI (HVM), SSD-Volume-Typ, EBS-gestützt, ENA-fähig, 64-Bit
m4.xlarge
, Sicherheitsgruppe, die auf „All Traffic“ eingestellt ist). Stellen Sie während des Setups die IP auf die GLEICHE wie die VPX auf der unteren Seite ein, die im vorherigen Abschnitt dieses Dokuments erwähnt wurde. Sobald die Instance bereit ist, schalten Sie die Instance aus. -
Trennen Sie das Root-Volume der neu bereitgestellten Linux-Instanz und hängen Sie die abgetrennte Instanz an (z. B. „SC2S: Final VPX Vol“). Geben Sie während des Anhangs das Gerät als Root-Volume an (d. h.
/dev/xvda
). -
Schalten Sie die Instanz ein. Verwenden Sie den Highside-Bastion-Host, Putty/SSH an die Instanz, um die Funktionalität des VPX zu überprüfen. Melden Sie sich wie
nsroot
mit dem im vorherigen Abschnitt dieses Dokuments angegebenen Instanz-ID-Passwort an und führen Sie einen einfachen Befehl aus.sh version <!--NeedCopy-->
Erstellen eines AMI aus der gestarteten VPX-Instance
-
Melden Sie sich bei der Citrix ADC ADC-Instanz an. Gehe in die Shell, um die notwendigen Änderungen als root vorzunehmen.
shell <!--NeedCopy-->
-
Entfernen Sie die folgenden Verzeichnisse und Dateien gewaltsam und rekursiv manuell aus der ADC-Software. Um die Dateien und Verzeichnisse manuell zu entfernen, fügen Sie jeweils rm —rf hinzu. ‘/nsconfig/ns.conf’
‘/nsconfig/ssh/’
‘/nsconfig/ssl/’
‘/nsconfig/aws_bootstrap’
‘/nsconfig/rainman.conf
‘ ‘/var/nslog
‘ ‘/var/log/messages’
‘/var/log/.log’
‘/var/core/’’NSConfig/.aws/’ ‘/var/db
‘ ‘/etc/resolv.conf
‘ ‘/flash/build
‘ ‘/mpsconfig/pgxl/.ssh/id_rsa.pub’
‘/var/pubkey/nsroot/.ssh/authorized_keys’
‘/var/pubkey/root/.ssh/authorized_keys’oder führe dieses Skript aus:
#!/bin/sh -x rm -rf /nsconfig/ns.conf* rm -rf /nsconfig/ssh/* rm -rf /nsconfig/ssl/* rm -rf /nsconfig/aws_bootstrap rm -rf /nsconfig/rainman.conf rm -rf /var/nslog rm -rf /var/log/messages* rm -rf /var/log/\*.log rm -rf /var/core/\* rm -rf /nsconfig/.AWS/ rm -rf /var/db rm -rf /etc/resolv.conf rm -rf /flash/BUILD rm -rf /mpsconfig/pgxl/.ssh/id_rsa.pub rm -rf /var/pubkey/nsroot/.ssh/authorized_keys rm -rf /var/pubkey/root/.ssh/authorized_keys <!--NeedCopy-->
-
Ändern Sie die Berechtigungen für das Verzeichnis /flash/nsconfig auf 755.
chmod 755 /flash/nsconfig <!--NeedCopy-->
-
Stellen Sie sicher, dass keine Restschlüssel übrig sind. Wenn ja, entfernen Sie sie gewaltsam und rekursiv.
find / -type f -name “authorized*” rm -rf <filename> <!--NeedCopy-->
-
Stellen Sie sicher, dass in /nsconfig/license keine Restlizenzen vorhanden sind. Wenn ja, entfernen Sie sie gewaltsam und rekursiv.
Hinweis:
In diesem Ordner befinden sich andere Verzeichnisse und Dateien (z. B. SSL und XML). Entfernen Sie nur Lizenzdateien, falls vorhanden.
ls /nsconfig/license ls /nsconfig/license/ssl ls /nsconfig/license/xml <!--NeedCopy-->
-
Schalten Sie das Gerät über die AWS-Konsole aus. Erstellen Sie nach dem Stoppen der Instance ein AMI aus der Instance.
Nennen Sie die Instanz etwas Erkennbares für ALLE, da dies öffentlich für alle Administratoren von SC2S freigegeben wird (zum Beispiel „Citrix ADC VPX 13.0—47.24“)
-
Sobald das AMI bereit ist, stellen Sie eine Instance von dort bereit, um die Funktionalität zu überprüfen.
-
Legen Sie die Berechtigungen für das AMI auf fest
Public
, sodass es allen Administratoren von SC2S zur Verfügung steht.
So aktualisieren Sie auf eine neue Version
-
Für vorhandene Citrix ADC VPXs in SC2S: Aktualisieren Sie den VPX mit der Upgrade-Software, die unter https://citrix.com/downloadsverfügbar ist, und führen Sie die Datei auf die Highside aus. Befolgen Sie die Anweisungen unter Upgrade einer eigenständigen Citrix ADC Appliance zur Installation. Die empfohlene Upgrade-Methode ist die Verwendung der Befehlszeile.
-
Für neue Citrix ADC VPXs in SC2S: Erstellen Sie ein AMI, um es öffentlich zu teilen. Starten Sie eine Instance vom vorhandenen AMI aus, aktualisieren Sie die Maschine wie im vorherigen Abschnitt beschrieben, und führen Sie die Schritte aus dem Abschnitt „Erstellen eines AMI aus der gestarteten VPX-Instance“ in diesem Dokument aus.