
富士ソフトでBizDevOpsによるインフラ構築、保守案件を担当している内藤です。
近年、クラウドサービスの普及やシステムの高度化が進む中「アジリティ」、つまり迅速性と柔軟性がますます求められていると感じています。実際、お客様からは、「こんな課題に困っていて、対応策を提案して欲しい」や「こういった機能を実現して欲しい」といった要望や、「こんな感じのことをやりたいと考えている」といった漠然とした要求が、日々のミーティングや相談の場で急に出てくることが少なくありません。希望納期も1週間から1カ月と非常に短期間であるケースが多く、このような状況に対応するには、アジリティを高めなければ立ち行かない場面が増えていると感じています。
インフラ運用や構築の際、私が心がけているのは「できないと言わない」姿勢です。納期要件が厳しい場合でも「これならできる」「この条件なら実現できる」という解決策を提示し、お客様との信頼関係を築くことを大切にしています。また、IaC(Infrastructure as Code)やサーバレスアーキテクチャといったクラウド技術を積極的に取り入れることで、柔軟性や効率化、品質の向上を実現し、お客様の課題解決につなげています。
本コラムでは、「アジリティ」を高めるための具体的な手法や工夫、実際のプロジェクトで得た知見を紹介します。新人インフラエンジニアや、インフラ運用・構築を学びたい方にとって、日々の業務に役立つヒントになれば幸いです。
アジリティを高めるためのインフラ構築・運用とは?
アジリティを高めるには、迅速なインフラ環境の構築と、自動化を前提とした設計が重要となります。
具体的には、IaCを活用したインフラの自動化やAWSのマネージドサービスを活用したサーバレスアーキテクチャの採用に注目しています。
近年、クラウドの普及により、インフラ設計や構築のプロセスが大きく変化しています。物理的な作業が減った一方で、短期間で設計や構築を完了させる必要があるプロジェクトが増えています。また、従来はアプリケーションやミドルウェア側で対応していた処理をインフラで実現するケースが増え、その結果、インフラエンジニアに求められる知識やスキルの幅が広がっています。
こうした状況の中、設計や構築のスピードを大幅に向上させるだけでなく、設定変更やデプロイ作業の効率化により、お客様の要件に迅速に対応するインフラチームの取り組みが、プロジェクト全体に与える影響は大きくなっています。インフラチームがいかにアジリティを高められるかが、システム全体の信頼性やクオリティを左右する場面も増えているのではないでしょうか。
短納期で実現した高可用性のインフラ構築
企業・団体様向けの人材マッチングシステム開発のプロジェクトを紹介します。本プロジェクトはマルチテナントを前提とし、半年以内にファーストユーザー向けのパイロットリリースを完了させる比較的短いスケジュールでした。また、SaaS共通基盤として先行開発していた認証システムの進捗が遅れている状況でした。
そこで、システム全体のアーキテクチャには、AWSのマネージドサービスを使用したサーバレスソリューションを採用しました。認証部分は、本来使用する予定だった共通認証基盤の代わりに、AWS CognitoとALB(Application Load Balancer)の認証連携を組み合わせて利用しています。これにより、アプリケーションのコード量を最小限に抑え、インフラ側で認証機能を実装できました。このアプローチは、結果的にアプリ開発者の負担を減らし、インフラチームとしても短期間での構築が可能になりました。
さらに、IaCのAWS CDKを利用して、すべてのインフラ設定をコード化し、ALBのテナントパス毎の認証設定も自動化しました。新しい要件や変更に迅速に対応するために、毎週のデプロイスケジュールを設定していました。毎週月曜日には検証環境、水曜日には本番環境へのデプロイを実施し、手が空いているときにはサンドボックス環境でインフラ変更を検証し、IaCによるコード化を進めました。このようなスキームを整えたことで、インフラ担当者が兼務の場合でも、タスクをスムーズに進行できたと考えています。
この取り組みの中で特に良かった点は、お客様から日々寄せられる新しい要望や変更に対して、技術的にできるかどうかを迅速に検証し、どんどんプロジェクトを前に進められたことです。例えば、新たなアップロード機能が必要とされた場合には、Amazon CloudFront、Amazon S3、Amazon EventBridge、Amazon Step Functionsを組み合わせて、シンプルかつ効率的な仕組みを提案・実現しました。他にも、IaCによりコード化していたおかげで、他プロジェクトとの兼務でもタスクの手戻りや生産性低下を抑えられ、コードとインフラが一致しているという安心感も得られました。
くわえて、バックエンド機能までをインフラ側で可能な限りサポートすることで、開発全体のスケジュールを遅らせることなく、厳しい要件を満たすことができました。
保守運用の効率化とアジリティ向上
一方、保守運用の現場では、運用負担を軽減するための自動化や、ランニングコストの削減を積極的に進めています。ECショッピングモール案件では、AWS新機能のリリースやログ出力量、ログ利用形態の変化などに速やかに対応し適切な出力方式、出力先に変更することで、月額の運用費用を数百万円規模で削減できました。例えば、ログの増加に伴い、AWS CloudWatch LogsからErrorログ以外はAmazon S3とAmazon Athenaを利用した構成に移行し、さらにGrafana Lokiなど適切なツールに変更しています。こうした工夫は、お客様のコスト負担を軽減し、満足度の向上にもつながります。
また、以前は、サイトのメンテナンスや大規模なリリース時に、担当者が手動でサーバーを停止・再起動していました。AWS CodePipelineを用いて自動化することで、担当者の夜間作業を削減し、運用中の人的エラーリスクも低減しました。
特に効果的だったのが、IaCを利用した運用管理です。マイクロサービス化した複雑なシステムではAWS CDKを採用し、数十にわたるサービスのインフラ変更を省力化し、作業品質の向上を図っています。また、IaC対応できていないレガシーシステムではAWS Systems Manager Automationでドキュメントを作成し、設定変更作業を自動化しています。
日々の改善活動により、実際に私が関わる案件では、大きな障害もなく、ありがたいことに「運用停止ゼロ」を維持できています。24時間365日の対応体制を整え、「止めない運用」を支えるには、単に障害対応力を高めるだけでなく、日常的な小さな改善の積み重ねが欠かせません。これがチーム全体の効率を高め、お客様からの信頼にもつながっていると感じています。
BizDevOpsにおけるインフラ運用の展望
富士ソフトの「BizDevOps」では、アプリ開発とインフラの担当者が連携して、お客様ごとに合ったサービスを提供しています。お客様のシステム運用の不安定さや手動運用によるコスト増といった課題に対して、これまでのノウハウと迅速な対応力を最大限に活かした提案が可能です。例えば、トラブルシューティングでは、迅速にトラブルの原因を特定し、解決策を提示します。適切な解決策を講じられるのは、業務の流れとインフラの関連性を深く理解しているからこそといえます。
拡張性やスケーラビリティも、インフラ設計の大きな柱です。長期的な成長を見据えた柔軟な基盤を構築し、お客様のビジネスが変化する中でも安定した運用を支えています。特に、クラウドサービスを活用したインフラでは、自動化や最適化による効率化が可能で、より少ないリソースで大きな成果を実現します。
今後は、さらなる自動化を推進し、人的なミスを防ぐと同時に、トラブルを未然に防ぐ仕組みを強化したいと考えています。IaCの活用は、構築や運用のスピードアップに大きく寄与しています。また、少ない工数でより早く開発を進めるために、新たなマネージドサービスの提案も積極的に行いたいと考えています。
BizDevOpsは、運用と開発を密接に結びつけ、チーム全体で迅速に課題解決に取り組める点が大きな魅力です。
お客様のビジネスを前進させるインフラ運用を今後も目指します。
富士ソフトBizDevOpsサービスについて、詳しくはこちら