Dev.To: 5分以内でクラウドアクセスの課題を解決する方法
DEV.toで全文を読む
管理ではなく開発に時間を使う
今日のクラウド開発者が直面する課題は数多くありますが、その多くはデータベースなどのクラウドリソースへの、迅速でシンプル、かつ一貫性のあるアクセスに関するものです。開発者としては、ソフトウェアを構築することに時間を使いたいのであって、開発環境のセットアップに時間を取られたくはないはずです。
既存のデータベースを使う場合でも、新しく作成する場合でも、そのプロセスは煩雑で多くの時間がかかることがあります。データにアクセスできるようにしつつ、同時にプライベートに保つことも重要ですが、時にはどちらか一方の目的を犠牲にする選択をしてしまうこともあります。
ローカルで動かす「開発用」データベースを維持する: 生産性を保つために、開発者がローカルで動作させられるデータベースサーバーを使うことがあります。データベースをセットアップするスクリプトは維持管理が必要で、サンプルデータもごくわずかしか含まれていません。必要なデータベースの種類が増えるほど、開発者のノートパソコンに必要なCPU、メモリ、ストレージも増えていきます。例えばPostgreSQL、MySQL、Redisなどです。このようなモデルは実環境をフルスケールで再現したものではないため、問題の再現、デバッグ、修正のテストが難しくなります。問題を再現するために追加のログを有効にしたデバッグ版のアプリケーションをデプロイするのも時間がかかります。
本番データベースのコピーをローカルで動かす: これはノートパソコンに大きな負荷をかける可能性があり、ローカルで動かすには大きすぎるデータベースだったり、そのデータにPIIやその他の機密データが含まれていて、ノートパソコンに置くべきではない場合もあります。
IP許可リスト: MySQLの3306番などのポートを、パブリックIPアドレス上で開いたままにしないよう隠す必要があります。そうしなければそのポートは攻撃にさらされてしまいます。IPリストやセキュリティグループを使うことはできますが、問題は各環境でこれらのリストを維持管理しなければならないことです。開発者にとっては、自分のIPアドレスを手動で追加するプロセスによってアクセスが煩雑になったり、場所を移動したり自宅で作業したりして固定の外部IPアドレスを持たない場合、DevOpsにアクセスルールの更新を繰り返し依頼することになります。このプロセスは、無効になったIPアドレスを削除し忘れた際にセキュリティリスクを生む可能性もあります。
VPNの利用: マルチクラウドや複数のVPC、アカウントへと拡張するにつれて、VPNはますます複雑になり、制約も増え、サブネットの衝突を引き起こします。そのような問題により、一度に1つのVPNにしか接続できないこともあります。それでもなお開いたポートが残り、VPNを使用する各拠点でIP許可リストを維持管理してそれを隠そうとすることになります。そして、VPNはかつて考えられていたほど安全ではないことが分かっています。
こうした問題はすべて、新しい開発者や契約社員のオンボーディングおよびオフボーディングをより時間のかかる作業にしてしまい、結果として開発に使える時間が減ったり、契約社員や開発者が離れる際にアクセスを確実に遮断することが難しくなったりします。
もし、こうした問題を一切抱えることなく、クラウドリソースへのアクセスのメリットだけを得られるとしたらどうでしょうか?
ソリューション
Remote.Itは、リモートの開発環境、ステージング環境、本番環境のリソースを、あたかも開発者のローカルマシン上で直接動作しているかのように、そのまま利用できるようにします。場所やマルチクラウド・ハイブリッドクラウド環境に左右されることなく、コーディングを始めることができます。
デプロイは迅速かつ簡単です: こうした煩わしさをすべて取り除きます(セットアップは通常5分以内で完了します)。
アクセスは一元的に付与・削除できます: 「Organization Management」機能により、VPNでは技術的にLAN全体へのアクセス権を得てしまうのとは異なり、リソースごとにアクセスを個別に付与できます。特定の権限を持つロールを作成し、開発チームのメンバーそれぞれのアクセスニーズに応じてロールを割り当てることができます。
SAML統合を追加: ログイン認証情報をSAMLプロバイダーが管理する環境では、ユーザーのロールを管理するだけで済みます。ユーザー管理は、デスクトップアプリケーション、Webポータル、GraphQL APIのいずれからでも行えます。これにより、ゼロトラストネットワークアクセス(ZTNA)が実現します。
Remote.It経由でMySQLなどのリソースに接続すると、localhostアドレスと固有のポート番号が割り当てられます。これを開発環境の接続設定やデータベースクエリツールなどで使用できます。場所を移動したり、ノートパソコンがスリープから復帰したりするたびに接続、切断、再接続を行う必要はありません。これらのオンデマンド接続は、使用していないときはアイドル状態になり、使用するとアクティブになります。
セットアップ
動画や具体例を含む詳細なステップバイステップの手順については、記事全文のDev.To: 5分以内でクラウドアクセスの課題を解決する方法をご覧ください。