検索クエリーを入力してください
<book_title> を検索 ...
製品マニュアル
Last Published:
2019-11-18
Product(s):
Resiliency Platform & CloudMobility (3.4)
- 第 I 部 概要と計画
- Resiliency Platform の概要
- Resiliency Platform の主な機能とコンポーネントについて
- Resiliency Platform 配備でのレプリケーション
- Veritas Resiliency Platform Data Mover について
- Resiliency Platform を使用したリカバリオプション
- 配備のチェックリスト
- システムの必要条件
- ライセンスの管理
- Web コンソールの使用
- Resiliency Platform の概要
- 第 II 部 仮想アプライアンスの配備と構成
- 配備と構成
- AWS Marketplace 経由での AWS への仮想アプライアンスの配備
- OVA ファイルを使用した AWS での仮想アプライアンスの配備
- AWS でのデータゲートウェイの配備
- PowerShell スクリプトを使用して Azure に仮想アプライアンスを配備する
- Azure Marketplace 経由での Azure への仮想アプライアンスの配備
- vCloud での仮想アプライアンスの配備
- HUAWEI CLOUD での仮想アプライアンスの配備
- Orange Recovery Engine での仮想アプライアンスの配備
- Resiliency Platform コンポーネントの構成について
- 仮想アプライアンスのセキュリティ機能
- Hotfix について
- 更新を適用
- Resiliency Platform への更新の適用について
- YUM サーバーの設定
- 配備と構成
- 第 III 部 Resiliency Domain の設定と管理
- Resiliency Domain の管理
- 新しい Resiliency Platform 構成の開始
- Resiliency Manager の管理
- Infrastructure Management Server の管理
- オンプレミスデータセンターの管理
- クラウド構成の管理
- プライベートクラウド構成の管理
- NetBackup との統合
- InfoScale Operations Manager との統合
- Resiliency Domain の管理
- 第 IV 部 資産インフラの追加
- Resiliency Platform ホスト資産の管理
- VMware 資産の管理
- Veritas Replication VIB の管理
- Hyper-V 資産の管理
- ゲートウェイの管理
- Replication Gateway ペアについて
- データゲートウェイの管理
- エンクロージャ資産の管理
- 第 V 部 ネットワークの管理
- ネットワークの管理
- ネットワークオブジェクトについて
- 設定の管理
- ネットワークの管理
- 第 VI 部 Resiliency Group の操作
- 資産の分類
- Virtual Business Service の管理
- アプリケーションの編成
- カスタムアプリケーションの管理
- Service Objective の管理
- 第 VII 部 ディザスタリカバリの構成
- Resiliency Platform Data Mover を使用した構成
- Amazon Web Services でのリモート回復 (DR) 用仮想マシンの管理
- Azure へのリモート回復 (DR) 用の仮想マシンの管理
- OpenStack へのリモート回復 (DR) 用の仮想マシンの管理
- HUAWEI CLOUD へのリモート回復 (DR) 用の仮想マシンの管理
- Orange Recovery Engine へのリモート回復 (DR) 用の仮想マシンの管理
- vCloud Director でのリモート回復 (DR) 用仮想マシンの管理
- Resiliency Platform Data Mover を使用したリモート回復 (DR) 用の仮想マシンの管理
- Resiliency Platform Data Mover を使用したリモート回復 (DR) 用の物理マシンの管理
- NetBackup を使用した構成
- サードパーティレプリケーション技術を使用した構成
- アレイベースのレプリケーションを使用する場合の VMware 仮想マシンの準備
- アレイベースレプリケーションを使用するための Hyper-V 仮想マシンの準備
- サードパーティのレプリケーション技術を使用したリモート回復 (DR) 用の仮想マシンの管理
- リモート回復 (DR) 用アプリケーションの管理
- アレイベースのレプリケーションを使用する場合の VMware 仮想マシンの準備
- Resiliency Platform Data Mover を使用した構成
- 第 VIII 部 ディザスタリカバリの管理
- 仮想マシンの DR 操作の実行
- 仮想マシンのリハーサル操作の実行
- VBS での DR 操作の実行
- アプリケーションの DR 操作の実行
- 資産の退避
- Resiliency Plan の管理
- カスタムスクリプトについて
- 仮想マシンの DR 操作の実行
- 第 IX 部 製品設定
- 第 X 部 Resiliency Platform API の使用
- 第 XI 部 トラブルシューティングとコマンドラインインターフェースの使用
- トラブルシューティング
- 災害が発生した場合の Resiliency Platform コンポーネントのリカバリ
- 管理者待機状態の解決
- klish メニューの使用
- Application Enablement SDK の使用
- トラブルシューティング
サンプルスクリプト
次のアプリケーションモジュールスクリプトを作成するために使用可能なテンプレートのスクリプトを検索します。サンプルスクリプトでは、スクリプトを作成するために修正できるハードコードのデータも提供されます。
サンプルスクリプト
use strict; use warnings; use VRTS::AppSDK::AppEnablementSDK::Application; use VRTS::AppSDK::AppEnablementSDK::Constants qw(:LOG_LEVELS : APP_INST_ATTRS :APP_UNIT_ATTRS :APP_FILE_ATTRS : APP_CUSTOM_ATTRS :APP_INPUT_KEYS); # Define an application here my $appObj = new VRTS::AppSDK::AppEnablementSDK::Application("SampleApp"); if(defined $appObj) { # Set and register various operations that this application script # supports. $appObj->set_discovery_types("DEEP, PROBE"); $appObj->set_operation_types("START, STOP"); $appObj->register_operation_callback("START",\&start); $appObj->register_operation_callback("STOP",\&stop); $appObj->register_discovery_callback("PROBE",\&probe); $appObj->register_discovery_callback("DEEP",\&deep); print ($appObj->commit()); } ################################# #Function: start # #Starts an application instance # #Parameters: #arg - hash containing the application instance name # #Returns: # 0 if successful else 1 # you can also return success or failure message which is optional. ################################# sub start { my ($arg) = @_; my $FuncName = ( caller 0 )[3]; $appObj->log(LOGLEVEL_DEBUG,"Inside $FuncName"); my $inst_name = $arg->{INSTANCE_NAME}; $appObj->log(LOGLEVEL_DEBUG,"Application instance name: [$inst_name]"); #Write the code here to start an application instance #and return an appropriate status code and message. #Return 0 for success and 1 for failure. return 0, "Start is successful"; } ################################# #Function: stop # #Stops an application instance # #Parameters: #arg - hash containing the application instance name # #Returns: # 0 if successful else 1 # you can also return success or failure message which is optional. ################################# sub stop { my ($arg) = @_; my $FuncName = ( caller 0 )[3]; $appObj->log(LOGLEVEL_DEBUG,"Inside $FuncName"); my $inst_name = $arg->{INSTANCE_NAME}; $appObj->log(LOGLEVEL_DEBUG,"Application instance name: [$inst_name]"); #Write the code here to stop an application instance #and return an appropriate status code and message. #Return 0 for success and 1 for failure. return 0, "Stop is successful"; } ################################# #Function: probe # #Discovers and reports the application instance state # #Parameters: #arg - hash containing the application instance name # #Returns: # 0 if successful else 1 # you can also return success or failure message which is optional. ################################# sub probe { my ($arg) = @_; my $FuncName = ( caller 0 )[3]; $appObj->log(LOGLEVEL_DEBUG,"Inside $FuncName"); #Write the code here to discover and report the application instance name. #Report the state of the discovered application instance # on the Resiliency Platform. my $inst_name = $appObj->add_application_inst("app_inst"); if (defined $inst) { # The state must be reported either 'online' or 'offline' $inst_name->set_property(APP_INST_STATE,"Online"); } #return 0 if successful else 1 return 0, "Probe is successful"; } ################################# #Function: deep # #Discovers and reports the sub-components and data file information of #an application instance. # #Parameters: #arg - hash containing the application instance name # #Returns: # 0 if successful else 1 # you can also return success or failure message which is optional. ################################# sub deep { my ($arg) = @_; my $FuncName = ( caller 0 )[3]; $appObj->log(LOGLEVEL_DEBUG,"Inside $FuncName"); #Write the code here to discover and report the sub-components # and the data file information of an application instance. my $inst_name = $appObj->add_application_inst("app_inst"); if (defined $inst) { # Set application instance properties # Ensure that the following property is set, else the application # state is not displayed on the Resiliency Platform web console. # You cannot perform operations if the state is not displayed # on the console. # Accepted values are 'online' and 'offline' $inst_name->set_property(APP_INST_STATE,"Online"); # Following properties are optional $inst->set_property(APP_INST_VERSION,"1.0"); $inst->set_property(APP_INST_OWNER,"Administrator"); $inst->set_property(APP_INST_ISPARALLEL,"false"); $inst->set_property(APP_INST_HOMEDIR,"inst_homedir"); $inst->set_property(APP_INST_APP_TYPE,"emp_database"); $inst->set_property(APP_INST_APP_CATEGORY,"database"); $inst->set_property(APP_INST_TOTAL_SIZE,"100"); $inst->set_property(APP_INST_USED_SIZE,"90"); # Set application instance custom properties # Setting custom properties is optional. $inst->set_custom_property("app_disp_name", "sample_instance"); ################################# # If your application is clustered using any high availability # technology, then you need to set the following custom properties. # $inst->set_custom_property("ClusterType", "MSCS"); # $inst->set_custom_property("ServiceGroupName", "sample_sg"); # $inst->set_custom_property("IsClustered", "true"); #------------------------------- # Check if your application module script requires additional # information such as user name and password from the user # who is accessing the Resiliency Platform web console. # If information is required, then check if the information # is already asked and do we have its responses available here # using the following API. Use those responses to complete # your task. # Use following API with QID as input my $response1 = $inst->get_qresponse('1'); my $response2 = $inst->get_qresponse('2'); #------------------------------- # If response is not available then ask for information # again using the following API: # Define questions to be asked in a hash my $qid1 = { 'QID' => '1', 'QText' => 'Administrator user name', 'Mandatory' => 'yes', 'QDescription' => 'Specify the administrator user name to discover its data files.', 'Encrypted' => 'no'}; my $qid2 = { 'QID' => '2', 'QText' => 'Administrator password', 'Mandatory' => 'yes', 'QDescription' => 'Specify the administrator user password to discover its data files.', 'Encrypted' => 'yes'}; # Add the hash using the following API: $inst->add_question($qid1); $inst->add_question($qid2); #------------------------------- # Write the code here to discover an application unit (application # sub-components) and application files information. # Note: Discovering application unit is not mandatory # but discovering application files is mandatory. # Add application sub-component here my $unit = $inst->add_application_unit("app_unit"); # Add properties for application unit # Following properties are optional: $unit->set_property(APP_UNIT_OWNER, "unit_owner"); $unit->set_property(APP_UNIT_VERSION, "1.0"); $unit->set_property(APP_UNIT_STATE, "online"); $unit->set_property(APP_UNIT_ISPARALLEL, "false"); $unit->set_property(APP_UNIT_HOMEDIR, "unit_homedir"); $unit->set_property(APP_UNIT_TYPE, "database"); $unit->set_property(APP_UNIT_TOTAL_SIZE, "100"); $unit->set_property(APP_UNIT_USED_SIZE, "50"); # Setting custom properties is optional. $unit->set_custom_property("unit_disp_name", "sample_unit"); #------------------------------- # Write the code here to discover information of application data files. my $file = $inst->add_application_file("app_file"); # Following property is important and mandatory if you want to # configure your application for disaster recovery. # Value of this property could be data, log, etc. but the # Resiliency Platform considers only those DR configuration files # which are marked as 'data'. $file->set_property(APP_FILE_TYPE, "data"); # Following property is important and mandatory if you want to # configure your application for disaster recovery. # Value of the property must be full file path # e.g. '/root/app_inst/app_file.data' or # 'c:\\app_inst\\app_file.data' $file->set_property(APP_FILE_PATH, "c:\\app_inst\\app_file.data"); # Following properties are optional: $file->set_property(APP_FILE_NAME, "app_file.data"); $file->set_property(APP_FILE_VERSION, "1.0"); $file->set_property(APP_FILE_OWNER, "administrator"); $file->set_property(APP_FILE_STATE, "online"); $file->set_property(APP_FILE_SIZE, "10"); $file->set_property(APP_FILE_PERMISSION, "all"); # Setting custom properties is optional. $file->set_custom_property("file_desc", "Database file"); } #return 0 if successful else 1 return 0, "deep discovery is successful"; }
詳細情報