タグ別アーカイブ: #ibmaot

IBM Cloudとは – Bluemixとの関係

IBMのクラウドは、IBM Cloudという名称に変わりました。これまでは Bluemixと呼ばれていましたが、IaaSである旧Softlayerの Bluemix Infrastructureと、PaaSである Bluemixの両方を合わせて11/1から IBM Cloudという名称に統一されました (ロゴのCloudは太字で、フォントはIBM独自のIBM Plex Sans)。

➡︎IBM Cloudのサイト

他のCloudを見ても特にIaaSとPaaSは別の名称になっていないので、IBMも合わせたという感じですね。元々IBMはSoftlayer社を買収したためIaaSとPaaSが分かれていましたが、中身的にも統合されるようです。IBM Cloudとは、Bluemixの後継であり、Bluemix時代に分かれていたIaaSとPaaSを統合したものと言って良いでしょう。

これまでも既にBluemixの画面からIaaSも選択できましたし、ユーザーIDなども統合されてきましたが、今後はさらに一体感を持って使えるようになりそうです。また「ビジネスに最適なクラウド」を売りにするようになりましたね。
ロゴも以下に変わっています。

これまでIBM Cloudのデータセンターは東京だけで、他の地域にデータセンターがないため災害対策等で弱かったのですが、以下のようにVMwareのNSXテクノロジー等を使って東阪で冗長構成を組めるようになりました。

➡︎関西地区データセンター

IBM CloudはVMwareと非常に相性が良いため、現在VMwareを使っているシステムは、すぐにIBM Cloudの乗せる(Lift)できるのも利点ですね。

Public Cloud環境ももちろん、Kubernetesでのコンテナ管理自動化やAuto-Scale含め普通に使えますが、そのPublicと同じ環境を、共有サーバーではなく自社のみのCloud上の占有環境でも使えるDedicated環境があったり、その同じ環境をさらに自社オンプレミス環境に構築できる IBM Cloud Privateも提供されます。セキュリティ制約が厳しいビジネス環境では、自社内でも クラウド・ネイティブ・アプリケーションが稼動できるのは大きなメリットでしょう。

AkamaiもIBM Cloudで利用可能になっているので、パフォーマンス対策も容易になっていますし、セキュリティ面でもFISC対応が実施されています。

また、これまでも Bluemixで Docker, Cloud Foundry, OpenStack, OpenWhisk といったオープンなクラウド・テクノロジーが使えましたが、Dockerのコンテナ管理にオープンソースの Kubernetes が全面採用され、よりオープンにDockerによるコンテナ管理ができるようになりました。

➡︎Kubernetesのコンテナ管理でクラウドにクラスタ構成

IBM Cloudで特によく使われているのは、様々なAIの機能を提供する IBM Watsonはもちろんのこと、企業が外部に対して公開するAPIのセキュリティを実現するための API Connect も多いそうです。今は金融機関を中心に、自社システムをFinTech企業などにAPI公開する事が銀行法上も努力義務化されたこともあり、API化が非常にホットになっていますね。

➡︎API事例など

それから最後は ブロックチェーン。オープンソース化されているブロックチェーンの基盤ソフト、Hyperledger Fabricの正式版v1.0がついに出て IBM Cloud上で使えるようになりました。IBM Blockchain Platformという名称で既に利用可能で、日本にデータを置く事が可能になっています。

➡︎IBM Cloudでブロックチェーンを立ち上げる方法

いよいよ進化を加速してきた IBM Cloudに期待しています!

 

Blockchain – 自分で Hyperledgerのブロックチェーンを簡単に立ち上げる方法

ブロックチェーンは難しそうだし、自分で立ち上げてみるなんて無理・・と思っていましたが意外と簡単にできました。Hyperledger Fabric v1.0 をBluemix上で無料で立ち上げてみた手順が以下です。(⇒参照URL)

Gitコマンドが使える環境では、以下のコマンドでCloneを取得することが可能です。(Macなど)

>git clone https://github.com/IBM-Blockchain/ibm-container-service

Windows等の場合は、まず以下のURLでGitにある、オープンソースのHyperledger Fabric v1.0 をベースにしている IBM Blockchain Platformを確認します。右の緑のボタンを押して「Open in Desktop」でDesktopアプリをダウンロードします。

https://github.com/IBM-Blockchain/ibm-container-service

GitHubDesktopSetup.exe (GitDesktopアプリ)を実行し、Create your free accountで新しいGitHubユーザーIDを取得するか、既存の登録IDでログインします。次に「Clone a repository」をクリックし、URLタブに先ほどの以下のURLをインプットして「Clone」します。

https://github.com/IBM-Blockchain/ibm-container-service

Windowsであればコマンド・プロンプトで、上のLocal pathで導入したローカルPCのGitHubディレクトリ(マイドキュメントの下など)の「ibm-container-service」下の「cs-offerings/free/scripts/」ディレクトリに移動して下さい。

>cd ibm-container-service
>cd cs-offerings/free/scripts/

Bluemixではコンテナ管理に全面的に Kubernetes を使うため、⇒このリンク先を見てKubernetes環境のセットアップを実施してください
(Macなど) Shell Scrptが実行できる環境であれば、そこで以下のシェルを実行すれば全てセットアップができます。

./create_all.sh

Windowsなどでシェルが実行できない環境の場合や、create_all.shで処理が完了しない場合のために、ステップごとの実行の仕方を以下に記述しておきます (⇒参照URL)。まず、kubectl.exeがあるディレクトリに、パスを通してください(以下の例はWindowsのc:\tempに置いていた場合)。

>set path=c:\temp;%path%

Windowsのコマンドプロンプトで下のコマンドを順に実行することで、上のcreate_all.shで実行しているコマンドを順に実行する事ができます。(@remで始まる行以外)

実行する前に、kube-configs ディレクトリにあると同列にあるcreate_channel.yaml.base をコピーして create_channel.yaml という名称にし、「%CHANNEL_NAME%」とあるところを、「channel1」に変更します。
同じディレクトリのjoin_channel.yaml.baseをコピーしてjoin_channel.1yaml という名称にし、「%CHANNEL_NAME%」を「channel1」に、「%PEER_ADDRESS%」を「blockchain-org1peer1:5010」に、「%PEER_MSPIDS%」を「Org1MSP」に、「%MSP_CONFIGPATH%」を「/shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp」に変更します。
そのjoin_channel1.yamlをコピーしてjoin_channel2.yaml という名称にし「channel1」はそのままで、「blockchain-org1peer1:5010」を「blockchain-org2peer1:5010」に、「Org1MSP」を「Org2MSP」に、「/shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp」を「/shared/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp」に変更します。

同じディレクトリのcomposer-rest-server.yaml.baseをコピーしてcomposer-rest-server.yaml という名称にし、「%COMPOSER_BUSINESS_NETWORK%」を「”0″」に変更します。

chaincode_install.yaml.baseをコピーしてchaincode_install1.yaml という名称にし、「%CHAINCODE_NAME%」を「mycc」に、「”%CHAINCODE_VERSION%”」を「”1.0″」に、「%MSP_CONFIGPATH%」を「/shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp」に、「%PEER_MSPID%」を「Org1MSP」に、「%PEER_ADDRESS%」を「blockchain-org1peer1:5010」に変更します。
chaincode_install1.yamlをコピーしてchaincode_install2.yaml という名称にし、「%CHAINCODE_NAME%」を「mycc」に、「”%CHAINCODE_VERSION%”」を「”1.0″」に、「%MSP_CONFIGPATH%」を「/shared/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp」に、「%PEER_MSPID%」を「Org2MSP」に、「%PEER_ADDRESS%」を「blockchain-org2peer1:5010」に変更します。

chaincode_instantiate.yaml.baseをコピーしてchaincode_instantiate.yaml という名称にし、「%CHANNEL_NAME%」を「channel1」に、「%CHAINCODE_NAME%」を「mycc」に、「”%CHAINCODE_VERSION%”」を「”1.0″」に、「%MSP_CONFIGPATH%」を「/shared/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp」に、「%PEER_MSPID%」を「Org1MSP」に、「%PEER_ADDRESS%」を「blockchain-org1peer1:5010」に変更します。

上記のように yaml ファイルを準備後、以下のコマンドを順に実行してください。

@rem create_blockchain (CA,Orderer,Peerのservice作成)
kubectl create -f ..\kube-configs\blockchain-services.yaml

@rem (serviceのデプロイ)
kubectl create -f ../kube-configs/blockchain.yaml

@rem create_channel (channel1 で作成)
kubectl create -f ../kube-configs/create_channel.yaml

@rem join_channel (channel1 で2つのPeerをJoin)
kubectl create -f ../kube-configs/join_channel1.yaml
kubectl create -f ../kube-configs/join_channel2.yaml

@rem 4つのpod(ca,orderer,org1peer1,org2peer1)確認
kubectl get pods
@rem 以下で"Peer joined the channel!"を確認
kubectl logs -f joinchannel

@rem ComposerのPlayground(練習場)とRESTサーバー作成
kubectl create -f ../kube-configs/composer-identity-import.yaml
kubectl create -f ../kube-configs/composer-playground.yaml
kubectl create -f ../kube-configs/composer-playground-services.yaml
kubectl create -f ../kube-configs/composer-rest-server.yaml

@rem ChainCodeの導入
kubectl create -f ../kube-configs/chaincode_install1.yaml
kubectl create -f ../kube-configs/chaincode_install2.yaml

@rem ChainCodeインスタンスの立ち上げ
kubectl create -f ../kube-configs/chaincode_instantiate.yaml

@rem IPアドレスの確認
bx cs workers blockchain

上記の最後のコマンドで、Bluemix上のサーバーのPublic IPアドレスが表示されるので、それを以下の「あなたのIPアドレス」のところに貼り付けて、ブラウザで表示してください。

http://あなたのIPアドレス:31080

Loading Hyperledger Composer… のメッセージの後に「Welcome to Hyperledger Composer Playground!」が表示されていたら、Hyperledgerとその上の開発フレームワークのComposerの導入が完了しています!
「Let’s Blockchain」ボタンを押して、Blockchainをエンジョイしましょう!

 

注:
No connection could be madeが表示される場合は、set KUBECONFIG=/home/…  などが実施されていない場合。

couchDBを使う場合は、blockchain-services.yamlの代わりにblockchain-couchdb-services.yaml を指定し、blockchain.yaml の代わりに blockchain-couchdb.yaml 指定

pods “joinchannel” already exists のエラーがjoin_channel実行の際に出ても特に問題ない。

pods “chaincodeinstall” already exists のエラーがchaincode_install実行の際に出ても特に問題ない。

チャネルを一度削除して作り直す場合は、以下を実行。
>kubectl delete -f ../kube-configs/create_channel.yaml

 

⇒その他の関連コマンドはこちらを参照

 

Kubernetes – コンテナ管理ツールのクバーネテスで、クラウドにクラスタを構成して分かったこと

Dockerなどコンテナ管理ツールの Kubernetes 。クラウドにコンテナからクラスタを構成するには、もう必須のツールですね。元々はGoogle社が自分のクラウド環境を管理するために使っていたものがオープンソース化されたもので、Dockerなどコンテナをクラスタ化して構成するのが得意な管理ツールです。IBM Bluemixでも全面的に採用されたため、Hyperledger (Blockchain)のクラスタを構成するために以下のようにWindows環境セットアップして使ってみました。(⇒参照URL)

コンテナ環境のセットアップ

まずは Kubernetes のコマンドラインツール (kubectl)のインストール。以下からWindows版をダウンロードして導入しました。

https://kubernetes.io/docs/tasks/kubectl/install/
⇒Windows用 v1.7 はこちらからダウンロード
(Macは一番下を参照)

次に、Bluemix用のコマンドラインツール (CLI)も以下からWindows版をダウンロード。Bluemix_CLI_….exe を実行して、LicenseをAgreeしてInstallしてください。Windowsをリブートするとコマンドが使えるようになります。

http://clis.ng.bluemix.net/ui/home.html

Bluemixのコマンドラインは、Cloud Foundry (cf) コマンド・ベースですが、cfコマンドではなく以下のBluemixコマンドでコマンドプロンプトから実行してください。(Bluemixコマンドは、以下のように bx と略しても可)
また既にBluemixのリポジトリ登録が実行されいる場合は “already registered” などのメッセージが表示されますが気にせず次に進めて大丈夫です。

>bx plugin repo-add bluemix https://plugins.ng.bluemix.net

次に以下のコマンドで、Bluemixのコンテナ・サービスのプラグインをインストールします。ファイルがローカルにダウンロードされ、導入されます。

>bx plugin install container-service -r bluemix

Bluemixへのログインと初期設定

Bluemixにログインします。まずは作成対象となるクラウド(APIエンドポイント)を指定するため以下のコマンドを実行します。(以下のngは米国南部で、英国を使う場合はeu-gb) 続きを読む Kubernetes – コンテナ管理ツールのクバーネテスで、クラウドにクラスタを構成して分かったこと

ITアーキテクチャー構築入門、発刊!

「1からはじめる ITアーキテクチャー構築入門」ついに発刊!日本IBMの現役バリバリで最新アーキテクチャーを構築しているアーキテクト16名で執筆したものです。

副題に「システム設計の基礎から実践まで」とあるように、前半はアーキテクチャーとは何かから始まり、システム設計で使うアーキテクチャー構築の基礎です。後半は、クラウドやIoT、Watsonを使う場合などの実践的なアーキテクチャー構築法になっています。

以下の表紙の左に「日経SYSTEMS」と入っているように、こちらは実は昨年一年間日経BPさんの日経SYSTEMSで連載していたアーキテクチャー構築入門の記事を、書籍にしていただいたものです。

10年以上前にも、日経IT Proの記事をベースに、日本IBMのアーキテクトが執筆したアーキテクチャーの本が出ているのですが、日経BPさんがそれを持ってきて「この新しいのを作りたいんです!」との話をいただき、私と田端さんで話を始めました。その後15人の日本IBMの現役トップ・アーキテクトに協力してもらい、書籍化が実現したものです。

前半は、IBMのアーキテクトなら全員お馴染みの、基本的なアーキテクチャー構築手順です。意図的に少しぼやかしてありますので、皆さん行間を読んで活用してみてください。 続きを読む ITアーキテクチャー構築入門、発刊!

IBM Watsonを活用した次世代超高速開発ソリューション

Watson Summit 2017で日本IBMの山口専務より発表された「IBM Watsonを活用した次世代超高速開発」ソリューションです。私も開発・展開に参加しているソリューションで、これまでのアプリケーション開発のプロジェクトを、ワトソンや自動化技術を使い、少しでも変革していこうという取り組みです。

これまでも超高速開発のソリューションというのはあり、データ定義などからアプリケーション・プログラムを自動生成しようという製品も多々ありました。しかしプロジェクトはプログラミングのワークロードだけでなく、プロジェクトの計画や管理、レポートの作成から仕様のチェックやテスト、保守や障害対応など様々な要素が含まれます。

これらのうち特に、プロジェクトの計画・管理、レポーティングなどプロジェクト・マネージャーやPMO(プロジェクト管理オフィス)が実施するような項目を、ワトソンなどで効率化するのが「コグニティブPMO」です。 続きを読む IBM Watsonを活用した次世代超高速開発ソリューション

IBM Watson Summit 2017 – ワトソン日本の実例

エリー・キーナン新社長の一声で幕をあけたWatson Summitですが、ソフトバンクさん・三井住友銀行さん・JR東日本さんが多数の ワトソン活用事例を話していただき、ワトソンも完全に実用期に入ったなという印象でした。

ソフトバンクの宮内社長は、ワトソンやITを活用したスマートワークで「働き方改革」に本格的に取り組んでいることを熱く語っていただきました。

コールセンターのオペレータの方がワトソンが活用したことで、対応時間が15%も短くなったそうです。今後はさらに効率化して、コールセンターのブースを 6000 から2000に減らしたいとおっしゃっていました。回答精度も78%から94%に上がったそうです。特に初心者のオペレータの方はとても良い助けになっているようです。

また、2000台のサーバーのネットワーク監視にもワトソンを導入し、だいたい月11回程度発生する問題に対し、メッセージをWatson NLCで分類し、Watson R&Rでランク付けすることで 最優先対応の項目を選定して対応しているそうです。ワトソンで優先度を判定するまでの時間が、なんとそれまでの1/10になったそうです! 続きを読む IBM Watson Summit 2017 – ワトソン日本の実例

IBM Watson Summit 2017 – ここまできた ワトソン

日本IBMの新社長エリー・キーナンが冒頭で話したように、昨年はAIやコグニティブって何?どう使えるの?という話が多かったWatson Summitですが、今年は具体的に企業の中でどう活用(Infuse)しているかという話が印象的な基調講演でした。

ワトソンは既に世界中で4000万人の人が使い、年内に1億人を目指しているそうです。日本でも100社以上の企業に採用いただき、業界の変革に貢献しています。私も、この一年でワトソンの利用事例がすごく広がったという実感があります。

既に東大のゲノム解析で使われていたり、Watsonサイバー・セキュリティで不正攻撃を見つけたりと、膨大なデータの中から重要なポイントを見つけ出す際に活用されている。プロフェッショナルな人をサポートしてくれるのがワトソンと、エリーが話しています。

また、シェフWatsonは人が思いつかないレシピを提示してくれるため、本にしたらよく売れたという話や、今回日本で初めて展示されたコグニティブ・ドレスの話もありました。これらはワトソンが人の想像力を高めてくれるもので、それもワトソン活用の利点だと。そのためワトソンは、より繊細な感覚に広く対応するよう認識力向上や多数の言語対応に力を注いでいるとのことです。

続きを読む IBM Watson Summit 2017 – ここまできた ワトソン

IBM InterConnect 日本の事例発表

実は我々日本IBM社員にとって最もうれしいのは、日本のお客様と一緒にGlobal IBMのカンファレンスで事例を発表できることです。IBMはアメリカの会社ではありますが、最近日本IBMのライバルは、インドIBMや中国IBMなど多数。日本としては決してIBMの中で他国に負けるわけにはいかないため、日本から世界に先駆けた先進事例をGlobalで発表できるのは、何事にも替えがたい事です。

トップのフォトのBTMU様のBlockchain – Hyperledger Fabricの事例など、今回も世界に誇れる事例をいくつも紹介することができました。本当にうれしいことです。特にBTMU様は非常の多くの人が集まる基調講演(キーノート・スピーチ)でお話いただき、日本人として勝手ながら鼻が高くなってしまいました。

また、みずほ銀行様にも発表いただき、Watsonをコールセンターで活用いただいた事例や、PepperとWatsonを連携させた支店コンシェルジュ・サービス事例、FinTechのAPI BankingによるFinTech企業との接続構築など、多くの事例を発表いただき大盛況でした。

みずほ銀行様のセッションでは、Blockchainに関する取り組みも詳しく共有いただいています。

続きを読む IBM InterConnect 日本の事例発表

IBM InterConnect 2017 基調講演

IBM InterConnectの基調講演で、Ginni Rometty会長からクラウドを活用する上でのアーキテクチャーの重要性の話がありました。IBMの会長の基調講演で「アーキテクチャー」という言葉が聞かれるのは珍しいですね。会場は以下のラスベガスのホテル、マンダレイ・ベイでした。

クラウドはもうITの世界だけでの問題ではなく、世界全体を変えている、そのクラウドをうまく使いこなすためには、AIとデータを含めたアーキテクチャーが大事ですとメッセージしました。

Watsonの音声や自然言語認識などのコグニティブ技術、機械学習(Machine Learning)などのAI技術は、これからますます発展し知識が蓄えられます。そうするとそのデータへのアクセス制御や、企業ごとの知識ベース(コーパス)のしっかりした分離をすることで、セキュアな環境にしていくことが必須です。このデータの扱い方が大事なので、「データ・ファースト」でまずデータを第一に考えなければいけない。なので「データは民主化しない」(データを自由にさせない、ちゃんと制御する)と話しました。

また、Watsonを有効に活用していくためには、しっかりした業界の知識と経験がないと、十分にWatsonをトレーニングすることができません。金融や製造などの業界知識があり、セキュリティをしっかり確保しながらAIを使いこなせるのは、IBMだけであるとアピールしていました。 続きを読む IBM InterConnect 2017 基調講演

IBM InterConnect 最新技術動向

IBMのクラウド系のカンファレンス、InterConnect 2017初日に様々な最新技術動向が発表されました。クラウドは、その上のデータとAIとアプリ(Apps)が重要とのことで、トップのフォトのようなそれを宇宙であらわしたイメージがよく使われていました。そこにいる人が、今回のホスト Arvind Krishna。昨年までのRobert LeBlancが退任するため今回からIBMのResearchとCloudを総指揮するArvindに変わりました。

そのArvindの前に登場したのは、何とTwitterのVP Chris Moodyさん。Twitterの最大の課題である、誹謗中傷(Abuse)をIBMのWatsonで見つけて解決したいと熱く語っていただきました。会場は以下のような感じで、まさにコンサート・ホールといった雰囲気です。

次にArvindが登場し、IBM Cloud戦略について語ってくれました。ちなみにブランド名としては最近、IBM Cloudで始まる名称に整理されています。そのクラウドでの全体のメッセージは、無理にまるごと全部クラウドに移行しろというのではなく、クラウドに適切なものをPublic Cloudに移行し、オンプレミスと統合していくというトーンでした。

IBM Cloudは、以下のようにDockerのコンテナやVMwareなどのプラットフォーム上に、それらを自動化するAutomation & Orchestrationが乗ります。その上にMQやKafkaなどによるインテグレーションや、マイクロサービスやNode.jsといったクラウド開発環境、さらにその上にAPI ConnectなどAPI接続基盤と、Watsonなど様々なAPI群が乗っている構造になっています。

続きを読む IBM InterConnect 最新技術動向

ProVISION – FinTech特集号リリース

IBMの技術情報誌「ProVISION」のFinTech特集号の編集長を担当させていただき、ついにリリースいたしました!

FinTechという用語が広まってから数年を経て、日本でも、APIエコノミーやブロックチェーンなどを使った金融系の良い事例が増えてきました。今回は、そういった先進事例が多くの金融のお客様の良い参考になるのではと思い、大規模銀行様の事例を中心に特集させていただいています。

以下の特集の視点でも書かせていただきましたが、2007年が一つのデジタル時代への転機になっていると思います。iPhoneやAndroidが出てきて、ブロックチェーンやワトソンなどのAI技術もこのあたりを境に技術革新が進んでいます。この2007年からちょうど10年たった今年2017年に、このような技術を応用した、しかも金融機関系での事例が多く出てきたのは決して偶然ではなく、そういった時代の流れなんだなぁと強く感じました。

FinTech特集号なので、金融系の号ではあるのですが、なぜか既に製造業のお客様からの問い合わせも多いようで、こういった金融での取り組みも多くの業種の方が関心を持っていただいているんだなと感じました。

以下のリンクから全文を読むことができますので、是非読んでみてください!

⇒ProVISION FinTech特集号

 

Watsonと会話する チャットボットの作り方

Watson Conversationを使って会話をする、チャットボットを作ってみました。(無料で始められます)
まず、上のBluemixのカタログから、Watsonの 「Conversation」 をクリックします。(⇒Bluemixが初めての方はまずこのリンクをクリック

すると以下のWatson Conversationの説明が表示されます。Conversationは、日本語など自然言語のインターフェースでのやり取りを自動化する、チャットボットを含むサービスです。[作成]をクリックし自分用の対話を作成します。

以下のようにWatson Conversationの画面が出てきますので、LoginボタンをクリックしてBluemixのIDでログインしてください。

まずWatson Conversationの作業領域である ワークスペースを作成します。以下の [Create] をクリックしてください。

以下にワークスペース名 (Name)を入力してください。私は「WhatIsWatson」と入力しましたが、好きな名称をインプットできます。言語は既にセットされていると思いますが [Japanese] を選んでください。 続きを読む Watsonと会話する チャットボットの作り方