シングル VM 環境のセットアップ

シングル VM スクリプトを使用して AppScan 360° をインストールする前に、最適なデプロイメント環境をセットアップします。

AppScan 360° をインストールおよびデプロイする環境では、パフォーマンスを最適化するための前提条件ツールを設定する必要があります。

HCL ID

HCL ID により、アカウントに有効なライセンスと、ソフトウェアおよびサポートへのアクセス権が関連付けられます。HCL ライセンス、ダウンロード・ポータル、HCL Harbor へのアクセスに必要です。

HCL ID の作成とライセンスおよびソフトウェアへのアクセスの詳細については、この資料を参照してください。

Linux システム

デプロイメントを開始するには、Ubuntu Linux システム (バージョン 22.04 以降) が必要です。実際のデプロイメントは、リモート Kubernetes クラスターにデプロイできますが、デプロイメントはこの Linux マシンから開始されます。システムに Bash シェルと openssl がインストールされていて、指定された SQL サーバーに接続できる必要があります。

動的スキャンでは、動的スキャンが実行されるすべてのノードでカーネル内の inotify インスタンスの数を増やします。
  1. /etc/sysctl.conffs.inotify.max_user_instances=524288 を追加します。
  2. ノードをリブートして、変更を有効にします。

ローカル・コンテナー・サービス (Docker)

Docker は、イメージをリモート・レジストリーにプッシュできるローカル・コンテナー・サービスです。これは、HCL ライセンスおよびダウンロード・ポータルからダウンロードしたアーカイブ・ファイルから ASCP および Omnia/AppScan 修復アドバイザリー をインストールする際に必要です。

Kubectl

Kubectl は、リモート Kubernetes クラスターとの通信に使用されます。

Kubectl のインストールおよび構成の詳しい手順については、こちらをご覧ください。

Helm 3

Helm 3 は、Kubernetes アプリケーションを容易に設定および使用できるようにするための一連のリソースです。

Helm CLI のインストールの詳しい手順については、こちらをご覧ください。

MSSQL

MSSQL は、リレーショナル・データベース管理システムです。

Active Directory (LDAP)

Active Directory は、ネットワーク内のすべてのユーザーとコンピューターを認証および承認し、ネットワーク・アクセスのセキュリティー・ポリシーを割り当てて適用します。

重要: AppScan 360° バージョン 1.1.0 以前からアップグレードする場合、LDAP 構成をそのまま再利用することはできません。インストールする前に、すべての LDAP パラメーターが AppScan 360° バージョン 1.2 の要件を満たしていることを確認する必要があります。

ネットワーク

ネットワークは暗号化され、ネットワーク・ポリシーをサポートする必要があります。

重要: クライアントと AppScan 360° の間の通信用にインストールされた証明書を信頼できる証明書にすることを強く推奨します。信頼できる証明書がない場合、クライアントと AppScan 360° の間の通信は信頼できません。クライアントは証明書をクライアントの JRE キーストアにインポートできます。ただし、AppScan 360° から Static Analyzer コマンド行ユーティリティー (SAClientUtil) を自動的にダウンロードする静的分析クライアント (Azure プラグインなど) では、このオプションは機能しない場合があります。

ストレージ

AppScan 360° は、2 種類のストレージを使用します。必要なストレージ・スペースは、スキャンの回数とスキャン対象のアプリケーションのサイズによって異なります。ガイドラインとして、1 回のスキャン実行に必要なストレージの平均サイズは、以下のとおりです。

  • MSSQL サーバー DB ストレージ: 150 KB
  • ファイル・ストレージ: 10 MB
スキャン実行数あたりの推定ストレージ:
スキャン実行数 1,000 100,000 1,000,000
MSSQL サーバー・ストレージ 150 MB 15 GB 150 GB
ファイル保管 10 GB 1 TB 10 TB
一時的なログ格納のためにデータベースとファイル・ストレージの両方に推奨される最小ストレージ・サイズは、それぞれ 200 GB です。
注: ストレージは、ポッド間で暗号化、冗長化、共有可能で、RWX (ReadWriteMany) アクセス・モードをサポートしている必要があります。

古いスキャンを手動で削除すると、スペースを節約できます。

CPU とメモリー

CPU とメモリーの要件は、ユーザー数と予想されるワークロードによって異なります。

デフォルトでは、Kubernetes ジョブはスキャンごとに最小リソースを割り当てます。場合によっては、ユーザーのアクティブな状態、使用する自動化の程度、アプリケーションのサイズ、スキャンの頻度などの要因によって、スキャンを正しく実行するためにより多くのリソースが必要になることがあります。リソースが利用可能であると仮定すると、ポッドは定義された最大リソースまでのスケールアップを試みます。スケールアップするのに十分なリソースがない場合、一部のスキャンが失敗する可能性があります。

成功を最大限に高めるには、必要に応じてシステムを拡張できる十分なリソースを提供します。リソースの割り当ては、同時スキャンの数に基づいて行われます。

ASCP リソース

ASCP 実行時のみ:
メモリー CPU (vCore)
ASCP
最小 42 GB 10
最大 48 GB 12
注: ASCP リソースは一定で、スキャンに必要なリソースに加えられます。

リソースのスキャン中

スキャンを実行する場合のその他のリソース:

メモリー CPU (vCore)
動的分析スキャン: シングル・スキャン
最小 3 GB 2
推奨 4 GB 3
動的分析スキャン: 5 件の同時スキャン
最小 15 GB 10
推奨 20 GB 15
動的分析スキャン: 10 件の同時スキャン
最小 30 GB 20
推奨 40 GB 30
静的分析スキャン: シングル・スキャン
最小 16 GB 2
最大 28 GB 4
静的分析スキャン: 5 件の同時スキャン
最小 80 GB 10
最大 140 GB 20
静的分析スキャン: 10 件の同時スキャン
最小 160 GB 20
最大 280 GB 40
追加の同時実行を実現するには、次のような十分な追加リソースを使用できる必要があります。
  • 上記のシングル・スキャンに必要なスキャン・リソースを、予想される同時スキャンの数で掛け、その結果を ASCP リソースに足してください。
    例:
    • 5 件の同時スキャンの最小リソースは、122GB メモリーと 20 CPU です (ASCP 用に 42GB + スキャン用に 80GB および ASCP 用に 10 CPU + スキャン用に 10 CPU)。
    • 12 件の同時スキャンの最小リソースは、234GB メモリーと 34 CPU です ( ASCP 用に 42GB + スキャン用に 192GB および ASCP 用に 10 CPU + スキャン用に 24 CPU)。
  • ASCP インストール中に発行された AppScan 360° ライセンスの数が十分であることを確認します。
  • 複数のスキャンを同時に稼働させることができる Kubernetes の設定とリソースの可用性を定義します。
  • 25 件を超える同時スキャンはお勧めしません。

各サービスの最大数は、予想されるピーク・スキャン・ロード・プロファイル、つまり、送信されるスキャンのピーク数、ソース・コード/バイナリーのスキャンの比率、および IRX のスキャンの比率によって異なります。これらが不明なために、最初のデプロイメントでは最適な設定を定義できない場合があります。HCL AppScan 360° 設定は実際のスキャン負荷に基づいて調整できます。

注: スキャンを実行するには、1 つのノードでスキャンに必要なリソースを使用できる必要があります。静的スキャンに推奨されるノードには、少なくとも 28 GB の RAM と 4 つのコアが必要です。動的スキャンに推奨されるノードには、ログを一時的に保存するために少なくとも 4 GB の RAM、3 つのコア、200 GB のディスク領域が必要です。

データベース

  • データベースのインストール、管理、バックアップ、メンテナンス、およびライセンスは、ユーザーの責任です。
  • MSSQL Server 2019 以降がサポートされています。
  • HCL AppScan 360° をインストールする前に、1 人のユーザーに db_creator 権限を設定してください。

ブラウザー

AppScan 360° は、以下のブラウザーの最新バージョンをサポートしています。
  • Chrome
  • Safari
  • Edge
  • Firefox

認証プロバイダー

インストール・プロセス中に 2 人のローカル・ユーザーが作成されます。
管理者 アプリケーション・マネージャー
ユーザー名 Admin User
パスワード Admin12! User12!

追加のユーザーをオンボーディングするには、HCL AppScan 360°Microsoft Active Directory が必要です。

アクセス・ポイント

コンポーネント Ingress URL
ユーザー・ポータル https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>
ユーザー API https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>/api
ユーザー API (Swagger) https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>/swagger
注: DNS サーバーで ingress 指定 IP を使用して ingress FQDN を公開する必要があります。

画面解像度

HCL AppScan 360° の推奨画面解像度は、1920 x 1080 です。

追加情報

AppScan 360° シングル VM セットアップ・スクリプトでは、環境を設定するための一連の質問を行います。質問に対して、次の情報を提供できるようにしてください。
  • Do you want the setup procedure to verify availablity of minimum required resources? (必要な最小限のリソースが使用可能かどうかを確認するためのセットアップ手順を実行しますか?)
  • Is the local VM connected to the local DNS server? (ローカル VM はローカル DNS サーバーに接続されていますか?)
  • Is this installation intended to be a proof-of-concept for later full/distributed installation of AppScan 360°? (このインストールは、後の AppScan 360° の完全/分散インストールの概念実証を目的としていますか?)
  • Will the install use an external certificate if this is not a proof-of-concept deployments? (これが概念実証用のデプロイメントではない場合、インストールでは外部証明書を使用しますか?)
  • Will the use exisiting resources? That is, "will you bring your own database" (BYOD)? (既存のリソースを使用しますか? つまり、自分のデータベースを使用しますか (BYOD)?)
  • What is the domain name for the installation? (インストールのドメイン名は?)
  • What is the shared storage capacity of the database in gigabytes? (データベースの共有ストレージ容量は (GB 単位)?)
  • What is the preferred identify provider method? (どのような識別情報プロバイダー方式を好みますか?)
  • Do you want to connect with your Active Directory (AD)? (Active Directory (AD) に接続しますか?)
  • Do you want to connect with your SMTP mail relay? (SMTP メール・リレーに接続しますか?)