2020年09月

16

ハイブリッド/マルチクラウド時代だからこそIBMのストレージ

IBMの岡田です。

前回の「OpenShiftに代表されるコンテナ環境へのIBMストレージの対応」でも触れた通り、ここ数年の傾向として何でもかんでもクラウドに移行するという時代は過ぎ、従来型の IT インフラとクラウド環境とを上手く使い分け、あるいは連携しながら、目的の業務アプリケーションを動かしていく方向になりつつあります。いわゆるハイブリッドクラウドというものです。
そして、パブリッククラウド自体もそれぞれのサービスにより使い分ける風潮があり、今やパブリッククラウド・ユーザー企業の半分以上が、複数のパブリッククラウドを使っているのではないかと思われます。いわゆるマルチクラウドと呼べるものですね。

しかし、なかなか統合的に管理するというところにまでは至っておらず、クラウドを含めたサイロ化が起こっている状況です。
このような運用ではアプリケーションの適材適所はおろか、データさえ十分に使えていないことは明白です。

今回はこのようなハイブリッド/マルチクラウドの状況の中でデータを上手く連携し活用していくために、IBMのストレージにできるソリューションを紹介しましょう。

 

ハイブリッド/マルチクラウドの位置づけ

以下の図は、ハイブリッドクラウド、マルチクラウドを模式的に表したものです。
オンプレ環境のプライベートクラウドまで含んでマルチクラウドという人もいますし、従来型の物理サーバーや仮想化された VM 環境もハイブリッドクラウドのオンプレミス部分の一部と考える人もいます。人によっても会社によっても捉え方は色々ですが、ここでは敢えて従来型 IT もハイブリッドクラウドの一部として話をしたいと思います。

図1. ハイブリッドクラウドとマルチクラウド

 

IBM Spectrum Virtualize for Public Cloud とは!?

IBM Spectrum Virtualize for Public Cloud(SV4PC)は、第一回目第二回目のブログでも登場した IBM のメインストリームとなるブロックストレージ、FlashSystem にも搭載されている管理機能ソフトウェア、これをパブリッククラウドでも使えるようしたものです。
つまり、SV4PC はハイブリッドクラウドやマルチクラウドに対応したストレージ製品です。

SV4PC を知れば FlashSystem を知ることができますので、SV4PC の機能を紐解いていきましょう。

 

外部仮想化機能

2003年、この Spectrum Virtualize ファミリーの元となる製品が生まれました。SAN Volume Controller、通称 SVC です。
今でもこの製品は最新のテクノロジーを装備してファミリーの一員です。(IBM Spectrum Virtualize for Public Cloud も Spectrum Virtualize ファミリー製品です。)

そこから脈々と受け継がれた外部仮想化という機能は、IBM および他社ストレージ製品約500種類を配下に接続可能で、これを仮想化して自身のストレージとして扱うことができるものです。

図2 外部仮想化機能

もちろん、既存で使われているストレージのボリュームや保存されたデータを生かしたまま配下に収めることができるため、オンライン・データ移行はもちろん、コピーサービス(スナップショット等の機能)を持たないストレージにそういった機能を与える事もできます。

この機能を使う事で、FlashSystem では他社製品を含めた古い製品から簡単に最新のテクノロジーにデータを引っ越すことが可能です。

パブリッククラウド上では、SV4PCがプロバイダーが提供する基本的な機能しか持たないブロックストレージを配下に置くことができます。
これにより、最新のデータ削減機能の他、ブロックレベル自動階層化のEasy Tier(補足参照)、FlashCopyや筐体間コピーを含むコピーサービス(補足参照)、といったテクノロジーも使用可能となるわけです。

 

図3. データ移行のイメージ

 

様々なデータ削減機能

FlashSystem 5010 を除く Spectrum Virtualize ファミリーには、いくつかのデータ削減機能があります。
これらは DRP(Data Reduction Pool)というデータ削減にはなくてはならない機能を実装した Spectrum Virtualize ファミリー特有のストレージプール上で実現されます。また DRP での各処理単位はフラッシュ系デバイスに最適化されています。

図4.Data Reduction Pool

具体的には「リアルタイムデータ圧縮機能」「重複排除機能」「シン・プロビジョニング機能」がサポートされています(一部組合せによりサポートできないデバイスがあります)。
※詳しくは補足をご覧ください。

 

Spectrum Virtualizeファミリーのハイブリッドクラウド/マルチクラウド対応

触れてきた通り IBM の Spectrum Virtualize ファミリーであれば、オンプレミスの FlashSystem あるいは SVC とパブリッククラウド上の SV4PC とでデータ連携できるので、データの観点でハイブリッドクラウド対応ができます。
また、パブリッククラウド同士でデータ連携することもそれぞれに SV4PC を置くことで可能となり、マルチクラウド対応もできます(2020年7月時点、IBM Cloud と AWS に対応)。

図5. ハイブリッド/マルチクラウドのデータ連携

さらにこの方法を使えば、他社の既存データも活かすことができます。外部仮想化機能が使えるからです。

つまり IBM の Spectrum Virtualize ファミリーを使うと、他社ストレージ製品も含めてハイブリッドクラウド対応できる事になります。

では、データをハイブリッド/マルチクラウド連携できると何が嬉しいのでしょうか。

 

ハイブリッドクラウド/マルチクラウドの利点

グローバルでは、一番広く使われているのが災害対策用途です。
被災時に本番環境が使えなくなった際も、パブリッククラウド側で仮想サーバー、コンテナなどを使い業務を継続できるからです。

今求められるデータ活用としては AI/アナリティクスなどと言うものもあります。
オンプレミスで使えるものもありますが、手軽にやろうとすると各パブリッククラウド上で提供している AI サービスを使うのが早いですね。最初に触れた通りサイロ化されたデータをパブリッククラウドと連携するにもハイブリッドクラウドは有効です。

バックアップ先としてパブリッククラウドを使うと、いらぬ投資をすることなく遠隔保管が可能となります。
通常テープを使った遠隔保管ですと保管場所である拠点、定期的な搬送といった固定費が発生します。最悪の場合、本番業務側が被災した場合にもデータをリストアしなければならないことを考えると、保管場所にリストアする仕組みが必要となります。これも大きな投資となるでしょう。
パブリッククラウドをバックアップ先とした場合それだけで遠隔保管が実現でき、必要な場合のみ仮想サーバーも立てることができるため DR としての役割も果たせるのです。

また、クラウドに業務を移行するというケースもまだまだ発生しますね。
この際クラウドプロバイダーが提供している方法もありますが、移行対象となるデータが多量にあると、なかなか与えられた方法を用いて計画通りに移行することは困難な場合があります。特にプロバイダーから送られたハードウェアを仲介して行う方法は、移行の間は業務を止めて対応する必要があります。これではビジネス的なインパクトが発生します。
ハイブリッドクラウド形態でのクラウド・オンプレミス間のデータ同期であれば業務を止めずに対応でき、万が一クラウドに移行したことで何らかの不具合を生じた場合にも即座に元の環境に戻すことができます。

これらの有益なハイブリッドクラウドのデータ連携にマルチクラウドのデータ連携要素が加わると、更に有益なことがあります。
最近の風潮としては、パブリッククラウド上にデータを置く場合でもミッションクリティカルなものの場合には、AZ(アベイラビリティーゾーン)を跨ってレプリケーションを取ることが一般的になってきています。冗長性を保つという意味では、異なるパブリッククラウドにコピーを持つことも有効でしょう。
このような用途にもマルチクラウド・データ連携は役に立ちます。

またメジャーなパブリッククラウドは、基本的にグローバル展開をしております。
自身で海外にサイトを立ち上げる必要なく、容易に海外展開できるといった利点や、国内でも東阪の災対環境も手軽に築くことも可能です。

図6. ハイブリッド/マルチクラウドで実現できるソリューション

 

ハイブリッドクラウド・データ連携の具体例:クラウドへのデータ移行

パブリッククラウドに業務を移行する際に、ハイブリッドクラウドの接続形態を使うことで既存の業務を止めないオンラインデータ移行が可能です。(ただし既存ストレージの仮想化のための接続変更時は短時間ですが止める必要があります。)

図7. ハイブリッドクラウド活用例・クラウドへのデータ移行

オンプレミスとパブリッククラウド、あるいはパブリッククラウド同士でのレプリケーションは方向を変えることも可能ですので、もししばらく使ってみて移行先で業務がうまくいかないなどの不具合が生じた場合は、データをオンプレミス側に戻すことも可能です。

他の活用例も結局はこのレプリケーションを使って双方を連携させることによりますので、アイディア次第でお客様の用途に合わせて色々な活用方法が見つかるかもしれません。

 

クラウド上ではこんな使い方も

SV4PC だけでも面白い使い方ができます。

多くのパブリッククラウドの環境下では、その環境内で使える仮想ブロックストレージが用意されています。
プロバイダーにもよりますが、大雑把に言ってしまえばクラウドは大規模な物理リソースを小出しにして使っている都合上、様々な制約があったり、性能の低いリソースを使わないとコストがかかりすぎるなど難しい局面も持っています。

例えば一つの仮想ブロックストレージの上限容量です。あるプロバイダーでは 16TB までしか使えなかったり、IOPS の上限にひっかかったりします。
このように、デフォルトのままではパフォーマンス要件をこなせないような場合でも、SV4PC で仮想ブロックストレージを複数束ねることで、仮想サーバー側に提供するストレージをスケールアウトすることができるので解決できたりもします。

また、データがホットな時期は SSD、旬が過ぎると HDD レベルで充分なデータを扱う場合、そもそも一時的なパフォーマンスのために全データを同じ SSD に置いておくのは無駄があります。
このような場合、最小限必要な SSD と充分な HDD を SV4PC で束ねつつ、前述の Easy Tier のような自動階層化機能を使うと、意識することなくホットデータは SSD で処理、その後は HDD へ配置されるので、クラウド上のストレージコストを全体的に減らすことができたりもします。

さらに、SV4PC のシン・プロビジョニング機能を使えば効率の良いコスト削減が可能となります。
通常の場合、仮想ブロックストレージの払い出しは見込み容量を先に決めてからその分払い出すことになり、運用後の拡張の手間を考えると、あらかじめ余裕を持った容量を払い出しがちです。この場合、実際に使用していなくとも払い出した容量は課金対象となります。
これに対しシン・プロビジョニングは、実際に存在する容量以上のストレージ空間を切り出すことができるのと、後から不足しそうな容量分の仮想ブロックストレージをストレージプールに加えることもできるので、最小限の容量から始めることができ、容量課金を削減することができます。

図8. パブリッククラウド上でのSV4PCの活用

なお何度も言いますが、SV4PC は今後のコンテナ環境にも対応しております。
ここまで見てきた通り、SV4PC はクラウド全盛の今だからこその機能を備えた Software Define Storage ソリューションであることが分かると思います。

いかがでしたか?

ハードウェアはもちろん技術の塊ですが、ソフトウェアのみでも十分に使える IBM Spectrum Virtualize ファミリー、少しは興味を持っていただけたのではないでしょうか?

次回は「最新のデータのライフサイクル管理」ということで ESS、Sepctrum Scale、オブジェクトストレージ、そして Spectrum Discover といった製品に触れてみたいと思います。

乞うご期待!

 

補足

1)リアルタイムデータ圧縮

バッチ処理で圧縮するのではなく、データの書き込み時に圧縮処理をして記憶域に書き込む圧縮方法です。FlashSystem 5030 と SV4PC を除きハードウェア・アクセラレータを活用できます。
もちろん 5030 および SV4PC もコントローラのリソースのみの処理ですが暗号化機能を実現しています。
圧縮率は、対象となるデータの種類によって異なりますが、一般にデータベース、メール、仮想サーバーイメージなどのファイルが高いと言われています。
以前はオフィスデータなども高かったのですが、最近はすでにオリジナルのオフィスファイル自体で圧縮済みですので、あまり効果は期待できなくなっていると言われます。

更に DRP の機能とは別に、IBM 特有の FlashCore モジュール(略して FCM。FlashSystem 5100, 7200, 9200/R で使用可能)であれば、モジュールそのものにインライン・ハードウェア圧縮機能があります。これはモジュール内のハードウェア的なデータの通り道にワイヤードロジックによる圧縮機能を設けているため、性能に影響を与えません。
ちなみにこのワイヤードロジックには暗号化機能も盛り込まれており、同様に性能に影響のない暗号化を実現しています。

 

2)重複排除

データのなかに同じパターンを見つけて、冗長なデータを削減することで容量を節約する機能です。特に仮想サーバーイメージなどには有効な手法です。
以前は非常に負荷がかかる作業だったため、バックアップなどに限定して使われていた技術ですが、昨今は性能の向上により、通常のストレージでも当たり前に使われる技術となりました。
以下は非常に単純化したインラインで扱われる重複排除のイメージです。バックアップ等での処理はこの限りではありません。

図9. 重複排除

実際はこう単純ではありません。
書かれたデータのパターンに応じたフィンガープリントと呼ばれる代替え値をハッシュ関数により導き、新たに書かれるデータのハッシュ値がすでに存在するフィンガープリントと一致している場合は、データそのものは書き込まず、参照するフィンガープリントのポインターのみを管理テーブルに記録する。これによりデータを間引くことができ、書き込み容量を削減することができるのです。

DRP 上での重複排除の特徴はフィンガープリントを同一ボリューム内のみならず、同じ DRP で定義された別のボリュームも含めて参照していることです(※図4参照)。同じプール内でバックアップなどのボリュームが定義された場合などに効果を発揮できるからです。

図4.Data Reduction Pool

 

3)シン・プロビジョニング

こちらは、データ削減と言うよりはサーバーから見た際の話になります。
通常、ストレージ装置側で定義したボリュームをそのまま OS で認識させ使用することになります。その際の容量は、ストレージ装置のボリューム定義そのままの容量となります。

図10. シン・プロビジョニング

シン・プロビジョニングを使うと、その容量定義を物理的に存在しない容量も上乗せして定義することができます。この場合消費されるストレージ装置の容量は実際に書き込みが起こった時にそのデータ容量分ずつとなります。
もちろんその存在しない容量分に書き込みが発生するとエラーになりますので、そうなる前に物理容量を追加する必要があります。同じストレージプール内の複数のボリュームで、実際に存在する実効容量を共有して消費するといった使い方が効果的です。が、OS 側からは何も意識することがありません。

この方法は、実はパブリッククラウドのように払い出し容量で月額課金されるようなサービスでは、より有効な節約方法となります。

 

4)Easy Tier

Spectrum Virtualize ファミリーには、もう一つ特徴的な機能として自動階層化機能があります。
通常データの階層管理というと、ファイルレベルで実装するものをイメージされる方が多いのではないでしょうか?

Easy Tier はブロックレベルでありながらストレージの負荷情報を自ら学習し、アクセスの集中するホットなデータは Flash系のデバイス、アクセス頻度の低いデータは容量単価に優れる大容量・低速の HDD といった階層にデータを AI を使ってストレージの機能で動的に移動させる機能です。

図11. EasyTierの動作イメージ

この機能を使うと高価な半導体系のストレージデバイスの容量を節約し、安価なハードディスクを増やすことで、パフォーマンスを下げずに全体の容量単価を下げることができます。
オンプレミスの FlashSystem はもちろん、払い出し容量で月額課金されるパブリッククラウドでも有効な節約手段となります。

 

5)コピーサービス

今や多くの廉価なストレージ装置もスナップショット、レプリケーションといった機能は当たり前になっています。

図12. 様々な用途に使えるコピーサービスの数々

スナップショットなどの瞬間のボリュームイメージを切り取る機能は、一般的にポイント・イン・タイム・コピーと呼び、IBM の場合は FlashCopy と言われる機能になります。
こちらは通常ストレージ装置内で使われる機能です。バックアップを取るときなどアプリケーションや RDB などと連携して、静止点をとるのに有効な機能です。

これに対して、ストレージ装置間で関連づけたボリューム同士で同期を取り、それぞれのボリュームを常に同じデータで満たす方法がレプリケーションです。
スナップミラー、ボリュームミラー、リモート・ミラーあるいはリモート・コピーなど、メーカーによって呼び方は様々ですが、基本的には時間的ズレのない同期型のものと、多少の時間的ズレを容認する非同期のものとに大別されます。
前者は銀行など災害などでのデータ損失を認めないような要件で使われ、拠点を跨ぐ場合、それなりの高価な設備(ネットワーク設備であったり拠点設備であったり)と共に使われます。後者はデータの多少の損失は容認するか、または別の方法(ログデータとかとの併用など)で補うかして、むしろ、より遠隔にデータを退避することを優先するなどの目的で使われます。広域災害などへの対策が多いですね。

考慮すべき事項に、特にレプリケーションは同じストレージ装置同士であると言う大前提があります。メーカーごとに使っている技術が異なるからです。
IBM の場合、Spectrum Virtualize ファミリーであれば相互接続が可能です。つまりオンプレミスのFlashSystem または SVC とパブリッククラウド上の SV4PC との接続が可能なのです。これが IBM ストレージがハイブリットクラウドに対応できると言う一つの根拠です。
もちろん前回触れた通り CSI(Container Storage Interface)にも対応していますので、コンテナ環境にも対応可能です。

接続方法について以前は、ストレージ機器同士の同期ということでより早く安全な FCP(Fibre Channel Protocol)に頼っていましたが、今日では非同期を前提に充分に IP 接続でも対応できるようになりました。
また、帯域以上のデータ転送を余儀無くされる初期同期が問題になりますが、前述のシン・プロビジョニング・ボリュームを対象とすることでボリューム全転送を必要とせず差分だけで可能となったり、データそのものも効率的な圧縮・重複排除の活用で小さくなったというのも大きいですね。

 

 


この記事に関するお問い合わせ

エヌアイシー・パートナーズ株式会社
企画本部 事業企画部

この記事に関するお問い合せは以下のボタンよりお願いいたします。

 


関連ページ

 

 

その他の記事

2025年12月25日

“AI を学習用ではなく事業の現場に馴染ませる”
本格的なAI時代に誕生したIBM Power11の覚悟とは?

公開日:2025-12-25 本格的なAI時代の到来で、企業にとってIT基盤の存在感はこれまで以上に重みを増しています。IBM Power11は、そうした時代の要請に応えるべく誕生した真のエンタープライズ・サーバーです。堅牢な信頼性と高い処理性能に加え、外付けカードIBM Spyre Acceleratorによって、地に足がついたAIワークロードをすぐに実装できる実用性を備えるに至っています。既に先行ユーザーは、大きな業務効率化の効果を体感しており、このサーバーは単なるハードウェアを超えて、次世代の標準基盤となる期待を集めています。 今回は、日本アイ・ビー・エム(以下、IBM)テクノロジー事業本部 Powerテクニカル・セールス部長 釘井 睦和 氏をお迎えし、AI時代をリードするべくして誕生したIBM Power11の“覚悟”について伺いました。 出席者 ゲスト 日本アイ・ビー・エム株式会社テクノロジー事業本部Powerテクニカル・セールス部長釘井 睦和 氏 インタビュアー エヌアイシー・パートナーズ株式会社技術企画本部テクニカル・サポート部部長 広橋 稔 本格的なAI時代の到来で、さらに重みの増すIT基盤 広橋: 経営とITが不可分となった今日、企業のお客様が直面している課題としてどのようなものがあると考えておられますか。 釘井氏: 本格的にAIの時代が到来したことが非常に大きいと思います。企業競争力の維持を図る上で、もはや、AI活用を抜きに戦略を立てられないというところまで来ています。実践段階に入ってきたこともあり、アナリスト機関IDCによれば、これからはAIエージェントが自らアプリケーションを書くようになると予測されています。その結果、アプリケーションの数は爆発的に増加し、今後10億もの新しいアプリケーションが出現すると予測され、そのうち3分の1はAIによって開発される見込みです。こうなってくると、アプリケーションを支えるインフラは、これまでにないスピードと規模でアプリケーション増加への対応と高い可用性を求められます。計画停止すら許されないミッションクリティカルな業務が増えていくことでしょう。そのような世界では、油断をするとシステムのサイロ化やデータ爆発も起きやすくなるため、その対策も必要です。 その一方で、ランサムウェア攻撃を筆頭に、セキュリティリスクも劇的に高まっており、対策強化も喫緊の課題です。だからといって、ITばかりに予算を使うわけにはいきませんから、そこはコスト最適化を図る目線も要求されます。さらに、少子高齢化社会の進行で、IT人材も確保しづらい状況が続いているため、より少ない人員でより多くのことをカバーできるかといった観点での運用効率化も恒常的なテーマとなっています。つまり、今日の企業が対峙している課題は文字どおり山積しているといえます。 広橋: 確かに、日ごろパートナー企業やエンドユーザー企業のお悩みを聞く中で、こうしたお話はよく伺います。特にAI活用については、意欲を持ちつつも、プレッシャーも感じておられるようです。 AI時代のニーズに応える真のエンタープライズ・サーバー 釘井氏: こうした中、今年登場したIBM Power11は、本格的なAI時代のニーズに応える、真のエンタープライズ・サーバーとして位置づけられています。このサーバーは、単なるハードウェアを超えたまさに“企業の中枢を支える基盤”として設計されており、Powerとして従来から定評のある堅牢性と可用性をさらに進化させつつ、計画停止をほぼ不要とする自律的な運用機能や強靭なセキュリティを標準装備しました。また、最新のDDR5メモリと強化されたI/Oアーキテクチャにより、高負荷のトランザクション処理や大規模データ解析なども余裕を持ってこなすとともに、AI推論も得意とします。IBM Power11は、企業がAI時代に向けて加速できるようIBMが考え抜いたフルスタックのイノベーションです。 広橋: IBM Power11を特徴づけるキーワードをいくつか挙げていただけますか。 釘井氏: 一つは、「0」(ゼロ)です。これは、エンドツーエンドの自動化を実現し、計画的なダウンタイムを0にする、つまり、無停止運転を可能にすることを意味します。 従来はメンテナンスウィンドウを設けて実施していたファームウェア更新、I/Oアダプタ更新、仮想化ソフトウェア更新などを、IBM Power 11ではAutomated Platform Maintenance(APM、プラットフォーム自動保守)機能として、管理コンソールであるIBM Hardware Management Console(HMC)からワンクリックまたは準自動で実行可能です。環境をチェックする更新前準備、パッチ配布、ワークロードの退避・復帰を一連のフローで自動化できるため、停止せずに更新できるというわけです。 また、運用データを横断的に集約し、watsonxですぐに実行できる提案と自動化を結びつける、アプリケーション運用向けのAIオートメーション基盤 IBM Concertがあります。Concert for Powerでは、Powerインフラの脆弱性を検出して、現行バージョンに照らして優先度をAI算定、その後に推奨手順を提示し、必要に応じて更新をゼロ計画停止で実行するところまで担います。ここでいう実行とは、HMC/PowerVMが担う処理をConcertが呼び出して一気通貫に自動実行することを意味しています。 広橋: サーバー停止は業務に支障を及ぼしかねず、利用部門や経営層からの圧力も大きいため、情報システム部門としてはなるべく回避したい運用ですから、安定して動き続けてくれるならそれに越したことはないですね。 釘井氏: はい。もう1つのキーワードは「

2025年12月25日

VMware問題で生じる保守のすき間に、 IBM第三者保守という「つなぎ保守」を

公開日:2025-12-25 ブロードコムによるVMware買収により、多くのユーザー企業が大幅なコスト増か、保守なしでのリスク運用か、という究極の選択を迫られています。そういった企業に対して、日本アイビーエム(以下、IBM)では、「VMware第三者保守サポートサービス」を提供しています。これは、IBMがグローバルレベルでVMwareテクノロジーの知見を収集できる特性を活かして、高い解決率で保守サービスを提供するというもの。 今回は、サービス提供部門の方々をお招きし、このサービスの詳細とメリットとともに、なぜVMware第三者保守を手がけるのかについて深掘りしていきます。 出席者 ゲスト 日本アイ・ビー・エム株式会社テクノロジー事業本部テクノロジー・サービス事業第三営業部 部長 井上 亜矢子 氏 日本アイ・ビー・エム株式会社テクノロジー事業本部テクノロジー・サービス事業R&E第一営業部 山谷 怜 氏 日本アイ・ビー・エム株式会社テクノロジー事業本部テクノロジー・サービス事業R&E第一営業部 山口 英俊 氏 インタビュアー エヌアイシー・パートナーズ株式会社営業本部カスタマーサービス営業部第2グループグループ長 平嶋 英良 突然訪れる保守なしからのリスクをカバーするサービス 平嶋: ブロードコムによるVMware買収、いわゆる“VMware問題”では、多くユーザー企業の間で激震が走りました。大きなインフラコストの上昇を引き起こす要因となったからです。そうした中でIBMは「VMware第三者保守サポートサービス」を提供されている背景をお聞かせください。 山口氏: 買収によって、ライセンスとサポートの考え方が大きく変わりました。従来、ライセンスに関しては、「Perpetual 永続ライセンス」といって、一度購入すれば、期限無制限で永続的に使用する権利が得られました。サポートは、この永続ライセンスに対して有期限で別途契約する形態となっていました。しかし、サブスクリプション・ライセンスへと変更となり、ライセンスは有期のライセンスを新たに買い直すとともに、サポートもライセンスに同梱されることとなりました。したがって、サポートは、ライセンスと同じ期間の権利を買うことが求められることになりました。(図1)。 図1 ”仮想マシンのみ”からコンテナ利用環境へのモダナイゼーション これは、お客様にとって2つのことを意味します。サブスクリプション・ライセンスに移行すればインフラコストの大幅な上昇になり、かといって永続ライセンスにとどまれば、従来のサポート契約期間満了時からサポートが受けられなくなる。つまり、サポートにすき間が生じるリスクが生じます。障害が起きても情報システム部門で対応するという方法もありますが、VMware環境の運用には専門的な知識が必要で、現実的とは言えません。 平嶋: 多くのユーザー企業がジレンマを抱えておられるようです。 山口氏: そうなのです。そこでIBMは、こうした保守なしのリスク運用が生じないように、当社の実績ある第三者保守サポートの枠組みを通じて、経験豊富な技術者チームによるVMware 環境の安定稼働の支援と、コスト最適化効果を提供することを考えました。それが、「VMware第三者保守サポートサービス」です。 このサービスは、これを機に別のインフラ環境へマイグレーションしたり、モダナイゼーションしようと考えるお客様にも有効です。このようなプロジェクトは通常、多くの時間を要します。その間に従来のサポート契約満了日が来てしまうことも考えられ、リスクを避けようとすると、この日に合わせて急いで移行するか、いったんサブスクリプション・ライセンスを受け入れながら、新システムプロジェクトを進めるということになり、新旧インフラコストを負担しなければなりません。しかし、「VMware第三者保守サポートサービス」を利用すれば、既存システムのサポートはこちらでカバーできるため、拙速に陥ることなく、余裕を持ってマイグレーションやモダナイゼーションに取り組むことができます。 井上氏: また、サブスクリプション・ライセンスに移行したけれど、稼働しているアプリケーションの事情で、VMware の古いバージョンを使い続けているという場合もあるかと思います。メーカーではサポートするバージョンが限られているため、サポート契約を結んでいても、それがあまり効果を発揮できないケースがあります。「VMware第三者保守サポートサービス」なら、比較的古いバージョンでもサポートを提供することが可能ですので、こちらを追加でお買い求めいただいてご活用いただく、というパターンもあります。 平嶋: なるほど。様々な状況で、コストを含めて、お客様に安心を提供できるサービスなのですね。 「VMware第三者保守サポートサービス」とは 平嶋: あらためてサービスの詳細をご紹介ください。 井上氏: サービス名称にもある通り、この枠組みではIBMはあくまで第三者であり、メーカーではないため、パッチの提供は行いません。何か事象が起こったときは、お客様からログなどをいただいて、「この設定をこのように変えてください。そうすればこの事象は回避できるはずです」と、事象の回避策を提案します。なぜこのようなことができるかというと、IBMにはグローバルレベルでVMwareのスキル、ノウハウに精通した協業パートナーが存在し、また、様々なお客様において提供したサポートの実績も蓄積しているからです。当社の技術チームがそこから事例やデータの提供を受けながら技術調査を行い、的確かつ最適な回答を追求して問題対応に当たります。ただ、あくまでも立場は第三者であるため、このサービスはベストエフォートでのサポートとなります。しかし、IBMでは、Oracleを含め第三者保守では豊富な実績を誇っており、回避策の提供で解決しない事象はほぼありません。 平嶋: お客様からはどのように相談を受けるのですか。 井上氏: ご相談は24時間365日Web上で受け付けています。対応に当たるのは平日9時から17時になります。 平嶋: IBM製品をお使いのお客様ですと、「システム技術支援サービス」 (System Technical Support Services、以下STSS)をご利用になっているケースもあるかと思いますが、その場合はどうなるのでしょうか。 井上氏: その場合は「IBM サポート・コミュニティ」にご連絡いただければ、STSS側で「これはVMwareの問題だね」と認識して、IBM内部でVMware担当と連絡を取り合って、受付/対応を行います。お客様は窓口を使い分ける必要なく、ワンストップサービスのイメージでご利用いただけます。 図2 IBM VMware第三者保守サポートサービスご提供体制 平嶋: 契約条件などはあるのでしょうか。 井上氏: ライセンス数は“20”から、契約期間は3カ月以上、3年以下とさせていただいています。ライセンス数“20”というのは、日本のVMwareユーザーのお客様を調査したところ、大体平均でこのぐらいの数はお持ちであることがわかり、“20”に設定させていただきました。 平嶋: 契約期間を3カ月以上、3年以下に設定されているのはなぜですか。お客様によっては、もっと長く保守してほしいというご要望があるような気がします。 井上氏: 3カ月以上というのは採算上の問題です。長い分には、5年でも、10年でも保守をお引き受けすることはサービス設計上可能ではあるのですが、あえて3年以下とさせていただいたのには、ここにIBMとしての「思い」があるのです。 次を見据えたシステム移行のための「つなぎ保守」 山谷氏: その「思い」というのは、この第三者保守について、次を見据えたシステム移行を考える上で一つの手段とする、「つなぎ保守」として活用いただきたいというものです。技術革新の著しいITの世界にあって、一つのインフラを長く使い続けるのはあまり健全ではないと私たちは考えています。そのため、あえて「VMware第三者保守サポートサービス」を恒久的に使っていただくことが目的とならないようにと考えています。そこが、他社さんの第三者保守との非常に大きな違いです。お客様にとって重要なのは、この先どのようなインフラが最もふさわしいかを考えることです。一緒に知恵を絞らせていただいてお手伝いしながら、実現するまで既存の環境をお守りする、というのが私たちのスタンスなのです。これは、IBMにはハードウェアでもソフトウェアでも様々な部門があり、多様な支援が可能だからということもあります。 平嶋: VMwareからの移行では、なにかモデルパターンを想定されているのでしょうか。 山谷氏: 移行のパターンはたくさんあると思います。Hyper-VやKVMなど他社製のハイパーバイザーへ移行することもその一つですし、これを機にクラウドへシフトするということも考えられます。お客様によっては非常に大規模で複雑なVMware基盤をお持ちの場合もあると私たちは考えており、一筋縄でいかない環境に対して、新しいインフラをどう構想するか、また移行するか、そして稼働後にどう運用保守していくか、といったところまでご相談に乗ることが可能です。 山口氏: そういう意味では、金融業界のお客様はこう、製造業のお客様はこう、と、お客様の業種・業態によってもさまざまなパターンが考えられるかもしれないですね。IBMは全ての業種・業態のお客様とリレーションがありますので、そうしたナレッジも活かしながら、お客様にヒアリングをさせていただき、システム移行を一緒に検討していければと考えています。また、検討フェーズではパートナー企業の存在、また共創も重要で、ここはNI+C P様に主導権を握っていただければ。「こういう提案をしたい」といただいた声に対して、「それならこのようなソリューションがあります」と応えていきたいと考えています。 余裕を持った最適解の選択をNI+C Pもサポート 平嶋: こうして見ると、「VMware第三者保守サポートサービス」には、大きく4つのメリットがありそうです。1つ目は、 サポート保守なしリスクを伴う運用を防ぎ、万一の障害にも備えられること。2つ目は、 それでいながらコストを最適化できること。3つ目は、ベストエフォートではあるけれど、グローバルレベルでVMwareの高い知見を収集できるIBMの特性を活かした、安心感の高いサポートを受けられること。4つ目は、既存のインフラ環境の“次”を見据えて検討し、実現できるパートナーを持てること。4つ目に関しては、ぜひ当社も貢献したいですね。 山口氏: お客様には、この「つなぎ保守」のメリットを活用し、インフラ環境のマイグレーションやモダナイゼーションに成功していただきたいと思います。 平嶋: インフラ環境の移行は長期的な計画が必要です。このサービスを活用することで「時間」と「安心」を確保でき、拙速を避けて、余裕を持って最適解を選ぶことができます。NI+C Pでは、IBMのハードウェア(保守を含めたサービスやサーバー、ストレージ)とソフトウェア(Storage Fusion、watsonxなど)を組み合わせた最適なソリューションを示すことができます。また、製品の特長やユースケースを分かりやすく説明し、お客様課題の解決策も提案させていただきます。VMware問題でお困りの際は、ぜひお気軽にご相談いただければと思います。 .recommend-list{ margin-top: 0px; } ol.recommend-list li { color: #9b9b9b; } #recommend{ font-family: "Noto Sans Japanese"; font-size: 16px; font-weight: 700; color: #9b9b9b; border: none; padding: 0; margin-bottom: 10px; } .highlighter { background: linear-gradient(transparent 50%, #ffff52 90% 90%, transparent 90%); } .anchor{ display: block; margin-top:-20px; padding-top:40px; } .btn_A{ height:30px; } .btn_A a{ display:block; width:100%; height:100%; text-decoration: none; background:#eb6100; text-align:center; border:1px solid #FFFFFF; color:#FFFFFF; font-size:16px; border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; box-shadow:0px 0px 0px 4px #eb6100; transition: all 0.5s ease; } .btn_A a:hover{ background:#f56500; color:#999999; margin-left:0px; margin-top:0px; box-shadow:0px 0px 0px 4px #f56500; } .bigger { font-size: larger; } .interviewee { font-weight: bold; } figcaption { color: #7c7f78; font-size: smaller; } #box03 { position: relative; margin: 4em 0; padding: 0.5em 1em; border: solid 3px #95ccff; border-radius: 8px; } #box03 .box-title { position: absolute; display: inline-block; top: -13px; left: 10px; padding: 0 9px; line-height: 1; font-size: 19px; background: #FFF; color: #95ccff; font-weight: bold; } #box03 p { margin: 5px; padding: 0; font-weight: bold; } #box04 { position: relative; margin: 4em 0 0 0; padding: 0.5em 1em; border: solid 3px #3193CA; } #box04 .box-title { position: absolute; display: inline-block; top: -27px; left: -3px; padding: 0 9px; height: 25px; line-height: 25px; font-size: 17px; background: #3193CA; color: #ffffff; font-weight: bold; border-radius: 5px 5px 0 0; } #box04 p { margin: 0; padding: 0; } #box_blockquote { position: relative; margin: 4em 0; padding: 0.5em 1em; border: solid 3px #8d8d8d; } #box_blockquote .box-title { position: absolute; display: inline-block; top: -27px; left: -3px; padding: 0 9px; height: 25px; line-height: 25px; font-size: 17px; background: #8d8d8d; color: #ffffff; font-weight: bold; border-radius: 5px 5px 0 0; } #box_blockquote p { margin: 0; padding: 0; } .memo{ color:#53851b ; background-color: #c8d7b7; font-size:70%; } #blockquote_nicp{ padding:10px; margin-bottom:0px; background-color:#ffffff; } #blockquote_nicp_link{ color:#7c7f78; font-size:70%; } #h5_nicp{ font-size: 12px; padding:4px 10px; border:none; background-color:#afd2f453; }

2025年12月24日

【イベントレポート】Automation テクニカルワークショップ第一回 開催しました

公開日:2025-12-24 こんにちは。てくさぽBLOGメンバーの和田です。 2025年11月26日に「Automation テクニカルワークショップ」第一回を開催しました。 本ワークショップは、2025年7月および9月に実施した「watsonx Orchestrate ハンズオンセミナー」に続く取り組みとして、IBM Automation製品群の中で弊社が注力しているAIOpsソリューションを中心に企画検討し、利用イメージがつきやすいInstanaのハンズオンを実施しました。 ハンズオンだけでなくワークショップ形式でのセッションを通じて、ITシステム運用の現場で直面する課題をどのように解決できるのか、Instanaを活用した具体的な方法を参加者同士が議論しました。また、セッションの最後には各チームごとに成果を発表・共有する場を設け、Instanaに対する理解を深めるとともに、参加者間の交流を促進することを目的としました。 本ブログでは、このテクニカルワークショップの内容について簡単にご紹介いたします。 目次 ワークショップアジェンダ Instana概要 Instanaハンズオン グループワーク まとめ お問い合わせ ワークショップアジェンダ ワークショップのアジェンダについては以下の通り実施いたしました。 IBM AIOpsソリューション概要 Instana 座学 Instana ハンズオン Instana最新情報 グループワーク IBM AIOpsソリューション概要では、IBMが取り揃えているAIOpsソリューションのラインナップと利用シーンをご紹介し、その中でもお客様のROIが高いお勧めのソリューションをピックアップしてご紹介しました。 また、Instana最新情報ではIBM様にご登壇いただき、DBMarlinとの連携やAIでの監視支援、LLMのトークン数を収集できる機能など最新アップデート情報をご紹介いただきました。 Instana概要 Instanaについては過去にこちらの記事でご説明しております。 今回はInstanaのAgentを導入することからハンズオンで実施しますので、Instana Agentがどのようにデータを収集するかについてご説明します。 InstanaはAgentのセンサー機能が監視対象を自動検出してデータ収集します。 Agent自体がセンサー機能を持っているわけではなく、Agentインストール後にセンサー機能をインストールし、そのセンサー機能で各コンポーネントを検出しデータを収集しています。 Instana Agentは収集したデータをInstana バックエンド(SaaSもしくは自己ホスト)に送信します。   Instanaハンズオン Instana Agentの導入からInstanaでの情報確認、障害発生時のエラー発生箇所確認をハンズオンで体験頂きました。 実施内容 環境の説明/ログイン Instana Agentのインストール インフラストラクチャー情報確認 アプリケーション設定/アプリケーション情報確認 アラートチャネル作成/アラート設定 障害注入/エラー発生箇所確認   今回のハンズオンではサンプルアプリケーションを導入してあるサーバーを参加人数分ご用意したので、参加者の方々全員がInstana Agentの導入を体験いただけました。 ハンズオンではInstana Agentの導入を行うためCLIでサーバーにログインいただきました。 普段CLIを利用されないかたもいらっしゃったのでログインに苦戦された方もいましたが、AgentのインストールはLinuxの場合ワンライナーで導入できるため、Agent導入はスムーズに行えてました。 実際にAgent導入したサーバの情報やアプリケーションの情報をみていただくことで、Instanaではどういった情報が表示されるのか、どういった操作感なのかを体験していただけました。 また、サンプルアプリケーションにエラーを発生させるスクリプトもご用意しましたので、実際にエラーが起きた場合正常時と比較しどのように見えるか、アラート設定をした場合、どのような通知がくるのかを体験いただきました。 その他のハンズオンについて詳しく知りたい方は、ブログの最後に記載している「お問い合わせ」までお気軽にご連絡ください。 グループワーク 今回、ハンズオンだけでなくITシステム運用の現場における課題を洗い出し、それらの課題を解決する手段としてInstanaがどう使えるかという観点でチームに分かれてグループワークを行いました。 1チーム4,5人の合計3チームに分かれてNI+C Pメンバーがファシリテートしながらアイディア出し・ディスカッションを行いました。 当日上がった課題及びInstanaを活用することで改善できることをいくつかピックアップします。 運用の属人化がおきている 障害原因の特定までをInstanaがガイドしてくれるためどんな人でも対応できる ログの分析に時間がかかる Instanaの画面上でログの確認・分析ができるため時間短縮できる ご参加して頂いたパートナー様が携わっていらっしゃる業務や、業務の経験年数が異なることより多様な意見が出ておりました。 アドバイザーで参加いただいたIBM様も含め、各チーム貴重な意見交換をできるグループワークとなりました。 グループワークの感想について、「他の会社の意見が聞けてよかった」や、「Instanaを利用するシーンがより理解できた」といったような意見をいただきました。 まとめ このたび、Automation製品に関する初めてのワークショップを無事に開催することができ、安堵しております。 ご参加いただいた皆様からのアンケートでは、「はじめてInstanaに触れましたが、実際に障害が発生した際の挙動を見ることができたうえ、他社の方々との交流や意見交換の機会もあり、大変有意義な時間となりました」とのご意見をいただきました。このようなお声をいただけたことで、準備を重ねてきた甲斐があったと感じ、心より嬉しく思っております。 今後も、製品を実際に体験いただけるハンズオンや、参加者同士が交流・情報共有を行えるワークショップを継続的に開催してまいります。ご興味ある方は是非ご参加いただけますと幸いです。 また、「こんなことをやってほしい」「この製品を使ったワークショップをお願いしたい」といったご要望がございましたら、ぜひお気軽にお聞かせください。 お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社 技術企画本部 E-mail:nicp_support@NIandC.co.jp   .bigger { font-size: larger; } .highlighter { background: linear-gradient(transparent 50%, #ffff52 90% 90%, transparent 90%); } .anchor{ display: block; margin-top:-20px; padding-top:40px; } .btn_A{ height:30px; } .btn_A a{ display:block; width:100%; height:100%; text-decoration: none; background:#eb6100; text-align:center; border:1px solid #FFFFFF; color:#FFFFFF; font-size:16px; border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; box-shadow:0px 0px 0px 4px #eb6100; transition: all 0.5s ease; } .btn_A a:hover{ background:#f56500; color:#999999; margin-left:0px; margin-top:0px; box-shadow:0px 0px 0px 4px #f56500; } .table { border-collapse: collapse; border-spacing: 0; width: 100%; } .td { padding: 10px; vertical-align: top; line-height: 1.5; } .tbody tr td:first-child { font-weight: bold; width: 20%; } .tbody tr td:last-child { width: 80%; } .ul { margin: 0 !important; padding: 0 0 0 20px !important; } .ol { margin: 0 !important; padding: 0 0 0 20px !important; } .tr { height: auto; } .table { margin: 0; } *, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; } .html { -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 62.5%; } .btn, a.btn, button.btn { font-size: 1.6rem; font-weight: 700; line-height: 1.5; position: relative; display: inline-block; padding: 1rem 4rem; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: all 0.3s; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; letter-spacing: 0.1em; color: #212529; border-radius: 0.5rem; } a.btn--orange { color: #fff; background-color: #eb6100; border-bottom: 5px solid #b84c00; } a.btn--orange:hover { margin-top: 3px; color: #fff; background: #f56500; border-bottom: 2px solid #b84c00; } a.btn--shadow { -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3); box-shadow: 0 3px 5px rgba(0, 0, 0, .3); }

2025年12月24日

【てくさぽBLOG】IBM watsonx OrchestrateでAIエージェント開発してみた(Part1)

こんにちは。てくさぽBLOGメンバーの高村です。 8月は「【てくさぽBLOG】IBM watsonx OrchestrateのADKを使ってみた」でADKの操作感や感想をご紹介しました。今回は、2025年6月のアップデート後のwatsonx OrchestrateのUIからエージェントを開発し、操作感や感想を2回に分けてご紹介いたします。なお、Part2ではエージェントのデモ動画もご紹介する予定ですのでぜひご期待ください! 目次 はじめに サンプルエージェントのシナリオ サンプルエージェント開発 さいごに お問い合わせ はじめに 6月のアップデートで、watsonx Orchestrateはメニュー構成・操作方法・機能名称が変更されました。例えば、従来「Skill」と呼ばれていたものが「Tool」に変更されています。Toolとは、AIエージェントが呼び出して実行するアクションの部品と考えて頂ければと思います。ユーザーがチャットへ自然言語で問い合わせると、AIエージェントは内容に応じて適切なツールを選択して実行します。これにより、生成AIによる要約や抽出などのテキスト処理だけでなく、外部システムやサービスと連携した処理も行うことができます。 その他の変更点については、「【イベントレポート】watsonx Orchestrate テクニカルワークショップ第一回 開催しました」内でもご紹介していますのをご参照ください。 サンプルエージェントのシナリオ サンプルエージェントのシナリオは、企画担当者が在庫商品を参照し、在庫情報に基づいて顧客へキャンペーンメールを送信する作業を想定しています。 通常は、担当者が在庫情報を確認するためにデータベースへログインし、目視でキャンペーン対象商品を選定したうえでメールの文面を作成することが想定されます。キャンペーンメール送信対象はSFAなどのシステムで確認し、メールツールを利用して送信します。振り返ると、データベース・SFA・メールツールと複数のシステムを利用し、対象商品の選定やメール内容を人力で考える必要があるため、作業は煩雑で時間と労力を要します。 watsonx Orchestrateを導入すると、AIエージェントが在庫情報と顧客情報の取得し、在庫の多い商品のキャンペーンメール文面をAIが作成し、メールの作成・送信までを一気通貫で実行することが可能です。 サンプルエージェントの開発 それではサンプルエージェントを開発します。開発ではIBM Cloud 上の watsonx Orchestrate、メールツール(Brevoに弊社アカウントを紐づけて利用)、SFA の Salesforce(弊社 Sandbox 環境)を利用します。 本記事Part1では図のピンクで囲った部分「Salesforceから顧客情報を取得」と「在庫情報の取得」をご紹介いたします。 watsonx Orchestrateへログイン・環境のご紹介 watsonx Orchestrateへのログイン方法は「【てくさぽBLOG】IBM watsonx Orchestrateを使ってみた(Part1)」をご参照ください。ログインすると下記のチャット画面に入ります。作成したAIエージェントをデプロイすると、このチャット画面から問い合わせをすることができます。 左上のメニューバーをクリックします。一番上の「Chat」をクリックすると前述のチャットインターフェース画面に遷移します。「Discover」をクリックするとwatsonx Orchestrateに事前定義されたエージェントやツールのカタログをみることができます。 「Discover」内の事前定義エージェント、ツールを簡単にご紹介します。TypeをAgentsに絞ります。事前定義エージェントとは、特定のシステムとの接続が定義されたエージェントが提供されており、環境接続設定を行うとすぐ利用することが可能です。(watsonx Orchestrateのプランによっては追加費用がかかるエージェントがございます。) TypeをToolsに絞ると特定システムで利用できるツールが提供されています。下記画面はSalesforceで利用できる事前定義ツールの一覧です。今回はSalesforceから顧客情報を取得するため「List accounts in Salesforce」と「List contacts in Salesforce」のツールを使用します。ツールの機能は下記になります。 List accounts in Salesforce:ユーザーの入力に基づき、Salesforceからアカウント情報を表示 List contacts in Salesforce:ユーザーの入力に基づき、Salesforce からアカウントの連絡先を表示 Salesforceとの接続設定 Salesforceの事前定義ツールを用いてエージェントが顧客情報を取得できるようにするため、はじめにSalesforceとの接続設定を行います。 1. Salesforce側設定(コンシュマー鍵と秘密鍵の生成) Salesforceへログインし、設定>外部クライアントアプリケーション>外部クライアントアプリケーションマネージャーをクリックします。コールバックURLは「https://ご使用リージョン/mfe_connectors/api/v1/agentic/oauth/_callback」と設定します。OAuth範囲は下記画面の通りを設定します。 コンシュマー鍵と秘密鍵をクリックし、生成されたコンシュマー鍵と秘密鍵をメモをしておきます。Salesforceの設定は以上です。 2. watsonx Orchestrate側設定(接続設定と接続確認) watsonx OrchestrateのメニューからManage>Connectionsをクリックします。 接続設定の一覧が表示されるのでSalesforceを探し、鉛筆マークをクリックします。 下記画面が表示されます。Draft環境、Live環境と環境を分けて設定することができます。今回はDraftで設定します。各項目には以下を値を入力します。 Server URL:Salesforce環境のURL TokenURL:Salesforce環境のURL/services/oauth2/token Authorization URL:Salesforce環境のURL/services/oauth2/authorize ClientID:Salesforceで取得したコンシュマー鍵 Client Secret:Salesforceで取得した秘密鍵 下にスクロールし、Credential typeを選択します。Member credentialsにするとユーザーは個人の認証情報を使用してアプリケーションにアクセスできます。ここではTeam credentialsにし、チームメンバーが資格情報を使用してアプリケーションにアクセスできるようにします。最後にConnectをクリックします。 Webブラウザが開き、Salesforceのログイン画面が表示されます。ユーザ名、パスワードを入力してログインします。 watsonx Orchestrateの画面に戻り、Connectedとなっていることを確認しSaveします。 下記の様にConnectされている状態で緑のチェックがついていることを確認します。 Salesforceとwatsonx Orchestrateの接続設定は完了です。 Salesforceの事前定義ツール構成 それではエージェントを作成し、Salesforceから顧客情報を呼び出すツールをエージェントに構成していきます。 メニューのBuildをクリックします。 Create agent +をクリックしてエージェント作成画面に入ります。 Nameには任意のエージェント名、Decriptionはエージェントの説明を入力します。最後にCreateをクリックします。 下記画面が表示されます。エージェントが使用するモデルを選択します。2025年12月時点はllama-3-2-90b-vision-instruct(Default)、llama-3-405b-instruct、GPT-OSS 120B-OpenAI(via Groq)が利用できます。Agent Development Kitからは外部のLLMを紐づけることも可能です。弊社環境はgpt-oss-120bを紐づけています。今回はGPT-OSS 120B-OpenAI(via Groq)を指定します。 下にスクロールします。Welcomeメッセージとクイックスタートプロンプトを設定することができます。今回はデフォルトのままにします。 Agent Styleを設定することができます。Agent styleとはユーザの要求に対してどのように理解、決定、タスクを完了するか定義するものです。現在は DefaultとReActの2種類から選択することができます。今回はDefaultを指定します。 なお、Voice modalityではユーザとのコミュニケーションに音声を利用することができますが、今回は利用しません。 KnowledgeはエージェントでRAGを実装することができます。後程設定します。 エージェントが使用するツールを設定します。Toolset欄のAdd tool+をクリックします。 以下画面が表示されるのでCatalogをクリックします。 Appsの中からSalesforceにチェックを入れます。右側にエージェントが使用できるSalesforceのツール一覧が表示されます。 List accounts in Salesforceを選択しAdd to agentをクリックします。同様にList contacts in Salesforceも追加します。 Toolsetの画面に戻ると以下の様にツールが登録されています。 Behaviorのセクションまで下にスクロールします。Behaviorではエージェントがユーザの要求に対してどのように反応し、応答するか振る舞いを定義します。以下のように振る舞いを定義します。 ここまで設定したところでエージェントの動きを確認します。検証ではデプロイはせず右画面のPreviewから確認したいと思います。 チャットに「アカウントリストを教えて」と入力します。しばらくするとエージェントが登録したList accounts in Salesforceを使用してSalesforceからアカウント情報を取得、回答してくれました。(企業名は検証用に疑似的に作成しています) 次に担当者の連絡先を知りたいので、チャットへ「D&Gソリューションのコンタクトリストを表示して」と問い合わせます。しばらくすると、エージェントが指定した企業名をキーに「List contacts in Salesforce」を実行し、担当者名と連絡先を回答してくれました。このように、ツール自体はSalesforceからアカウント情報やコンタクトリストを取得する機能ですが、チャットで指定した企業名をキーとして、エージェントが絞り込んで回答することができます。 Salesforceの事前定義ツールの構成は完了です。 Knowledgeの構成 エージェントが在庫データから情報検索できるようにKnowledgeを構成します。2025年12月時点、構成できるデータソースはwatsonx.dataのMilvus、Elasticserch、AstraDB、カスタムサービス、watsonx Orchestrateへ直接アップロードの6つです。ここではサンプルのCSVファイルを用意し、直接watsonx Orchestrateへアップロードします。 Knowledgeセクションまでスクロールし、Add source +をクリックします。 New knowledgeをクリックします。 Select sourceからUpload filesを選択してNextをクリックします。 CSVファイルをドラッグアンドドロップしてNextをクリックします。 NameにはKnowledgeの任意の名前を、Descriptionにはユーザーからどのような要求でKnowledgeを使用するかを入力します。最後にSaveをクリックします。 下記画面の通り、Knowledgeが作成されました。 PreviewからエージェントがKnowledgeを使用して回答できるか確認します。チャットから「在庫情報を表形式で回答して」と問い合わせると下記画面のようにKnowledgeのCSVファイルデータを参照して表形式で回答されました。 矢印をプルダウンすると参照先を確認することができます。 行数が多いため、「在庫の多い上位5件を表形式で回答して」と問い合わせます。しばらくすると数量の多い上位5件の商品を表形式で回答してくれました。在庫一覧の提示だけでなく、ユーザーの要求から、情報を絞り込んだ回答も可能であることが確認できました。 Knowledgeの構成は完了です。 さいごに Part1ではAIエージェントを作成し、Salesforce環境へ接続して事前定義ツールを用いて顧客情報を取得。さらに、在庫データをKnowledgeに構成してRAGを実装しました。 今回はSalesforceの事前定義ツールとして「List accounts in Salesforce」と「List contacts in Salesforce」を構成しました。各ツールはアカウントやコンタクト情報をリストする機能ですが、List accountsの結果をAIが受け取り、ユーザーが特定の企業を指定すると、その企業のコンタクト情報を回答できることが確認できました。また、Knowledgeでは在庫データを表形式で提示するだけでなく、在庫の多い上位5件の抽出などの絞り込みも可能で、エージェント的な振る舞いを確認できました。 Part 2では、在庫の多い商品を基にAIがキャンペーンメールを作成し、コンタクト宛に送信する機能をエージェントへ実装したいと思います! お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社 技術企画本部 E-mail:nicp_support@NIandC.co.jp     .bigger { font-size: larger; } .highlighter { background: linear-gradient(transparent 50%, #ffff52 90% 90%, transparent 90%); } .anchor{ display: block; margin-top:-20px; padding-top:40px; } .btn_A{ height:30px; } .btn_A a{ display:block; width:100%; height:100%; text-decoration: none; background:#eb6100; text-align:center; border:1px solid #FFFFFF; color:#FFFFFF; font-size:16px; border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; box-shadow:0px 0px 0px 4px #eb6100; transition: all 0.5s ease; } .btn_A a:hover{ background:#f56500; color:#999999; margin-left:0px; margin-top:0px; box-shadow:0px 0px 0px 4px #f56500; } .table { border-collapse: collapse; border-spacing: 0; width: 100%; } .td { padding: 10px; vertical-align: top; line-height: 1.5; } .tbody tr td:first-child { font-weight: bold; width: 20%; } .tbody tr td:last-child { width: 80%; } .ul { margin: 0 !important; padding: 0 0 0 20px !important; } .ol { margin: 0 !important; padding: 0 0 0 20px !important; } .tr { height: auto; } .table { margin: 0; } *, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; } .html { -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 62.5%; } .btn, a.btn, button.btn { font-size: 1.6rem; font-weight: 700; line-height: 1.5; position: relative; display: inline-block; padding: 1rem 4rem; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: all 0.3s; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; letter-spacing: 0.1em; color: #212529; border-radius: 0.5rem; } a.btn--orange { color: #fff; background-color: #eb6100; border-bottom: 5px solid #b84c00; } a.btn--orange:hover { margin-top: 3px; color: #fff; background: #f56500; border-bottom: 2px solid #b84c00; } a.btn--shadow { -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3); box-shadow: 0 3px 5px rgba(0, 0, 0, .3); }

back to top