横河電機のソフトウェア開発における aws 活用事 …...~opsから始めるdevops...

38
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

Upload: others

Post on 07-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

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

Page 2: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

本日の発表内容

2

1. 会社紹介

2. 自己紹介

3. 事例紹介

4. AWS導入が成功した理由

5. 今後の予定とAWSへの期待

6. まとめ

Page 3: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

横河電機株式会社

Yokogawa Electric Corporation

大正4年(1915年) 9月1日

3,914億円(連結)

67%

18,956人(連結)

制御、計測、情報

石油、化学、ガス、電力、鉄鋼、紙パルプ、薬品、食品など

商 号

創 立

売 上 高

海外売上比率

従業員数

事業領域

お客様業種

会社概要

(2016年度実績)

3

Page 4: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

ビジネスの発展を支えるグローバル体制(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

Page 5: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

生産制御関連製品

生産制御システム

CENTUM VP

フィールド機器 / 分析計 / レコーダ

生産制御システムネットワークベース生産システム

STARDOM

安全計装システム

ProSafe-RS

レンジフリーコントローラ

FA-M3V組み込みコントローラ

e-RT3

差圧・圧力伝送器

DPharp EJX

コリオリ式質量流量計

ROTAMASS

Prime

フィールド無線用温度伝送器

YTA510

レーザガス分析計

TDLS8000

ペーパレスレコーダ

GX10/GX20ガスクロマトグラフ

GC8000

5

Page 6: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

自己紹介

名前: 藤原 匠 (ふじわら たくみ)

所属: 横河電機株式会社IAシステム&サービス事業本部 システム開発センターシステムソフトウェア技術部 ソリューション開発課

主業務:

ソフトウェア製品開発基盤の整備

ソフトウェア製品ビルド・パッケージング実施

6

Page 7: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

本日の内容につきまして

すべて、弊社のMicrosoft Windows向けソフトウェア開発のための社内インフラにおける事例となります。

7

Web開発ではなく、Windowsデスクトップアプリケーション開発におけるAWS利用事例を紹介させていただきます。

ご注意

Page 8: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

8

ここで問題です…

Page 9: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

9

答え

答え: 20年~50年プラント

制御システム

フィールド機器

工業用周辺機器

Windows OS

コンピュータハードウェア

バッテリーなど消耗品

5年 10年 20~50年

ライフサイクル

Page 10: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

10

弊社製品の特徴

高品質・高信頼

長期保証

互換性重視

Page 11: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

弊社ソフトウェア製品開発における課題

開発環境

長期間維持

迅速な提供

調達、構築、運用コスト

テスト環境

調達、構築、運用コスト

テスト実行自動化

11

Page 12: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

本日紹介させていただく事例

1. ソフトウェア製品開発環境の改善

2. ソフトウェア製品インストール済みAMIの自動作成

3. テスト環境自動構築と自動テスト実行

12

Page 13: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

13

事例1:

ソフトウェア製品開発環境の改善

Page 14: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

14

事例1: 従来のソフトウェア製品開発環境構成図

Office LAN

構成管理サーバビルドサーバ増加

老朽化故障

ビルドサーバ1 ビルドサーバ2 ビルドサーバn

Page 15: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

事例1: AWSを用いたソフトウェア製品開発環境の検討

改善案ビルドサーバをAmazon EC2インスタンスで置き替え

期待する効果ビルド用物理サーバのメンテナンスコスト0

新たな物理サーバの購入0

新規開発環境立上げ期間短縮

懸念ハイブリッドクラウド下の運用

AWSの費用

15

Page 16: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

16

事例1: AWSを用いたソフトウェア製品開発環境構成図

AWS cloud Office LAN

構成管理サーバvirtual private cloud

AWS Direct

ConnectEC2 ビルドサーバ1

旧ビルドサーバAMIs

ビルドサーバの使用感は従来と同じ

使わないサーバはAMI化

オンプレに構成管理サーバ

ビルドサーバ1 ビルドサーバ2 ビルドサーバn

従来のビルドサーバはそのまま

稼働中

未使用時は積極的に停止

EC2 ビルドサーバ2

Page 17: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

17

事例1: AWSを用いたソフトウェア製品開発環境 – サービス

Amazon Direct Connect

Amazon VPC

Amazon EC2 (Instance & AMI)

Page 18: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

事例1: AWSをソフトウェア製品開発環境へ導入した結果

機材保守作業からの開放

新規開発環境を任意のタイミングで追加可能に

Amazon EC2でビルドサーバを代替可能であることを確認

ビルドサーバをコストをかけずに維持可能に

18

Page 19: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

19

事例2,3:

ソフトウェア製品テスト環境の改善

Page 20: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

AWS用いたソフトウェア製品テスト環境の検討

改善案テスト環境をすべてAWS上で構築

弊社製品インストール済みのAMIを予め作成

テスト環境の自動展開・破棄を実現

期待する効果柔軟なテスト環境構築サービスの提供

テスト環境の構築・維持工数の削減

懸念改善案の実現性

20

Page 21: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

21

事例2:

製品インストール済みAMIの自動作成

Page 22: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

22

事例2: 製品インストール済みAMI自動作成構成図

製品ビルドに連動して、Packerが最新版インストール済みAMIを作成

ビルド管理者

Jenkins サーバ

カスタムAMI ベースAMI S3バケット

EC2インスタンス

ビルドサーバ 構成管理サーバ

Packerサーバ

AWS cloud Office LAN

virtual private cloud

AWS Direct

Connect

Run Chef

Page 23: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

23

事例2: 製品インストール済みAMI自動作成 – サービス&ツール

Amazon Direct Connect

Amazon VPC

Amazon EC2 (Instance & AMI)

Amazon S3

Jenkins

Packer

Chef

Page 24: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

事例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

Page 25: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

25

事例3:

テスト環境自動構築と自動テスト実行

Page 26: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

事例3: テスト環境自動構築と自動テスト実行環境構成図

26

弊社製品サーバ

Office LAN

開発者

カスタムAMIs

弊社製品クライアントVer.A

弊社製品クライアントVer.C

弊社製品クライアントVer.B

Jenkins

サーバ

AWS Direct

Connect

Terraform

サーバ

Terraformが設定に従い必要なシステムを構築し、その上で自動テストを実行

AWS cloud

virtual private cloud

Run test

Page 27: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

27

事例3: テスト環境自動構築と自動テスト実行環境 – サービス&ツール

Amazon Direct Connect

Amazon VPC

Amazon EC2 (Instance & AMI)

Jenkins

Terraform

Page 28: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

事例3: テスト環境自動構築と自動テスト実行環境構築結果

製品インストール済みAMIとTerraformで実現

必要なシステムを自動でAWS上に展開

作成したシステム上で、自動テストを実行可能

その他用途でも利用価値大

28

Page 29: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

29

AWS導入が成功した理由

Page 30: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

30

3つの事例を紹介させていただきましたが…

クラウドサービスに縁がなかった私達でしたが、AWSの利用開始1年と半年程度で実現できました。

短期間で、AWSを導入できた裏には3つの理由がありました。

Page 31: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

31

私達が短期間でAWSを導入できた3つの理由

1. DevOpsへ取り組み、既に成果が利用可能だったこと

2. 弊社情報システム部門がAWSユーザだったこと

3. 当初からAWS APNパートナーのサポートを受けられたこと

Page 32: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

弊社におけるDevOpsに対する取り組み

2013年からChefを基盤とするInfrastructure as Code(IaC)への取り組みを開始

Windows主体のシステム構成でもChefでIaCを実現できます

インストール作業を繰り返す開発・テスト・出荷作業で効果絶大

現在までにインストールに必要だった数千時間を削減!

32

IaCへの取り組みは、費用対効果が非常に高いです。取り組みを開始されることをおすすめします。

Page 33: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

33

AWSサービスとInfrastructure as Code

AWSサービスとIaCは、相性抜群

Chef Software Chef

•OS上のインストール、設定を行う

HashiCorp Packer

• カスタムAMIを作成する

HashiCorp Terraform

• AWSのサービスを自動展開する

Page 34: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

34

弊社情報システム部門がAWSユーザだったこと

AWS先行ユーザだった弊社情報システム部サポートの下スムーズにAWSの使用を開始できました

AWS Direct Connectによる専用線経路提供

社内情報システムのポリシー・ルールに従いつつ、事業部門の要求をAWSサービスへどう落とし込むかを0ベースで検討

攻める情報システム部門は、DevOpsを加速します

Page 35: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

35

当初からAPNパートナーのサポートを受けられたこと

APNプレミアコンサルティングパートナーである株式会社サーバーワークス様にAWS導入初期からサポートを依頼

AWSサービス使用開始時のサポート

AWS特有の勘所についての情報共有

システム構築

Photo by Ty Nigh - Trail Guide - Ranger Rick / Adapted.

AWSノチカミチハアッチデス

Page 36: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

今後予定しているAWS利用案件と、AWSに期待すること

今後予定しているAWS利用案件

サーバーレスへのチャレンジ

ソフトウェア品質解析基盤の構築

全ビルドサーバをAWSへAll-in

AWSに期待すること

旧Windows OS向けAmazon EC2インスタンス利用環境の末永い維持をお願いいたします。

36

Page 37: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

まとめ

Windowsアプリ開発でも、AWSサービスを活用可能

Infrastructure as Codeでソフトウェア開発全体を加速

Dev Ops IT Partnerの相互協力によりAWS導入に成功

37

Page 38: 横河電機のソフトウェア開発における AWS 活用事 …...~Opsから始めるDevOps ~ AWS Summit Tokyo 2017 横河電機のソフトウェア開発における AWS活用事例

Have a nice cloud journey ☺

ご清聴ありがとうございました

38

ここで使用されている会社名、商品名は、各社の登録商標または商標です。