多くの組織は、コードベースの定義 (多くの場合に IaC (Infrastructure as code) と呼ばれます) を用いた IT インフラストラクチャーをデプロイすることの検討を始めるか、すでに実際の適用を開始しています。 通常、このプロセスには次の手順が含まれます。
IaC によるデプロイの結果として得られるリソース群は、個別に構成と設定を選択して手動でデプロイすることも可能です。しかし、IaC を用いれば、高い一貫性を保って自動的に再デプロイしたり、新たな仕様に合わせて微調整することができます。
ArcGIS は一般に、多くの IaC 手法やシステムと互換性があり、これらは多くの場合、AWS CloudFormation、Azure ARM テンプレート、GCP Cloud Deployment Manager など、特定のクラウド環境またはシステム内で動作するように設計されています。 また、Esri は特定のプロバイダー、特に AWS CloudFormation テンプレートと Azure ARM テンプレート用のツールも構築しており、これらのツールを今後の構成や拡張の基盤として使用できます。
IaC プロバイダーまたはツールを使用してインフラストラクチャーがデプロイされてから、ArcGIS ソフトウェアを手動または自動でこれらのシステムにデプロイできます。 詳細については、ArcGIS ソフトウェアのデプロイメントの自動化をご参照ください。
一部の IaC パターンは、頻繁に変更がインフラストラクチャーにプッシュされるか、そのコードが変更されるたび、頻繁にデプロイするように設計されています。 ArcGIS Pro と ArcGIS Enterprise はどちらも比較的安定して一貫性のあるネットワークおよびインフラストラクチャー環境に依存しているため、このパターンを ArcGIS システムに合わせるのが難しい場合があります。 したがって、IaC の変更が必要な場合は、エンタープライズ IT システムに変更を進めるときは常にそうであるように、これらの変更を慎重に進めるか (計画、テスト、レビュー、調整)、またはこれらのシステムを、ソフトウェア デプロイメントの自動化を可能にする他の DevOps スタイルのツールと組み合わせて、システム全体を定期的な頻度で再構築およびデプロイできるようにすることをお勧めします。
コードとしてのインフラストラクチャーを ArcGIS を併用する際の追加推奨事項:
DevOps という用語は、一般にコードドリブンのデプロイメント ワークフローを指します。これは、コミットやリリースによって何かが自動的にデプロイされ、以前存在していたものに置き換わります。 この領域で使用される他の用語には、継続的インテグレーション (CI) や、継続的デプロイ (CD) があり、多くの場合、CI/CD として組み合わされます。 これらの用語は、ソフトウェア エンジニアリングの世界と、アプリケーションの開発およびカスタム ソフトウェア アプリケーションの構築から来ており、ソフトウェアのリリースをサポートするに、継続的なデプロイとテストが行われます。
ArcGIS は商用の既製ソフトウェア パッケージなので、多くの組織がカスタム アプリケーションの開発に CI/CD や DevOps を現在使用している方法とは多少異なります。 ArcGIS がデプロイされると、ArcGIS Enterprise では状態や構成 (ポータル コンテンツ、サービス、ユーザー コンテンツ、構成) の作成が開始されます。 ArcGIS Enterprise または新しい ArcGIS Online 組織を再デプロイすると、バックアップが復元されない限り、既存の状態が破棄されるため、作成した内容を表示できなくなります。
DevOps を ArcGIS システムで適切に使用するには、組織は次のいずれかを行う必要があります。