SC2SでのVPX Amazonマシンイメージ(AMI)の作成
協力者
著者: ジル・フェッチャー、建築家
SC2S は、AWS Marketplace にアクセスできない、エアギャップ型の AWS インスタンス化です。すべての Amazon マシンイメージ (AMI) は、 vmimport
ツールを使用して環境に手動でアップロードする必要があります。Citrix ADC VPXアプライアンスの性質上、イメージファイルが大きすぎてvmimport
ツールを使用できません。VPX AMIは、将来使用できるように起動できるように作成する必要があります。SC2S専用に次のメソッドを作成しましたが、マーケットプレイスが存在しない、またはマーケットプレイスでVPX AMIオファリングが利用できない、このような将来のユースケースに使用できます。
SC2SでVPXを作成する:ローサイドのステップ (商用AWS)
-
Citrix ADC が SC2S に存在する VPC と同じ CIDR ブロックを使用して、UC2S(商用)に VPC とサブネットを作成します。(たとえば、VPC ウィザードを使用して、サイズが 10.0.0.0/24 の 1 つのパブリックサブネットを持つ 10.0.0.0/16 サイズの VPC を作成します)。
これは、次の 2 つの方法のいずれかで実行できます。
- 基本的な CIDR とサブネット化を使用して SC2S でテスト VPC を作成する
- SC2S で使用されている CIDR とサブネットをコピーします。
注:
C2S の場合、VPC の作成はサービスを介して行われ、スーパーネットから IP 領域が自動的に割り当てられます。この場合、2番目の方法が必要です。GovCloudについては、さらなる指示を待つか、マーケットプレイスからVPXの最新バージョンをダウンロードしてください。
-
AWS マーケットプレイスのCitrix ADC AMI から EC2 インスタンスを展開します。 インスタンスはカスタマーライセンスが必要です。非Nitroベースのインスタンス (
m4.xlarge
など) を使用します。前のステップで作成した VPC を選択します。 パブリック IP の自動割り当てを無効にします。
インスタンスにわかりやすい名前を付けます。次の手順で多くのインスタンスを作成します。さらに構成するには、各インスタンスを識別する必要があります。
セキュリティグループが自動入力されます。インスタンスの起動の残りの手順は、[次へ] をクリックします。
-
Windows Server 2019または2016のベース要塞ホストを作成して、VPXインスタンスに到達します。
このインスタンスは
m4.xlarge
にすることができ、自動割り当てられたパブリック IP を使用して、Citrix ADC と同じ VPC および AZ に構築する必要があります。ルートボリュームには、最低 45 GiB の汎用 SSD (gp2) が必要です。注:
環境で Elastic IP(EIP)の作成が許可されている場合は、踏み台ホストの作成をスキップできます。VPXインスタンスはネットワークまたはインターネットから直接接続できます。セキュリティ上の理由と、エアギャップ環境における EIP の可用性の欠如のために、踏み台ホストを使用することをお勧めします。
インスタンスに、わかりやすい名前を付けます (たとえば、SC2S: WS2016 Bastion Low)。
簡単にするために、 すべてのトラフィックを許可するセキュリティグループを作成します。このセキュリティグループは後でロックダウンできます。
インスタンスの準備が整ったら、パブリック IP を使用してマシンに RDP 接続します。次に、PuTTYとWinSCPをダウンロードし、VPXインスタンスの作成に使用されたキーペアをコピーします。これには、PuTTYgen を使用して.pem を.ppk に変換する必要があります。サーバーマネージャーで、Windows ファイアウォールと Internet Explorer のセキュリティ強化を無効にします。PuTTYを使用して、新しく展開されたCitrix ADCアプライアンスにSSH接続できることを確認します。インスタンスの
nsroot
パスワードを書き留めます。デフォルトでは、これは AWS InstanceID です。後のステップで必要になるため、インスタンスのプライベート IP をメモしておきます。この段階では、Citrix ADCアプライアンスが動作しています。注:
このVPXは構成しないでください。機能を確認するには、
nsroot
としてログインするだけです。 -
AWS コンソールから Citrix ADC インスタンスをパワーオフします。Citrix ADC インスタンスからルート EBS ボリュームをデタッチします。
ルートボリュームをデタッチするには、ルートデバイス
/dev/sda1
をクリックし、ボリューム ID をクリックします。[ボリューム] タブで、ボリュームを選択し、わかりやすい名前 (たとえば、 SC2S: Commercial Root Vol)、ボリューム ID を書き留めます。[** アクション] > [ボリュームのデタッチ] > [OK]をクリックします。ボリュームの状態は [ **Available]になります。 -
新しい Amazon Linux EC2 インスタンス (Amazon Linux 2 AMI (HVM)、SSD ボリュームタイプ、64 ビット、EBS バックアップ、ENA 対応) をデプロイします。このインスタンスは、以前にデプロイしたVPXインスタンス(たとえば
m4.xlarge
)と同じインスタンスタイプで、同じVPCとサブネットにあり、[パブリックIPの自動割り当て] 設定が無効になっている必要があります。インスタンスにわかりやすい名前を付けます (たとえば、 SC2S: Linux Low)。今のところ、すべてのトラフィックを許可するようにセキュリティグループを設定します。インスタンスが起動したら、電源を切ります。 -
VPXからデタッチされたルートEBSボリュームをLinux EC2インスタンスにアタッチします。
[インスタンス] > [アタッチ] をクリックして、作成した Linux インスタンスを選択します。
-
ルートVPXボリュームよりも容量の大きいボリュームを作成します。VPXボリュームのルートボリューム容量は30 GiBです。35 GiB の容量を持つボリュームを作成します。ボリュームタイプを汎用 SSD (gp2) に設定し、わかりやすい名前を付けます (たとえば、 SC2S: Copy Low Vol)。新しいボリュームを Linux インスタンスにアタッチします。
-
Linux インスタンスをパワーオンし、プライベートキーファイルを使用して踏み台ホストから SSH 接続します。
ec2-user*
としてログインします。 -
新しい EBS ボリュームにパーティションを作成します。
注:
この例では、 VPXルートボリュームSC2S: 商用ルートボリュームは
/dev/sdf
で 、新しく作成された35 GiBボリュームSC2S: Copy Low Volは/dev/sdg
です。パーティションは SC2S: Copy Low Vol のみで作成されます。AWS コンソールでは、これらのブロックデバイスはシンボリックリンクで表されます。Linuxインスタンスでは、/dev/sdf
および/dev/sdg
がそれぞれ/dev/xvdf
および/dev/xvdg
として参照されます。Linux CLIで、ファイルシステムがないことを確認します。 応答はデータのみである必要があります 。
sudo file –s /dev/xvdg <!--NeedCopy-->
ファイルシステムを作成します。
sudo mkfs -t xfs /dev/xvdg <!--NeedCopy-->
マウントポイントを作成し、デバイスをマウントします。
sudo mkdir /copy <!--NeedCopy-->
sudo mount /dev/svdg /copy <!--NeedCopy-->
デバイスがマウントされていること、および 3 つのデバイス(
xvda
xvdf
、などxvdg
)があることを確認します。lsblk <!--NeedCopy-->
fdisk
を使用して 、パーティションを作成します。 新規の場合はn
、プライマリパーティションの場合はp
、パーティション番号の場合は1
を選択し、最初と最後のセクタのデフォルト (ENTER、ENTER) を使用します。CTRL+C を押して終了します。sudo fdisk /dev/xvdg >n >p >1 >enter >enter >CTRL+C <!--NeedCopy-->
-
VPXルートボリュームをブロックレベルで新しいEBSボリュームにコピーします (たとえば、 SC2S: 商用ルートボリュームをSC2S:Copy Low Volにコピー**)。ここで作成したファイル
citrixADC.img
は、SC2S 環境に移動できます。sudo dd if=/dev/xvdf of=/copy/citrixADC.img status=progress <!--NeedCopy-->
このコピーには数時間かかることがあります。
ファイルのコピーが完了したら、ファイルが /copy ディレクトリにあることを確認し、ファイルのパーミッションを変更して読み取り、書き込み、および実行を許可します。
ls /copy sudo chmod 777 /copy/citrixADC.img <!--NeedCopy-->
-
citrixADC.img
ファイルをハイサイドまでDTOできる場所にWinSCPします。必要に応じて、踏み台はイメージファイルをコピーするのに十分な大きさです。
SC2SでVPXを作成する-ハイサイドのステップ
-
ステップ 1 でローサイドと同じ CIDR ブロックとサブネットを持つ VPC を作成するか、既存の VPC を使用します。この例では、VPC の CIDR は 10.0.0.0/16 で、サブネット IP 領域は 10.0.0.0/16 です。作成される最終的なVPXは、商用マーケットプレイスのオリジナルと同じIPでなければならないため、これは非常に重要です。
-
新しいVPCとサブネットで、ローサイドにデプロイされたCitrix ADCインスタンスと同じインスタンスタイプの Amazon Linux(Amazon Linux 2 AMI(HVM)、SSD ボリュームタイプ、EBS-backed、ENA対応、64ビット)のインスタンスを起動します(たとえば
m4.xlarge
)。インスタンスにわかりやすい名前を付けます (たとえば、SC2S: Linux High)。インスタンスの準備が整ったら、電源を切ります。 - 転送されたファイルサイズ (35 GiB など) よりも大きい容量の EBS ボリュームを 2 つ追加します。これらのボリュームは、ローサイドで作成されたものと同じSSDタイプ (gp2) である必要があります。
- 第1巻はローサイドからのコピー用です。ボリュームにわかりやすい名前を付けます (「SC2S: Copy High Vol」など)。このボリュームを SC2S の新しい Linux インスタンスに
/dev/sdf
としてアタッチします。これは、インスタンス上の/dev/xvdf
のシンボリックリンクです。
- 2番目のボリュームは、新しいVPXのルートボリュームになります。ボリュームにわかりやすい名前を付けます (「SC2S: Final VPX Vol」など)。このボリュームを SC2S の新しい Linux インスタンスに
/dev/sdg
としてアタッチします。これは、インスタンス上の/dev/xvdg
のシンボリックリンクです。
これで、インスタンスには、ルートデバイスを含む 3 つのブロックデバイスがアタッチされました。インスタンスをパワーオンします。
- 第1巻はローサイドからのコピー用です。ボリュームにわかりやすい名前を付けます (「SC2S: Copy High Vol」など)。このボリュームを SC2S の新しい Linux インスタンスに
-
ローサイドの踏み台と同じ方法で、ハイサイドの Windows Server 2019 または 2016 のベース踏み台ホストを作成します。このインスタンスは、新しく作成された VPC とサブネットにあり、ファイル転送用に 45 GiB 以上である必要があります。「パブリックIPの自動割り当て」を有効に設定します。インスタンスに認識可能な名前を付け (「SC2S: WS2016 Bastion_High」など)、今のところ「すべてのトラフィック」を許可するようにセキュリティグループを設定します。
-
踏み台ホストの準備ができたら、パブリックIPを使用してマシンにRDPし、PuTTYとWinSCPをダウンロードし、VPXインスタンスの作成に使用されたキーペアをコピーします。これには、PuTTYgen を使用して.pem を.ppk に変換する必要があります。サーバーマネージャーで、Windows ファイアウォールと Internet Explorer のセキュリティ強化を無効にします。
-
CitrixADC.img ファイルを新しい踏み台ホストにコピーします。
-
ユーザー名
ec2-user
の AWS プライベートキーを使用して、踏み台ホストから新しい Linux インスタンス (「SC2S: Linux High」など) に対する PuTTY セッションを開始します。 -
lsblk
を使用して、すべてのデバイスがインスタンスに存在することを確認します。 -
/dev/xvdf
デバイスにファイルシステムがないことを確認してから、ファイルシステムを作成します。注:
/dev/xvdg
デバイス上にファイルシステムを作成しないでください。sudo file –s /dev/xvdf sudo mkfs –t xfs /dev/xvdf <!--NeedCopy-->
-
デバイスのマウントポイントを作成し、デバイスをマウントして、ボリュームマウントポイントが
/copy
であることを確認します 。sudo mkdir /copy sudo mount /dev/xvdf /copy lsblk <!--NeedCopy-->
-
fdisk
を使用してパーティションを作成します。sudo fdisk /dev/xvdf >n >p >1 >enter >enter >CTRL+C <!--NeedCopy-->
-
/copy ディレクトリの権限を変更します。
sudo chmod 777 /copy <!--NeedCopy-->
-
踏み台ホストで WinSCP を使用して、Linux インスタンスに接続します。CitrixADC.img ファイルを /copy ディレクトリにコピーします。ファイルがコピーされたら、WinSCP コンソールからすべての人に読み取り、書き込み、および実行を許可するように権限を変更します。
-
Linux CLI で、次のコマンドを使用してイメージファイルを /dev/xvdg デバイスにコピーします。
sudo dd if=/copy/citrixADC.img of=/dev/xvdg status=progress <!--NeedCopy-->
-
コピーが完了したら、
lsblk
コマンドを実行して、Citrix ADC パーティションが/dev/xvdgデバイスに表示されていることを確認します。lsblk <!--NeedCopy-->
-
Linuxインスタンスの電源を切り、/dev/xvdg (/dev/sdg) ボリューム (「SC2S: 最終VPX Vol」など) をデタッチします。
-
ハイサイド(Amazon Linux 2 AMI(HVM)、SSDボリュームタイプ、EBS-backed、ENA対応、64ビット、
m4.xlarge
、セキュリティグループで「すべてのトラフィック」を許可するように設定された同じVPCとサブネットに、VPXとまったく同じインスタンスタイプの新しいLinuxインスタンスをデプロイします。セットアップ中に、このドキュメントの前のセクションで説明したローサイドのVPXと同じIPを設定します。インスタンスの準備が整ったら、インスタンスをパワーオフします。 -
新しくデプロイされたLinuxインスタンスのルートボリュームをデタッチし、デタッチされたインスタンスをアタッチします (例:「SC2S: Final VPX Vol」)。アタッチ中に、デバイスをルートボリューム (つまり、
/dev/xvda
) として指定します。 -
インスタンスをパワーオンします。ハイサイド踏み台ホストを使用して、インスタンスにPuTTY/SSHを実行し、VPXの機能を検証します。このドキュメントの前のセクションで説明したインスタンス ID パスワードを使用して
nsroot
としてログインし、簡単なコマンドを実行します。sh version <!--NeedCopy-->
起動したVPXインスタンスからAMIを作成する
-
Citrix ADC インスタンスにログインします。シェルに入り、必要な修正を root で実行します。
shell <!--NeedCopy-->
-
次のディレクトリとファイルをADCソフトウェアから強制的かつ再帰的に手動で削除します。ファイルとディレクトリを手動で削除するには、それぞれの前に rm —rf を追加します。 ‘/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’または、次のスクリプトを実行します。
#!/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-->
-
/flash/nsconfig ディレクトリの権限を 755 に変更します。
chmod 755 /flash/nsconfig <!--NeedCopy-->
-
キーが残っていないことを確認します。存在する場合は、強制的かつ再帰的に削除します。
find / -type f -name “authorized*” rm -rf <filename> <!--NeedCopy-->
-
/nsconfig/licenseに残留ライセンスが存在しないことを確認します。存在する場合は、強制的かつ再帰的に削除します。
注:
このフォルダーには他のディレクトリとファイル (SSL や XML など) があり、ライセンスファイルが存在する場合のみ削除してください。
ls /nsconfig/license ls /nsconfig/license/ssl ls /nsconfig/license/xml <!--NeedCopy-->
-
AWS コンソールからマシンの電源を切ります。インスタンスが停止したら、インスタンスから AMI を作成します。
インスタンスには、すべての人が認識できる名前を付けます。これは、SC2Sのすべての管理者に公開されているためです(たとえば、「Citrix ADC VPX 13.0—47.24」)
-
AMI の準備ができたら、そこからインスタンスをデプロイして機能を確認します。
-
AMI のアクセス許可を
Public
に設定します。これにより、SC2S のすべての管理者が使用できるようになります。
新しいリリースにアップグレードするには
-
SC2Sの既存のCitrix ADC VPXの場合: https://citrix.com/downloadsで入手可能なアップグレードソフトウェアを使用してVPXをアップグレードし、ファイルをハイサイドにDTOします。 Citrix ADCスタンドアロンアプライアンスのアップグレードのガイダンスに従ってインストールします 。推奨されるアップグレード方法は、コマンドラインを使用することです。
-
SC2Sの新規Citrix ADC VPXの場合:AMIを作成してパブリックに共有します。既存のAMIからインスタンスを起動し、前のセクションのようにマシンをアップグレードし、このドキュメントの「起動したVPXインスタンスからAMIを作成する」セクションの手順を実行します。