横河電機のソフトウェア開発における aws 活用事 …...~opsから始めるdevops...
TRANSCRIPT
AWS Summit Tokyo 2017 | May 31, 2017 | Rev 3.8
© Yokogawa Electric Corporation
~ Opsから始めるDevOps ~
AWS Summit Tokyo 2017
横河電機のソフトウェア開発におけるAWS活用事例
1
藤原 匠横河電機株式会社
IAシステム&サービス事業本部システム開発センターシステムソフトウェア技術部ソリューション開発課
May 31, 2017
本日の発表内容
2
1. 会社紹介
2. 自己紹介
3. 事例紹介
4. AWS導入が成功した理由
5. 今後の予定とAWSへの期待
6. まとめ
横河電機株式会社
Yokogawa Electric Corporation
大正4年(1915年) 9月1日
3,914億円(連結)
67%
18,956人(連結)
制御、計測、情報
石油、化学、ガス、電力、鉄鋼、紙パルプ、薬品、食品など
商 号
創 立
売 上 高
海外売上比率
従業員数
事業領域
お客様業種
会社概要
(2016年度実績)
3
C
ビジネスの発展を支えるグローバル体制(2017年1月末現在)
関係会社 国内13社 海外100社
横河電機株式会社東京 武蔵野
Yokogawa Corporation of America
(米国)
Yokogawa China
(中国)
Yokogawa Middle East & Africa(バーレーン)
Yokogawa Europe
(オランダ)
Yokogawa Electric InternationalYokogawa Engineering Asia(シンガポール)
Yokogawa Electric CIS
(ロシア)
Yokogawa America
do Sul(ブラジル)
Yokogawa Electric
Korea(韓国)
グローバルオペレーション
4
生産制御関連製品
生産制御システム
CENTUM VP
フィールド機器 / 分析計 / レコーダ
生産制御システムネットワークベース生産システム
STARDOM
安全計装システム
ProSafe-RS
レンジフリーコントローラ
FA-M3V組み込みコントローラ
e-RT3
差圧・圧力伝送器
DPharp EJX
コリオリ式質量流量計
ROTAMASS
Prime
フィールド無線用温度伝送器
YTA510
レーザガス分析計
TDLS8000
ペーパレスレコーダ
GX10/GX20ガスクロマトグラフ
GC8000
5
自己紹介
名前: 藤原 匠 (ふじわら たくみ)
所属: 横河電機株式会社IAシステム&サービス事業本部 システム開発センターシステムソフトウェア技術部 ソリューション開発課
主業務:
ソフトウェア製品開発基盤の整備
ソフトウェア製品ビルド・パッケージング実施
6
本日の内容につきまして
すべて、弊社のMicrosoft Windows向けソフトウェア開発のための社内インフラにおける事例となります。
7
Web開発ではなく、Windowsデスクトップアプリケーション開発におけるAWS利用事例を紹介させていただきます。
ご注意
8
ここで問題です…
9
答え
答え: 20年~50年プラント
制御システム
フィールド機器
工業用周辺機器
Windows OS
コンピュータハードウェア
バッテリーなど消耗品
5年 10年 20~50年
ライフサイクル
10
弊社製品の特徴
高品質・高信頼
長期保証
互換性重視
弊社ソフトウェア製品開発における課題
開発環境
長期間維持
迅速な提供
調達、構築、運用コスト
テスト環境
調達、構築、運用コスト
テスト実行自動化
11
本日紹介させていただく事例
1. ソフトウェア製品開発環境の改善
2. ソフトウェア製品インストール済みAMIの自動作成
3. テスト環境自動構築と自動テスト実行
12
13
事例1:
ソフトウェア製品開発環境の改善
14
事例1: 従来のソフトウェア製品開発環境構成図
Office LAN
構成管理サーバビルドサーバ増加
老朽化故障
ビルドサーバ1 ビルドサーバ2 ビルドサーバn
事例1: AWSを用いたソフトウェア製品開発環境の検討
改善案ビルドサーバをAmazon EC2インスタンスで置き替え
期待する効果ビルド用物理サーバのメンテナンスコスト0
新たな物理サーバの購入0
新規開発環境立上げ期間短縮
懸念ハイブリッドクラウド下の運用
AWSの費用
15
16
事例1: AWSを用いたソフトウェア製品開発環境構成図
AWS cloud Office LAN
構成管理サーバvirtual private cloud
AWS Direct
ConnectEC2 ビルドサーバ1
旧ビルドサーバAMIs
ビルドサーバの使用感は従来と同じ
使わないサーバはAMI化
オンプレに構成管理サーバ
ビルドサーバ1 ビルドサーバ2 ビルドサーバn
従来のビルドサーバはそのまま
稼働中
未使用時は積極的に停止
EC2 ビルドサーバ2
17
事例1: AWSを用いたソフトウェア製品開発環境 – サービス
Amazon Direct Connect
Amazon VPC
Amazon EC2 (Instance & AMI)
事例1: AWSをソフトウェア製品開発環境へ導入した結果
機材保守作業からの開放
新規開発環境を任意のタイミングで追加可能に
Amazon EC2でビルドサーバを代替可能であることを確認
ビルドサーバをコストをかけずに維持可能に
18
19
事例2,3:
ソフトウェア製品テスト環境の改善
AWS用いたソフトウェア製品テスト環境の検討
改善案テスト環境をすべてAWS上で構築
弊社製品インストール済みのAMIを予め作成
テスト環境の自動展開・破棄を実現
期待する効果柔軟なテスト環境構築サービスの提供
テスト環境の構築・維持工数の削減
懸念改善案の実現性
20
21
事例2:
製品インストール済みAMIの自動作成
22
事例2: 製品インストール済みAMI自動作成構成図
製品ビルドに連動して、Packerが最新版インストール済みAMIを作成
ビルド管理者
Jenkins サーバ
カスタムAMI ベースAMI S3バケット
EC2インスタンス
ビルドサーバ 構成管理サーバ
Packerサーバ
AWS cloud Office LAN
virtual private cloud
AWS Direct
Connect
Run Chef
23
事例2: 製品インストール済みAMI自動作成 – サービス&ツール
Amazon Direct Connect
Amazon VPC
Amazon EC2 (Instance & AMI)
Amazon S3
Jenkins
Packer
Chef
事例2: 製品インストール済みAMI自動作成構築結果
ChefとPackerを組み合わせて実現
製品ビルドフローへAMI自動作成を統合
必要な時に必要な製品インストール済み環境を使用可能
AMI自動作成・保管に必要な費用も格安
AMI作成にかかる費用: $0.099 / Version
➢EC2: t2.medium $0.082 x 1H + EBS: GP2 100GB $0.017 x 1H
AMI保管にかかる費用: 月額 $0.75 / Version
➢S3: 30GB
24
25
事例3:
テスト環境自動構築と自動テスト実行
事例3: テスト環境自動構築と自動テスト実行環境構成図
26
弊社製品サーバ
Office LAN
開発者
カスタムAMIs
弊社製品クライアントVer.A
弊社製品クライアントVer.C
弊社製品クライアントVer.B
Jenkins
サーバ
AWS Direct
Connect
Terraform
サーバ
Terraformが設定に従い必要なシステムを構築し、その上で自動テストを実行
AWS cloud
virtual private cloud
Run test
27
事例3: テスト環境自動構築と自動テスト実行環境 – サービス&ツール
Amazon Direct Connect
Amazon VPC
Amazon EC2 (Instance & AMI)
Jenkins
Terraform
事例3: テスト環境自動構築と自動テスト実行環境構築結果
製品インストール済みAMIとTerraformで実現
必要なシステムを自動でAWS上に展開
作成したシステム上で、自動テストを実行可能
その他用途でも利用価値大
28
29
AWS導入が成功した理由
30
3つの事例を紹介させていただきましたが…
クラウドサービスに縁がなかった私達でしたが、AWSの利用開始1年と半年程度で実現できました。
短期間で、AWSを導入できた裏には3つの理由がありました。
31
私達が短期間でAWSを導入できた3つの理由
1. DevOpsへ取り組み、既に成果が利用可能だったこと
2. 弊社情報システム部門がAWSユーザだったこと
3. 当初からAWS APNパートナーのサポートを受けられたこと
弊社におけるDevOpsに対する取り組み
2013年からChefを基盤とするInfrastructure as Code(IaC)への取り組みを開始
Windows主体のシステム構成でもChefでIaCを実現できます
インストール作業を繰り返す開発・テスト・出荷作業で効果絶大
現在までにインストールに必要だった数千時間を削減!
32
IaCへの取り組みは、費用対効果が非常に高いです。取り組みを開始されることをおすすめします。
33
AWSサービスとInfrastructure as Code
AWSサービスとIaCは、相性抜群
Chef Software Chef
•OS上のインストール、設定を行う
HashiCorp Packer
• カスタムAMIを作成する
HashiCorp Terraform
• AWSのサービスを自動展開する
34
弊社情報システム部門がAWSユーザだったこと
AWS先行ユーザだった弊社情報システム部サポートの下スムーズにAWSの使用を開始できました
AWS Direct Connectによる専用線経路提供
社内情報システムのポリシー・ルールに従いつつ、事業部門の要求をAWSサービスへどう落とし込むかを0ベースで検討
攻める情報システム部門は、DevOpsを加速します
35
当初からAPNパートナーのサポートを受けられたこと
APNプレミアコンサルティングパートナーである株式会社サーバーワークス様にAWS導入初期からサポートを依頼
AWSサービス使用開始時のサポート
AWS特有の勘所についての情報共有
システム構築
Photo by Ty Nigh - Trail Guide - Ranger Rick / Adapted.
AWSノチカミチハアッチデス
今後予定しているAWS利用案件と、AWSに期待すること
今後予定しているAWS利用案件
サーバーレスへのチャレンジ
ソフトウェア品質解析基盤の構築
全ビルドサーバをAWSへAll-in
AWSに期待すること
旧Windows OS向けAmazon EC2インスタンス利用環境の末永い維持をお願いいたします。
36
まとめ
Windowsアプリ開発でも、AWSサービスを活用可能
Infrastructure as Codeでソフトウェア開発全体を加速
Dev Ops IT Partnerの相互協力によりAWS導入に成功
37
Have a nice cloud journey ☺
ご清聴ありがとうございました
38
ここで使用されている会社名、商品名は、各社の登録商標または商標です。