OutSystemsのクラウドサービス
以下の情報はOutSystems 11に適用されます。
OutSystems Cloudでは、プラットフォームテクノロジーの管理面について心配することなく、OutSystemsを使用してモバイルおよびWebアプリケーションの開発、テスト、デプロイ、実行が可能です。ユーザーが構築、デプロイしたアプリケーションは、OutSystems Cloudインフラで直接運用されます。
OutSystems Cloudは、様々なユーザーにメリットをもたらします。
-
開発者は、開発環境からOutSystems Cloudにログインし、OutSystemsアプリケーションのパブリッシュとテストを行えます。
-
SysOpsは、OutSystems Web管理コンソールにログインし、アプリケーションを構成して環境間を移行させることができます。
-
エンドユーザーは、本番環境にデプロイされたOutSystemsアプリケーションにアクセスすることができます。
-
他のシステムは、OutSystemsアプリケーションがパブリッシュしたAPIを利用することができます。
テクノロジースタックの管理
OutSystemsチームは、テクノロジースタック(データベース、OS、アプリケーションサーバー、ネットワーク)の管理にあたり、高度に自動化された運用プロシージャとインフラ構成基準を使用します。これらは、OutSystems Cloudの特長である本番環境での月間 99.5%以上の可用性 や優れたサポート、アップグレードサービスなどを提供するうえで欠かせないものです。
OutSystems Cloudのユーザーは、テクノロジースタックの管理をOutSystemsチームに委託することになります。保守や構成、またはアクセスを行うことはできません。
OutSystems Cloudでは標準化されたアプローチを採用しているため、テクノロジースタックのカスタム構成をリクエストすることはできません。
この記事では、OutSystems Cloudに含まれるサービスのポートフォリオについて説明します。
ユーザーの担当する作業
OutSystems Cloudは、本来であればユーザーが行う必要のある管理タスクの大半を排除する非常に便利なサービスです。ただし、以下を含む一部のタスクについてはユーザーの責任で行う必要があります。
-
アプリケーションの開発、パフォーマンスの監視、パフォーマンスおよび拡張性要件を満たすためのアプリケーションの調整(適宜)
-
OutSystemsのバージョンアップグレード時の、互換性を破る変更に対応するためのOutSystemsアプリケーションの修正とテスト
-
OutSystemsのバージョンサポートポリシーに準拠した、OutSystemsバージョンアップグレードの計画
-
アプリケーションワークロードの増加の見積もりと、関連するハードウェアの処理能力の計画
-
ペネトレーションテスト(必要な場合)を含む、アプリケーションレベルのセキュリティ保証
-
自社ドメインのDNSレコードの管理とOutSystems Cloudサーバーへの提示
-
OutSystems Support Portal経由でOutSystemsにインフラ変更をリクエストできるユーザーの明示的な認可
OutSystems Cloudに含まれるサービス
このセクションでは、OutSystems Cloud Enterprise Editionに含まれるサービスについて説明します。
- プロビジョニング
- 拡張性
- データ保護
- 監視と高可用性
- プロアクティブな保守
- OutSystemsのソフトウェアアップデート
- OutSystems環境の管理
- 接続
- Database as a Service(直接データベースアクセス)
- セキュリティ管理
各サービスの提供方法は、以下の凡例を使用して示しています。
このサービスはセルフサービスモードで提供されます。ユーザーがOutSystems LifeTimeでサービスを直接アクティベートします。
このサービスの提供には、OutSystems Supportの直接的なサポートが必要です。
サービスの依頼から、OutSystemsがサービスを提供するまでの時間です。
このサービスの提供にはダウンタイムを伴います。ダウンタイム時間については、OutSystemsとユーザーで調整を行います。
SA
(標準可用性)およびHA
(高可用性)環境でのダウンタイム時間を表示しています。
このサービスの提供は、ユーザーの営業時間外にスケジュール設定することができます。
OutSystems Supportの直接的なサポートを必要とするサービスにのみ適用されます。
プロビジョニング
ユーザーがOutSystems Cloudを契約すると、OutSystemsはユーザーが選択した数やタイプの環境を備えたOutSystemsインフラをクラウド内でプロビジョニング、インストール、構成します。
また、各ユーザーに、仮想サーバー、ストレージ、ネットワーク、OS、データベース、OutSystemsソフトウェアからなる 専用のインフラ を割り当てます。
OutSystemsインフラは、ユーザーが選択したスタックでデプロイされます。可能な組み合わせは以下のとおりです。
OS | データベース |
Windows Server 2016 Standard Edition |
MS SQL Server 2016 Standard Edition |
Oracle 12 Standard Edition |
OutSystemsインフラは、以下の選択肢のうちユーザーが選択したリージョンにデプロイされます。
-
アジア太平洋: シドニー、シンガポール、東京、香港、ムンバイ、バーレーン、ソウル、ジャカルタ
-
欧州/中東/アフリカ: アイルランド、フランクフルト、ロンドン、ケープタウン
-
北米/南米: 米国(バージニア北部、オハイオ、オレゴン)、カナダ、サンパウロ
オプションで、本番データベース内の保存データの暗号化を明示的に依頼できます。保存データの暗号化をアクティベートすると、データベースのバックアップも暗号化されます。
ユーザーがOutSystems Sentryのサブスクリプションをアップグレードすると、OutSystemsは必要となるインフラアップグレードを行います。
作業の流れ
2営業日
発注を受けた後、OutSystemsがインフラをプロビジョニングします。完了した時点で、クラウドアクセスポイントと資格情報をユーザーに伝えます。 OutSystemsは、必要に応じて後でこれらの資格情報をリセットできます。
すぐに利用を開始できるよう、OutSystemsが各環境に*.outsystemsenterprise.comドメインのDNS名を割り当て、適合する有効なSSL証明書を構成します。SSL証明書により、クラウド内のOutSystems Webサーバーを認証し、インターネット上のエンドユーザーのブラウザとのセキュアな通信を行うことが可能になります。
独自のSSL証明書を持つユーザーは、それらをアップロードしてホスト名を変更する必要があります。
OutSystemsは、ユーザーごとにVPC(バーチャルプライベートクラウド)を用意し、環境ごとにElastic Load Balancerを1つ作成します。
Elastic Load BalancerによりSSL証明書を運用し、フロントエンドサーバーにインバウンドのインターネットトラフィックをルーティングします。インバウンドのインターネットトラフィックは、ポート80および443で許可されています。その他のポートについては、RDPやデータベース接続などのトラブルシューティング作業をサポートするために、OutSystems Supportチームのみがアクセスできます。
ユーザーは、初回発注時に本番データベースの保存データの暗号化を依頼できます。また、既存の本番データベースの暗号化についても後日依頼できます。本ドキュメントの「 セキュリティ管理」セクションをご覧ください。
OutSystems Supportは、Sentryへのアップグレードの発注書を受信した後、ユーザーと連絡を取り、ダウンタイムを必要とする、またはシステムパフォーマンスに影響を及ぼす可能性のある様々な介入作業のスケジュールを設定します。合意したスケジュールに従って、OutSystemsは高可用性に対応する冗長サーバーをデプロイし、サーバーの拡張、リソースの暗号化、Sentry固有のコンポーネントやセキュリティソフトウェアのインストール、拡張セキュリティ監視のアクティベートを行います。
拡張性
想定されるアプリケーションのニーズに応じて、ユーザー専用のOutSystems Cloudインフラに以下のリソースを追加することができます。
-
スケールアウト - 追加サーバー
-
スケールアップ - 既存サーバーの拡張
-
ストレージの追加
スケールアウトとスケールアップ
最大5営業日
(詳細は本文に記載)
OutSystemsが、ユーザーの環境にフロントエンドサーバーを追加してスケールアウトしたり、既存のデータベースやフロントエンドサーバーを拡張してスケールアップしたりします。
いずれの場合も、リクエストに理由を記載のうえOutSystems Supportにお送りください。サポートチームが、リクエストの優先順位と各SLAに応じて対応します。
スケールアウトのリクエストの場合、新しいフロントエンドサーバーが作成され、ロードバランサに自動的に追加されます。プロビジョニングが終了するとすぐに使用可能になります。
フロントエンドサーバーやデータベースのスケールアップのリクエストの場合、OutSystemsがユーザーの確認をとった後、アップグレードのスケジュールを提案します。
フロントエンドが1台のみの環境では、フロントエンド拡張操作により約30分間のダウンタイムが発生します。
フロントエンドが複数台ある本番環境では、フロントエンド拡張時に処理能力の低下が起こりますが、ダウンタイムは発生しません。フロントエンドはすべて同じサーバークラスにまで拡張されます。
ストレージの追加
ユーザーのサブスクリプションに基づき、OutSystemsが必要に応じてデータベースストレージを追加します。
データ保護
OutSystems Cloudでは、本番環境データベースの自動バックアップを毎日実行し、 15日間保管します。OutSystems Cloudデータベースは、既存のバックアップ(自動またはアドホック)から復元するか、過去15日間の特定の時点に復元することができます。
直接データベースアクセス経由でアクセスできる別の一時データベースにバックアップを復元することもできます。そのため、開発者は上書きされたデータを選択的に取得するとともに、データベース全体の復元による影響を回避できます。
さらに、フロントエンドのストレージ用に一時ファイルを作成することも可能です。
作業の流れ
本番データベースのバックアップは、ダウンタイムなしで毎日自動的に実行されます。バックアップは、OutSystems環境の同じAWSリージョン内の複数のデータセンターに保存されます。パフォーマンスへの影響を最小限にとどめるため、バックアップは定期アクティビティに影響しないように、環境が所属するAWSリージョンのタイムゾーンで定義済みの保守期間の3時間前に実行されます。
24時間以内
(データ量による)
過去15日間の任意の時点へのデータベース復元をリクエストできます。OutSystemsがデータベースを以前の時点に復元します。復元操作が完了すると、OutSystems環境を新たなデータベースにリダイレクトし、ユーザーに操作が無事完了したことを伝えます。
OutSystemsでは15日間、以前のデータベースを利用できるため、ユーザーによる直接データベースアクセスが可能です。
復元操作には数時間かかる場合があります。完了すると約15分間のダウンタイムが発生します。予期しないエラーのために復元を行う場合、現行のデータベースを即時にオフラインにするよう依頼することもできます。この場合、ダウンタイムは復元作業中続きます。このダウンタイム中は、以前のデータベースも復元後のデータベースも利用できません。復元開始後に現行のデータベースに書き込まれたデータは、すべて直接データベースアクセス経由でのみ利用できます。
例外的に、OutSystemsのメジャーバージョンのアップグレード後は、アップグレードより前の時点のバックアップを復元することはできなくなります。
万が一データ破損の可能性を調査する必要が発生した場合は、リクエストの理由を示し、別の一時データベースへのバックアップの復元をリクエストできます。別の一時データベースに復元するオプションは、通常業務や管理プロセスのためではなく、正当な例外的用途のために設計されています。そのため、OutSystemsはリクエストを評価したうえで承認または拒否します。
リクエストが承認された場合、OutSystemsは復元をトリガーし、復元が完了したら、この新しい一時データベースへのアクセス資格情報を提供します。一時データベースは、1週間後に自動的に削除されます。
フロントエンドストレージに一時ファイルを作成する必要が生じることがあります。たとえば、ユーザーがダウンロードできるように一時的にPDFファイルを作る必要がある場合などです。 Filesystemエクステンションを使用すると、これを行うことができます。アプリは一時ファイルを特定のフォルダ (D:\User\) に書き込むことができます。一時フォルダの容量は2GBです。
フロントエンドストレージの一時ファイルは、OutSystemsで定期的に削除されます。
監視と高可用性
OutSystems Cloudインフラでは、サンプルのOutSystems Webページからのレスポンスタイムといった重大なヘルスインジケータが常時監視されます。OutSystems Cloudには、自動自己修復機能およびOutSystemsのテクニカルサポートチームへの警告機能があります。
ユーザーは自社アプリケーションのパフォーマンス、監査ログ、データベース容量をOutSystemsセルフサービス管理コンソールアプリケーション(LifeTimeおよびService Center)で直接監視できます。
OutSystems Cloudの一部として、以下の高可用性オプションもご利用いただけます。
-
フロントエンドサーバーの高可用性
-
データベースサーバーの高可用性
-
自動負荷分散を行う、地理的に分散したデータセンター(ユーザーが選択したリージョン内)
災害が発生した場合、OutSystems Cloudは、保存されているバックアップからユーザーのインフラすべてを復元するように設計されています。
作業の流れ
OutSystemsでは、必須のヘルスインジケータを常時監視します。内部サービスチケットは、以下の場合に自動的に作成されます。
- Service CenterおよびECTのアプリケーションに対するHTTP/S pingリクエストの複数回の連続エラー
- フロントエンドのCPU使用率が継続的に高い状況
- OutSystemsのサービスの障害
- フロントエンドまたはデータベースのディスク空き領域がほぼない状態
これらの指標はすべての環境(本番および非本番)において監視されます。
ユーザーが高可用性をサブスクライブすると、データベースレプリケーションが本番環境で自動的にアクティベートされます。
データベースレプリケーションオプションがアクティブになると、データベースに障害が発生した場合、システムが自動で別のデータセンターにある「スタンバイ」レプリカにフェイルオーバーし、迅速にサービスを再開します。データベースレプリケーションオプションにより、データベースへのパッチ適用の際のダウンタイムを減らすこともできます。データベース障害が発生した場合、データベースのフェイルオーバーは通常1~2分で完了します。フェイルオーバーの時間は、コミットされていない大量のトランザクションを復元する必要があるかどうかによっても左右されます。
各データセンターは、他のデータセンターの障害の影響を受けない設計になっています。
プロアクティブな保守
OutSystemsは、定期保守の時間内に定期的にOutSystems Cloudのソフトウェアスタックにアップデートを適用しています。アップデートは、通常データベースとOSに対するパッチの適用と軽微なバージョンアップデートを含みます。
作業の流れ
OutSystems LifeTimeを使用して、希望する保守期間をセルフサービスモードで定義できます。システムダウンタイムを発生させる可能性のある定期保守は、基本的にはこの期間に実行されます。
定期保守作業では、ダウンタイムを最低限にするために追加フロントエンドやデータベースレプリカを利用します。フロントエンドの保守操作は、エンドユーザーでのアプリケーションダウンタイム発生を回避するため、順番に行われます。フロントエンドの保守中は、アプリケーションをパブリッシュすることはできません。保守中、データベースをレプリカにフェイルオーバーすることで、ダウンタイムをわずか数分にすることができます。
例外的に、定期保守期間以外の時点で保守作業が必要になる場合があります。OutSystemsは、保守イベントの2営業日前までにユーザーに通知するようにしています。
OutSystemsのソフトウェアアップデート
OutSystems Cloudでの新しいOutSystemsバージョンやアップデートのインストールはOutSystemsが行います。
作業の流れ
5営業日
HA: 詳細は本文に記載、SA: 4時間
(
詳細
)
OutSystemsのソフトウェアアップデートについては、改定版またはメジャー版のアップデートが利用可能になり次第すべてご利用いただけます。
OutSystems Supportに連絡して、OutSystemsアップデートのインストールをリクエストしてください。OutSystemsアップデートのインストールは、 双方が合意した時間 .に実行されます。フロントエンドが複数台ある環境の場合、順次アップグレードを行うためユーザーのアプリケーションでのダウンタイム発生を回避できます。フロントエンドが1台の環境では、最大2時間のアプリケーションダウンタイムが発生します。
アップグレードサービスの実行中は、アプリケーションをターゲット環境にデプロイできません。
OutSystemsの新しいメジャーバージョンへのアップデートと同時に、テクノロジースタックのソフトウェアコンポーネントのメジャーバージョンもアップデートする場合があります。また、データベースエンジンのアップグレードにはダウンタイムが必要になる場合があります。その場合、OutSystemsアップグレードとは分けてスケジュールを設定できます。
OutSystemsソフトウェアのアップデート後、以下の作業を実行してください。
- アプリケーションの再デプロイ
- 互換性を破る変更への対処
OutSystemsサービスチームまたはOutSystemsのパートナーに連絡することで、OutSystemのバージョンアップデートの際にサービス支援をリクエストすることもできます。
OutSystemsプラットフォームをアップグレードする場合は、プロセス概要をご覧ください。
OutSystems環境の管理
OutSystems Cloudでは、環境を管理するために複数の操作が可能です。
- 環境の追加
- 環境のアクティベート
- 環境名の変更
- 環境の再発注
作業の流れ
追加の環境は、サブスクリプションを開始すると自動的にプロビジョニングされます。
デフォルトでは、新しい環境は同じリージョンに作成されます。
新しいインフラの本番環境は、停止状態でプロビジョニングされます。ボタンをクリックすると、すぐに開始できます。
接続
ユーザーは、OutSystems Cloudと自社オンプレミスシステムの間に仮想プライベートネットワーク接続をリクエストできます。
このセキュアな通信チャネルを使用して、OutSystems Cloudアプリケーションとオンプレミスのデータベース、Webサービス、または認証サービスプロバイダを連携させることができます。
AWSの他のリソースに接続するために、OutSystems Cloud VPCをAWS Transit Gatewayに接続できます。
ネットワークレイテンシを最小限にするために、AWS Direct Connectを使用して専用のネットワーク接続を開設することもできます。
VPNまたはAWS Direct Connectリンクのどちらかをご利用のユーザーのために、OutSystems CloudはDNSサービスを備えています。これにより、OutSystems Cloudとユーザーのオンプレミスシステムとの間で(IPアドレスではなく)DNS名での双方向通信が可能になります。
接続オプションはユーザーのサブスクリプションによって異なります。
作業の流れ
OutSystems CloudへのVPN接続を開設するには、VPNトンネルを開始する機能を有するVPNゲートウェイが必要です。VPNの設定は、OutSystems LifeTimeを使用してセルフサービスで行います。
また、不要になった場合はVPN接続の非アクティベートもリクエストできます。
VPN接続は合計5つまで追加することができます。
Border Gateway Protocol(BGP)を利用すると、VPN接続の構成を簡素化できます。または、ユーザーが最大16個のネットワークアドレス範囲への静的ルーティングを構成することもできます。たとえば、1つのVPNに10個の範囲を構成しているユーザーは、もう1つのVPNには最大6個の範囲のみを構成できます。
もしくは、AWSのAWS Direct Connectサービスを直接登録して、そのネットワーク接続をOutSystems Cloudで使用することもできます。ユーザーのプレミスとAWS間の専用ネットワーク接続であるAWS Direct Connectは、低いレイテンシと一貫したネットワークパフォーマンスを保証します。
ユーザーがAWS Direct Connectリンクを使用できるようになった後、以下の手順が実行されます。
- OutSystemsがAWSのアカウントIDを提供します。
- ユーザーがAWS Direct Connectコンソールでホスト仮想インターフェイスを作成し、OutSystemsから提供されたAWSアカウントIDをオーナーとして設定します。この手順が完了したら、OutSystemsに通知してください。
- OutSystemsがホスト仮想インターフェイスとOutSystemsが管理しているAWS Accountとの関連付けを承認します。
CloudのOutSystemsアプリケーションから(IPアドレスではなく)サーバー名でオンプレミスシステムにアクセスするには、サポートチケットで以下を指定する必要があります。
- 内部DNSサーバーの内部ドメイン名および対応するIPアドレスのセット。
オンプレミスシステムからVPN経由でOutSystems Cloudアプリケーションにアクセスするには、outsystemsenterprise.comドメインの解決をOutSystems Cloud DNSサーバーに委任するように内部DNSサーバーを構成する必要があります。
Database as a Service(直接データベースアクセス)
新しいOutSystemsアプリケーションのバージョンをデプロイするにあたり、OutSystemsの開発者がデータ関連の操作を視覚的にモデリングし、データベースの構造変更をトリガーすることができます。OutSystemsでは複雑なSQL命令文を書き、インデックスを定義することができます。さらにOutSystemsデータベースは、パフォーマンスを維持できるよう自動的に標準保守スクリプトを実行します。
直接データベースアクセスを利用できるかどうかはエディションによって異なります。
OutSystems CloudのDatabase as a Serviceレイヤーに直接アクセスして、さらに高度な連携シナリオとアドホックトラブルシューティングを行うこともできます。
作業の流れ
デフォルトでは、Database as a ServiceレイヤーにアクセスできるのはOutSystems Supportのスタッフのみです。サポートの問題をトラブルシューティングする際に使用する場合がまれにあります。
5営業日
一時または永続データベースユーザーのどちらかを使用して、OutSystems CloudのDatabase a Serviceレイヤーへの直接アクセスをリクエストできます。
一時データベースユーザーは、LifeTimeを介してセルフサービスで取得できます。
永続データベースユーザーの場合、アクセスを許可するIPアドレスの範囲を指定してリクエストを送信します。OutSystemsは5営業日内にデータベースユーザーアカウント1つをプロビジョニングし、資格情報をユーザーに提供します。
ユーザーは、さらに5営業日のSLAによって、アクセスを許可するIPアドレスの範囲をいつでも変更できます。
このデータベースユーザーアカウントを使用することで、OutSystems Cloudデータベースにアクセスし、TOAD、Oracle SQL Developer、Microsoft SQL Server Management Studioなどのデータベースクライアントを利用できます。
このデータベースユーザーアカウントは、以下の権限を持っています。
- アプリケーションテーブルのデータの一括読み込みまたは書き込み
- OutSystemsプラットフォームのメタモデルテーブルからのデータの読み込み
OutSystems Cloudの完全性を保護するために、直接アクセスデータベースのユーザーアカウントは以下のタスクを行うことができません。
- 内部テーブルおよびビューに対する書き込みまたは変更
- データベースオブジェクト(テーブル/ビュー/インデックス)の構造の操作
- データベースロジック(関数、ビュー、プロシージャなど)の作成
セキュリティ管理
OutSystems Cloudのプロビジョニングプロセスにはセキュリティが組み込まれていますが、セキュリティ構成の詳細を以下のようにさらにカスタマイズすることができます。
- カスタムSSL証明書のインストール
- クライアント側証明書のインストール
- 信頼できるルートストアへのルート認証局証明書の追加
- カスタムホスト名の設定
- HTTPアクセスの制限
- IPアドレスによるアプリケーションアクセスの制限
- 保存データ暗号化のリクエスト
また、アプリケーションレベルでのセキュリティを確保するために、独自のペネトレーションテストを実行することもできます。
作業の流れ
OutSystems LifeTimeを使用すると、カスタムホスト名を定義し、各環境にカスタムSSL証明書をアップロードすることができます。SSL証明書は環境のロードバランサにアップロードされます。カスタムSSL証明書はクラウド内のOutSystems Webサーバーを認証するために使用されます。これにより、インターネット上のエンドユーザーのブラウザとのセキュアな通信を行うことが可能になります。カスタムSSL証明書は、OutSystemsではなくユーザーのブランドを使用するため、通信チャネルに対するユーザーの信頼を高めることができます。
5営業日
OutSystemsアプリケーションは、クライアント側の認証が必要なWebサービスを利用できます。こうしたWebサービスを利用できるようにするには、OutSystemsフロントエンドサーバーに証明書をインストールするようにOutSystemsにリクエストする必要があります。
また、OutSystemsアプリケーションではインターネットに公開されないWebサービスもVPN接続経由で利用できます。このシナリオでセキュアな通信を可能にするために、ユーザーはOutSystemsチームにルート認証局証明書を提供できます。その後OutSystemsチームは、信頼できるルートストアにその証明書をユーザーに代わってインストールします。
デフォルトでは、アプリケーションへのHTTPアクセスが許可されています。この状況が好ましくない場合、OutSystems LifeTimeを使用してアプリケーションへのHTTPアクセスをブロックすることができます。
5営業日
IPアドレスでアプリケーションアクセスを制限するには、ユーザー側で「内部ネットワーク」(OutSystemsコンソールおよび最も機密性の高い従来のWeb アプリケーションへのアクセスを許可するIPアドレスの範囲)を定義する必要があります。まず「内部ネットワーク」を設定または再構成するためのリクエストをOutSystems Supportに送信し、OutSystems開発環境を使用してアプリケーションを「内部アクセスのみ」に設定する必要があります。「内部ネットワーク」を設定すると、OutSystemsの開発ツール(Service StudioおよびIntegration Studio)からOutSystems環境へのアクセスも制御されます。
5営業日
4時間
ユーザーは、初回発注時に本番データベースの保存データの暗号化をリクエストできます。また、既存の本番データベースの暗号化についても後日リクエストできます。この場合、OutSystems Supportチームと暗号化操作のスケジュールを設定する必要があります。
5営業日
ペネトレーションテストを実施するには、事前にOutSystems Supportとスケジュールを調整する必要があります。このプロセスの詳細、および必要な情報については、こちらの記事をご覧ください。