すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:webshellを使用してApsaraDB RDS for SQL Serverインスタンスが存在するホストにログインし、ホストでSSRSを使用する

最終更新日:May 06, 2024

このトピックでは、ApsaraDB RDS for SQL Serverインスタンスのホストアカウントを使用してRDSインスタンスが存在するホストにログインし、SQL Server Reporting Services (SSRS) を使用してRDSインスタンスを管理する方法について説明します。

背景情報

ApsaraDB RDS for SQL Serverはwebshellログインをサポートしています。これにより、webshell URLを使用してRDSインスタンスのオペレーティングシステムにログインし、オペレーティングシステムでコマンドの実行やファイルのアップロードやダウンロードなどの操作を実行できます。 Webシェルは、特にSSHクライアントを使用できないシナリオで、RDSインスタンスをリモートで管理および保守するための便利で効率的なアプローチです。

SSRSは、Microsoftが提供するエンタープライズレベルのレポートサービスです。 SSRSは、SQL Serverデータベースやその他のデータソースに対してさまざまな種類のレポートを生成できます。 レポートの種類には、表形式レポート、チャートレポート、クロスタブレポート、多次元データレポートが含まれます。 SSRSは、RDSインスタンスに接続し、RDSインスタンスをデータソースとして使用して、さまざまな種類のレポートを生成できます。 これにより、企業や個人ユーザーはデータをより効率的に管理および分析し、さまざまな種類のレポートを生成してビジネスの意思決定と管理をサポートできます。

シナリオ

たとえば、中小企業のデータベース管理者であり、その企業のSQL Serverデータベースを管理しているとします。 ワークロードが増加するにつれて、データベースアクセス要求も増加します。 データベースをより適切に管理および最適化するには、SSRSを使用してデータベースを分析および監視する必要があります。 ただし、エンタープライズのサーバーは別のリージョンにデプロイされているため、サーバーに直接ログインして操作を実行することはできません。

この場合、ApsaraDB RDSコンソールでホストアカウントを作成し、そのホストアカウントを使用してWebシェルにログインし、RDSインスタンスが存在するホストにログインできます。 ホストにログインした後、SSRSを使用してSQL Serverデータベースを管理し、データベースを監視できます。

前提条件

  • RDSインスタンスは次の要件を満たしています。

    • RDSインスタンスは、中国 (張家口) 以外のリージョンに存在します。

    • RDSインスタンスは、RDS Basic Edition、RDS High-availability Edition、またはRDS Cluster Editionを実行します。 RDSインスタンスがRDS High-availability Editionを実行している場合は、インスタンスがSQL Server 2012以降を実行していることを確認してください。

    • RDSインスタンスは、汎用または専用インスタンスファミリーに属しています。 共有インスタンスファミリーはサポートされていません。

    • RDSは、サブスクリプションまたは従量課金方法を使用します。 サーバーレスインスタンスはサポートされていません。

    • RDSインスタンスは仮想プライベートクラウド (VPC) にあります。 RDSインスタンスのネットワークタイプを変更する方法の詳細については、「ネットワークタイプの変更」をご参照ください。

    • RDSインスタンスの作成時間は、次の要件を満たしています。

      • RDSインスタンスがRDS High-availability EditionまたはRDS Cluster Editionを実行している場合、インスタンスは2021年1月1日以降に作成されます。

      • RDSインスタンスがRDS Basic Editionを実行する場合、インスタンスは2022年9月2日以降に作成されます。

      説明

      ApsaraDB RDSコンソールの 基本情報 ページの 実行ステータス セクションで、RDSインスタンスの [作成時刻] パラメーターを表示できます。

  • Alibaba Cloudアカウントを使用してRDSインスタンスにログインします。

  • システム管理者アカウントを作成する権限が付与されます。 詳細は、「前提条件 (Prerequisites)」をご参照ください。

  • ユーザーアカウント タブにシステム管理者アカウントが作成されます。 詳細については、「システム管理者アカウントの作成」をご参照ください。

  • アカウントタイプが システム管理者アカウント のホストアカウントは、ホストアカウント タブに作成されます。 詳細については、「ログオン用のホストアカウントの作成と使用」をご参照ください。

    警告

    システム管理者アカウントには、ApsaraDB RDS for SQL Serverの管理範囲を超える権限があります。 RDSインスタンスのシステム管理者アカウントを作成する場合、Alibaba Cloudで指定されているサービスの可用性 サービスレベル契約 (SLA) は、RDSインスタンスに対して保証されなくなりました。

手順1: webshellを使用してログインするRDSインスタンスのホストに

  1. [インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
  2. 左側のナビゲーションウィンドウで、アカウント管理 をクリックします。

  3. 表示されるページで、ホストアカウント タブをクリックします。 必要なホストアカウントを見つけて、操作 列の リモート接続 (プライマリ) をクリックします。

  4. リモート接続 ダイアログボックスで、ホストアカウントのパスワードを入力します。

    image..png

  5. 変更後、OK をクリックします。

    システムはwebshell URLを生成し、そのURLを使用してRDSインスタンスが存在するホストに自動的に接続します。 ポップアップウィンドウにWebシェルページが表示されます。 ページはブラウザによってブロックされる可能性があります。 ページがブロックされている場合は、ページを表示できるようにブラウザを設定できます。 以下の図は一例です。

    image..png

手順2: ホストでのSSRSの設定と使用

前提条件

RDSインスタンスが存在するホストのSSRSを構成する前に、SQL Server Reporting Services (MSSQLSERVER) が有効かつ実行中であることを確認してください。 SSRSのステータスを表示または変更する方法の詳細については、「SSRSのステータスの表示または変更」をご参照ください。

image..png

使用上の注意

RDSインスタンスがRDS High-availability EditionまたはRDS Cluster Editionを実行している場合、RDSインスタンスはミラーリング状態またはAlways On可用性グループ状態です。 これにより、SSRS設定にエラーが発生する可能性があります。 エラーが発生した場合は、システム管理者アカウントを使用してRDSインスタンスにログインし、必要なステートメントを実行してエラーを解決する必要があります。 詳細については、「システム管理者アカウントの作成」をご参照ください。

説明

RDSインスタンスは、イメージまたは可用性グループを定期的に作成します。 SSRSを設定すると、複数の設定エラーが発生する可能性があります。 エラーを解決するには、エラーが発生するたびにシステム管理者アカウントを使用してRDSインスタンスにログインし、次のステートメントを実行する必要があります。

-次のステートメントを実行して、RDS High-availability Editionを実行するRDSインスタンスのデータベースのイメージを無効にします。ALTER DATABASE [ReportServer] パートナーをオフに設定します。ALTER DATABASE [ReportServerTempDB] パートナーをオフに設定します。-- 次のステートメントを実行して、rds Cluster Editionを実行するRDSインスタンスのag-RDS可用性グループからデータベースを削除します。ALTER AVAILABILITY GROUP [ag-rds] データベースの削除 [ReportServer];
ALTER AVAILABILITY GROUP [ag-rds] 削除データベース [ReportServerTempDB]; 

これらのステートメントにより、SSRSを適切に設定して実行できます。 RDSインスタンスがRDS Cluster Editionを実行している場合は、システム管理者アカウントを使用してRDSインスタンスにログインし、SSRSの設定後に次のステートメントを実行してデータベースを可用性グループに追加する必要があります。 これにより、高可用性と適切なデータベースのバックアップと復元が保証されます。 詳細については、「システム管理者アカウントの作成」をご参照ください。

ALTER AVAILABILITY GROUP [AG-RDS] データベースの追加 [ReportServer]
ALTER AVAILABILITY GROUP [AG-RDS] データベースの追加 [ReportServerTempDB] 

手順

  1. システム管理者アカウントを使用してRDSインスタンスにログインし、次のステートメントを実行します。

    DISABLE TRIGGER [_$$_ tr _$_ rds_alter_database] ON ALL SERVER;
    説明

    RDSインスタンスへの接続方法の詳細については、「ApsaraDB RDS For SQL Serverインスタンスへの接続」をご参照ください。

  2. image..pngアイコンをクリックし、Reporting Services構成マネージャーを選択します。

    image..png

  3. 表示されるダイアログボックスで、レポートサーバーの名前を確認し、[接続] をクリックします。

    image..png

    説明

    RDSインスタンスがRDS High-availability EditionまたはRDS Cluster Editionを実行している場合、RDSインスタンスがミラーリング状態またはAlways On可用性グループ状態であるため、RDSインスタンスをレポートサーバーに接続できない場合があります。 接続に失敗した場合は、[使用状況] に基づいて問題を解決できます。

  4. 左側のナビゲーションウィンドウで、[サービスアカウント][WebサービスURL] をクリックし、ビジネス要件に基づいてパラメーターを設定します。

    image..png

    説明

    詳細については、「公式ドキュメント」をご参照ください。

  5. 左側のナビゲーションウィンドウで、[データベース] をクリックします。 ページの右側で、[データベースの変更] をクリックして、ホスト上にレポートサーバーデータベースを作成します。

    1. [新規レポートサーバーデータベースの作成] を選択し、[次へ] をクリックします。

    2. サーバー名を確認し、次のパラメーターを設定して、[次へ] をクリックします。

      image..png

      パラメーター

      説明

      サーバー名

      サーバーの名前。 名前は変更できません。

      認証タイプ

      認証タイプ。 [SQL Serverアカウント] を選択します。

      ユーザー名

      ユーザーアカウント タブでRDSインスタンス用に作成されたシステム管理者アカウントのユーザー名。

      Password

      ユーザーアカウント タブでRDSインスタンス用に作成されたシステム管理者アカウントのパスワード。

    3. レポートサーバーデータベースの名前を入力し、スクリプトの言語を選択します。 [次へ] をクリックします。

      image..png

    4. レポートサーバーに接続するアカウントの資格情報を指定し、[次へ] をクリックします。

    5. [概要] ページの情報を確認し、[次へ] をクリックします。 レポートサーバーデータベースが作成されるまで待ちます。 次に、[完了] をクリックします。

      image..png

  6. システム管理者アカウントを使用してRDSインスタンスにログインし、次のステートメントを実行します。

    USE [マスター]
    GO
    -データベースの復旧モデルをFULLに変更します。 NO_WAITパラメーターを使用して、変更をすぐに有効にします。
    ALTER DATABASE [ReportServer] NO_WAITで完全に回復を設定
    GO
    ALTER DATABASE [ReportServerTempDB] NO_WAITで完全なセット回復
    GO
    -サーバー上のすべてのデータベースで特定のトリガーを有効にします。
    イネーブルトリガー [_$$_ tr _$$_ rds_alter_database] ON ALL SERVER; 
  7. データソースの作成などのその後の操作は、ビジネス要件によって異なります。 詳細については、「ECSインスタンスへのSSRSのインストールと使用」の手順6〜手順8、または公式ドキュメントをご参照ください。

SSRSのステータスの表示または変更

  1. RDSインスタンスが存在するホストにログインします。 検索ボックスにservices.mscと入力して [サービス] を開きます。

    image..png

  2. [サービス (ローカル)] ウィンドウで、SQL Server Reporting Services (MSSQLSERVER) のステータスを表示します。

    image..png

    説明

    SSRSは、次のスタートアップタイプをサポートします。

    • 手動: システムの起動時にサービスは自動的に起動しないため、手動で起動する必要があります。

    • 自動: システムの起動時にサービスが自動的に起動します。

    • 自動 (遅延開始): サービスは、システムの起動から一定期間後に自動的に開始されます。

    • 無効: サービスは無効であり、開始できません。

  3. オプションです。 SSRSのステータスを変更し、サービスを開始します。

    1. サービスをダブルクリックします。 表示されるダイアログボックスで、[スタートアップタイプ] パラメーターの値を変更します。

      image..png

    2. サービスを右クリックします。 表示されるダイアログボックスで、[開始] をクリックします。

      image..png

    3. SSRSの新しいステータスを表示します。

      image..png

FAQ

RDSインスタンスのホスト名と、RDSインスタンスのホストに接続するためのwebshell URLを取得する操作を呼び出すことはできますか。

はい。DescribeDBInstanceIpHostname操作を呼び出してRDSインスタンスのホスト名を取得し、DescribeHostWebShell操作を呼び出してWebシェルURLを取得してRDSインスタンスのホストに接続できます。 ホスト名はIpHostnameInfosパラメーターで指定し、webshell URLはLoginUrlパラメーターで指定します。

説明
  • webshell URLは2分間有効です。 できるだけ早い機会にURLを使用する必要があります。 URLが無効な場合、RDSインスタンスのホストに接続できません。

  • この場合、必要な操作を呼び出して、最新のURLを取得できます。