• 検索結果がありません。

Agenda n 自己紹介 & 私たちのチームの紹介 n 私たちが目指していること n SHIFT 紀元前 : OSS ミドルウェアのおすすめパターン化 n Project SHIFT & SHIFT ware n SHIFT ware" 公開 n まとめ Copyright 2017 TIS In

N/A
N/A
Protected

Academic year: 2021

シェア "Agenda n 自己紹介 & 私たちのチームの紹介 n 私たちが目指していること n SHIFT 紀元前 : OSS ミドルウェアのおすすめパターン化 n Project SHIFT & SHIFT ware n SHIFT ware" 公開 n まとめ Copyright 2017 TIS In"

Copied!
42
0
0

読み込み中.... (全文を見る)

全文

(1)

2017年9月2日

TIS株式会社 OSS推進室

溝口 則行

Ansibleによる自動構築

ベストプラクティスを

OSS

で公開

OSC2017 Chiba

配布用

(2)

2

Agenda

n

自己紹介

&

私たちのチームの紹介

n

私たちが目指していること

n

SHIFT紀元前:

OSSミドルウェアのおすすめパターン化

n

Project SHIFT & SHIFT ware

n

“SHIFT ware"公開

(3)

3

自己紹介

溝口 則行

, TIS株式会社 IT基盤技術本部 OSS推進室長

〜2000年代前半:

  LISPでエキスパートシステム型ビジネスアプリの開発

  UNIXとC言語を中心にしたシステム開発

  消費者向けインターネットサイトのシステム構築,運用保守

2000年代前半〜:

  TIS戦略技術センター

(現組織名)

にて技術コンサルティング

  得意分野: ・Linux/UNIX系システムでのミドルウェア

         ・性能エンジニアリング

  ミドルウェアを中心にしたOSS活用推進グループのリーダ

2015年度〜:

  OSS推進室 室長

その他:

 ・オープンソースビジネス推進協議会(OBCI) 理事

 ・OSSコンソーシアム 理事

 ・OSS運用管理勉強会 世話人

 ・経済産業省所管 情報処理技術者試験 試験委員

 ・執筆: @IT 連載「性能エンジニアリング入門」,他

 http://www.atmarkit.co.jp/fnetwork/index/index_perform.html

(4)

Copyright © 2017 TIS Inc. All rights reserved. 4

私たちのチーム

— OSS

コミュニティへの貢献: Zabbixの情報発信

機能強化

クラウド環境を

監視するた

めの

拡張機能を

OSS公開

マニュアル

だけではわか

らない

活用のノウ

ハウを書籍化

コミュニティ

活動への

参加・運営協力

ラトビア共和国・リ

ガで開催さ

れた

年次大会で

の講演

宣伝!

(5)

Copyright © 2017 TIS Inc. All rights reserved. 5

私たちのチーム

— OSS

コミュニティへの貢献: PostgreSQLの情報発信

機能強化

コンソーシアムWGリー

ダと

して検証成果を発表

PostgreSQL監視

機能をOSS公開

コミュニティからの表彰

有力メディアを通じて

検証成果を発表

宣伝!

(6)

Copyright © 2017 TIS Inc. All rights reserved. 6

私たちのチーム

— OSS

コミュニティへの貢献: Ansibleの情報発信

今年,集客力抜群な

ネタとタレント

既に満員御礼

宣伝!

(7)

Copyright © 2017 TIS Inc. All rights reserved. 7

私たちの取り組み

OpenStack技術者育成

(8)

Copyright © 2017 TIS Inc. All rights reserved. 8

私たちの取り組み

-

これまで公開してきた

OSS

TIS &

SRA

OSS

共同開発

(9)

9

私たちが目指していること

(10)

OSSの活用推進の立場から…

10

製品毎の成熟度

O

S

S

参考: IPA,「オープンソースで構築! ITシステム導入虎の巻」

http://www.ipa.go.jp/software/open/ossc/book/toranomaki.html

個別製品を越えた対応が必要

= インテグレーションが必要

Web,メール

(単体)

ワークグループ

OA

DB

(単体)

Web, AP

サーバ

業務

サービス

基幹業務

個々のOSS自体の

成熟度の問題では

く,主に活用ノウハ

ウの成熟度の問題

(11)

IT基盤技術参照モデル (策定中)

11

運用管理基盤

ハードウェア

仮想化基盤

基盤ソフトウェア

(運用サービス)

(業務アプリケーション/サービス)

サーバ(CPU) ストレージ

ネットワーク

(従来系ミドル)

Webサーバ

APサーバ

DBMS

OS

(新世代サービス系)

AI/Deep

Learning

ビッグデータ処

分散処理基盤

(共通サービス系)

認証・ID管理

メッセージング

クラスタウェ

(他)

可用性

性能・

拡張

(基盤構

築)

導入

パラメータ設計・設

構築自動化

運用サービス

運用自動化

監視

バッチジョブ管

構成管理

バックアップ

性能管理

インシデント管

セキュリティ管理

運用インテグ

レーション

オーケストレーション

サーバ仮想

SDS

SDN

(12)

推奨構成パターンの一例

12

運用管理基盤

ハードウェア

仮想化基盤

基盤ソフトウェア

(運用サービス)

(業務アプリケーション/サービス)

サーバ

(CPU)

ストレージ

ネットワーク

(従来系ミドル)

Webサーバ

APサーバ

DBMS

OS

(新世代サービス系)

AI/Deep

Learning

ビッグデータ処

分散処理基盤

(共通サービス系)

認証・ID管理

メッセージング

クラスタウェ

(他)

可用性

性能・

拡張

(基盤構

築)

導入

パラメータ設計・設

構築自動化

運用サービ

運用自動化

監視

バッチジョブ管

構成管理

バックアップ

性能管理

インシデント管

セキュリティ管理

運用インテグ

レーション

オーケストレーション

サーバ仮想

SDS

SDN

Zabbix

JobSch.

OTRS

Bacula

Apache

JBoss

Tomcat

PostgreSQL

Linux

Pacemaker

DRBD

Ansible

Serverspec

Windows

vSphere (OpenStack)

AWS

(13)

自動化をエンジンとして

品質と生産性の向上を目指す

13

運用管理基盤

ハードウェア

仮想化基盤

基盤ソフトウェア

(運用サービス)

(業務アプリケーション/サービス)

サーバ

(CPU)

ストレージ

ネットワーク

(従来系ミドル)

Webサーバ

APサーバ

DBMS

OS

(新世代サービス系)

AI/Deep

Learning

ビッグデータ処

分散処理基盤

(共通サービス系)

認証・ID管理

メッセージング

クラスタウェ

(他)

可用性

性能・

拡張

(基盤構

築)

導入

パラメータ設計・設

構築自動化

運用サービ

運用自動化

監視

バッチジョブ管

構成管理

バックアップ

性能管理

インシデント管

セキュリティ管理

運用インテグ

レーション

オーケストレーション

サーバ仮想

SDS

SDN

Zabbix

JobSch.

OTRS

Bacula

Apache

JBoss

Tomcat

PostgreSQL

Linux

Pacemaker

DRBD

Ansible

Serverspec

Windows

vSphere (OpenStack)

AWS

script

script

script

script

script

script

script

script

script

script

script

(14)

14

SHIFT紀元前:

OSSミドルウェアのおすすめパターン化

ISHIGAKI Template】

(15)

OSS推奨組合せ 「ISHIGAKI Template」

15

このとき

(16)

Copyright © 2017 TIS Inc. All rights reserved.

ISHIGAKI Template の構成パターン

16

8

-- 8 -- TIS Inc.TIS Inc.http://www.tis.jp/r/osshttp://www.tis.jp/r/oss

TIS Enterprise OSS Support

TIS Enterprise OSS Support

3種類の構成パターン

(17)

17

Project SHIFT

(18)

これまでのITインフラ構築・保守・運用

18

⼿順書

設計書

ドキュメントと実機の乖離

⼈的ミス

属⼈化・引き継ぎの課題

リニアなコスト増加

品質低下

コストアップ

(19)

これからのITインフラ構築・保守・運用

19

品質・

⽣産性・

テスト済みのコードで構築

コード

使⽤者に依存しない品質

SHIFT ware

⼿順書

設計書

コード管理による運⽤簡素化

台数に依存せず並列実⾏

SHIFT ware

(20)

20

ITインフラエンジニアは、従来の課題をクリアしつつ、技

術の変化にも対応しないといけない板挟み状態。

ITインフラエンジニアの課題

NEW

OLD

だけど…

(21)

21

ITインフラの構成を、プログラムのコードで管理する手法

Infrastructure as Code

- name: network configuraJon os_network: cloud: demo name: demo_network - name: subnet configuraJon os_subnet: cloud: demo name: demo_subnet network_name: demo_network cidr: 192.168.151.0/24 - name: router configuraJon os_router: cloud: demo name: demo_router network: provider interfaces: demo_subnet - name: instance configuraJon os_server: cloud: demo name: demo_instance_{{ item }} image: cirros flavor: m1.nano network: demo_network with_items: [1,2,3]

イコール

(22)

22

構成管理ツールによって、コードに基づきインフラが構成

される。

コードは何度実行しても同じ状態に収束するため(冪等性)、

コード=構成である。

Infrastructure as Code

Deploy / Install / Config

何回実行しても同じ状態

構成管理ツール

コード

(23)

23

しかしながら、すぐにIaCを実践できるわけではない。

IaC推進に向けての課題

やり方が変わる

コードアレルギー

学習・育成コスト

時間がない

という言い訳

(24)

24

課題に対する2方向のアプローチ。たぶんこれが王道。

TISの取り組み

ハードルDOWN↓

 コードライブラリ

 フレームワーク

 スクリプト

 ツール

スキルUP↑

 社内勉強会

 セルフハンズオン

 ナレッジ公開

 案件利用支援

(25)

25

Infrastructure as Codeを誰でも利用しやすく

ハードル

DOWN

 コードライブラリ

 フレームワーク

 スクリプト

 ツール

スキル

UP

 社内勉強会

 セルフハンズオン

 ナレッジ公開

 案件利用支援

SHIFT ware とは

(26)

SHIFT ware とは(全体像)

26 インタフェース スクリプト 設定ファイル ⽣成ツール 設定ファイル ユーザ サーバ群 実⾏ログ/テスト結果 .xlsx

.s

h

.sh .sh

Ansible

コード群

⼊ ⼒ 呼び出し ⾃動設定および テスト

Serverspec

コード群

(27)

27

SHIFT ware とは

実体は

Ansible、Serverspec のコード集

コードライブラリを利用するための

フロントエンドツール

(28)

28

SHIFT ware で出来ること

OSの、

 自動設定 / 自動テスト

ミドルウェアの、

 自動インストール / 自動設定 / 自動テスト

Bootstrapping

HW

App

MW

OrchestraJon

ConfiguraJon

OS

OrchestraJon

Cluster/Integrate

Config

Install

Deploy

Config

Install

SHIFT

(29)

29

Linux Roles

1-0001_Base

1-0102_apache

1-0103_Tomcat

1-0104_postgreSQL

1-0105_openJDK

1-0106_PrivateCA

1-0201_RedHatSatellite

1-0401_JP1Agents

1-0501_OracleClient

1-0502_OracleJRE

1-0701_LogstorageAgent

1-0801_DynatraceAgent

1-0901_DeepSecurityAgent

1-1001_UnixAgentForLDAPManager

1-1101_ES1Acquire

1-1102_ES1Logscn

Linux Base Tasks

1-0001-04_Hosts

1-0001-05_Resolv

1-0001-07_Service

1-0001-08_Ntp

1-0001-10_Selinux

1-0001-12_Crontab

1-0001-14_Lang

1-0001-17_Logrotate

1-0001-20_Nsswitch

1-0001-23_Sshd

1-0001-39_Snmp

1-0001-40_Syslog

1-0001-13_OSGroup

1-0001-16_PasswordRules

1-0001-37_SystemRunLevel

1-0001-38_InterfaceNmcli

1-0001-24_OSUser.yml

1-0001-27_Kdump

1-0001-28_Keyboard

1-0001-29_Timezone

1-0001-40_Grub

1-0001-02_Interface

1-0001-03_Network

1-0001-22_Route

1-0001-39_Bonding

1-0001-35_SetDirectory

提供するもの

-

Linux Roles

※公開するものと

は差異が

あるかもしれませ

(30)

30

Windows Roles

2-0001_Base

2-0101_Cygwin

2-0401_JP1Agents

2-0501_OracleClient

2-0701_LogstorageAgent

2-0901_DeepSecurityAgent

2-1002_LDAPManagerWindowsAgent

2-1101_ES1Acquire

2-1102_ES1Logscn

Windows Base Tasks

2-0001-002_Memory

2-0001-011_User

2-0001-012_UserGroup

2-0001-013_Uac

2-0001-024_Timezone

2-0001-025_RecoverOs

2-0001-051_Directory

2-0001-071_Hostname

2-0001-072_Interface

2-0001-073_Routing

2-0001-074_Firewall

2-0001-075_Teaming

2-0001-076_Domain

2-0001-077_IPv6Disable

2-0001-078_DnsSuffix

2-0001-079_NameResolve

2-0001-095_Feature

2-0001-096_Service

2-0001-098_Rdp

2-0001-102_ErrorReport

2-0001-103_WinUpdate

2-0001-104_Owner

2-0001-105_EventLog

2-0001-106_Registry

2-0001-107_PsExecPolicy

2-0001-109_Organization

提供するもの

-

Windows Roles

※公開するものと

は差異が

あるかもしれませ

(31)

31

Excel2YAML

」とは、Ansible、Serverspecのパラ

メータファイルをExcelで作成できるツール

(おまけとして作ったが、ウケがよく、需要は高い)

提供するもの

-

Excel2YAML

SIerはExcelが大好き

らしい

(32)

32

提供するもの

-

Excel2YAML

Property…設定・テストのパラメータを定義するファイル

こっちの方がラク

なんじゃな

いかと思うが…

(33)

33

提供するもの

-

Excel2YAML

Inventory…実行対象(ターゲット)と実行する処理

(ロール)を定義するファイル

Inventory

※AnsibleはYAMLではない

これは…

ちょっとわかる!

(34)

34

SHIFT

Repository

Linux

Win

Win

Win

Win

Win

Win

Win

Win

and more...

Linux

Linux

Linux

Linux

Linux

Linux

Linux

and more...

Ansible

Serverspec

SHIFT ware を使ってカンタンIaC

Excel2YAML

Log

SHIFT ware

Roles & Tools

SHIFT ware

VM Template

Ansible-play

Spec-play

今回は説明を省略し

たもの

もあります。

(35)

35

(36)

公開のねらい

l

  Infrastructure as Code

におけるSIer(ならでは)としての

SI

市場でパイオニア地位確立

TISのSIerとして

他社にない強みはなんだ?と言われた時に

より具体的に表現できるものの

1つとして確立したい

市場価値向上

l

労働生産性に関連する国策への社会貢献

IT

エンジニアの働き方改革への貢献~

IT企業(日本のSIerは特に)の長時間労働が問題視されているのは明らかで

それに対して

元々品質生産性向上の施策として活動していた本取り組みの成果物エッセンスを対外的に公

開することで

同業他社やユーザ等にも影響を及ぼし

ひいては結果としてIT業界/SI市場で

の長時間労働の軽減や労働生産性の向上に貢献する

社会貢献

36

(37)

SHIFT ware ~ 沿革

37

技術施策「作業レス化」

スタート

SHIFT PJ

スタート

「SHIFT ware」

本部内リリース

0.x

1.2

2.0

2.08

「SHIFT ware」

全社リリース

2.12

ISHIGAKI template

マージ

3.x

OSS

4月

4月

9月

1月

4月

9月

2015

2016

2017

(38)

IaCのスキルアップに向けて

l

ゆくゆくは

SHIFT wareユーザの誰もが

l

「Operator」から「Contributor / Committer」へ

38

SHIFT ware

Repository

Pull Request

git clone

SHIFT ware管理者

SHIFT wareユーザ

maintenance

Coding

(39)

成果の公開に向けたあれやこれや 〜 面倒なこといろいろ 〜

l

「何をどこまで公開する?公開できる?」問題

l

承認問題

l

  そもそも承認方法や承認者が決まってる?

l

クオリティ問題

l

  既存コードの品質,コード規約,

CI

の仕組み,

etc

l

ライセンスは何を選ぶ?問題

l

リポジトリをどこに置く問題 (社外はGitHub!社内はどうする?)

l

名称と商標

l

コミュニティの形成(立ち上げ)

l

プロモーション

l

  公開しちゃった後どうする?問題

39

(40)

世間に出すならクオリティもそれなりにしたい

40

(配布し

ません

)

(41)

41

SHIFT ware”公開!

    2017年9月下旬(予定)

★ コミュニティ

  SHIFT wareユーザーグループ

https://github.com

/SHIFT-ware/shift_ware/wiki/SHIFT-ware-User-Group

★ お問い合わせなど

https://groups.google.com/forum/#!forum/shiftware

すみませんが,

もうちょっとお待ちください。

(42)

参照

関連したドキュメント

「新老人運動」 の趣旨を韓国に紹介し, 日本の 「新老人 の会」 会員と, 韓国の高齢者が協力して活動を進めるこ とは, 日韓両国民の友好親善に寄与するところがきわめ

市民的その他のあらゆる分野において、他の 者との平等を基礎として全ての人権及び基本

基本目標2 一人ひとりがいきいきと活動する にぎわいのあるまちづくり 基本目標3 安全で快適なうるおいのあるまちづくり..

2030年カーボンハーフを目指すこととしております。本年5月、当審議会に環境基本計画の

基準の電力は,原則として次のいずれかを基準として決定するも

基準の電力は,原則として次のいずれかを基準として各時間帯別

土壌は、私たちが暮らしている土地(地盤)を形づくっているもので、私たちが

東京電力グループ企業倫理遵守に関する行動基準の「1.人間の尊重(3)人権の尊重」 において、私たちは、性別、信条、心身の機能、性的指向や性自