Upload
no-bu
View
471
Download
7
Embed Size (px)
Citation preview
Y Masatani, National Institute of Informatics
運用作業の証跡も,再利用する手順の記述も,教材作成も Literate Computing てやってみる
toward Literate Computing for Reproducible Infrastructure
Y Masatani NII
Y Masatani, National Institute of Informatics
http://try.jupyter.org 1
Y Masatani, National Institute of Informatics
現実の問題として..
日々の運用作業の証跡を記録
そこから手順を整理して再利用する
マニュアルや教材を整備する
これら複数局面での計算機利用を、同じような粒度、
シームレスな方法で記述・蓄積したい
複数局面,, 対象が異なっても
2
Y Masatani, National Institute of Informatics
Automation ではなく.. Communication “as Code”(コード化)= Coding Style を適用する • 作業手順が Code になる / 作業手順の正当性がプログラムコードのように検証可能 / 実行結果も機械的に検証可能
• 記述言語の能力 / 記述に基づく機械化・自動化ツールの利便性
現場的には Communication が大切… • スキルセットが異なる当事者間においても.. 個々の作業の再現性を担保したい..
• インフラの状態やそこに至るまでの経緯を理解し易くする..
• その上で作業をカスタマイズ・再利用すると言ったプロセス自体も(Code として)見える化
• 伝達可能にすること,蓄積・発展させること
“Literate Computing for Reproducible Infrastructure” – Open Communication about Design and Process through Notebook
3
Automation ?
Y Masatani, National Institute of Informatics
記述・ドキュメントの..「形」は何にしたがう..
ソフトウェアのアーキテクチャ
収容構成
運用の体制
当事者たる人間の関係性
蓄積と発展
4
機能に従う
失敗に従う
Social な “Literacy”
Y Masatani, National Institute of Informatics
経緯 - retrospective & prospective narratives インフラ運用において伝達・共有したいこと…
過去に起こった経緯(いきさつ)これから起こるであろう経緯(なりゆき)
トレーサビリティの把握
ü “Who” (誰が) - “When did” (いつ) - “in What operation” (何をどうして) with “intention; Why” (どういうつもりが), then “Consequences happened” (どうなった)
ü 作業対象としてのインフラが,現在どうなっているか理解したい
複数作業間の依存関係,文脈の把握
ü When(どういう時に)Why(なんのために)What Operation(何をどうして)Consequence(どうなって欲しいのか)
ü やり直しの効く範囲はどこまでか,戻せるのか
ü (状況が変わったら,失敗したら)どこまで戻ればよいのか
ü 回復できないポイントとその回避可能性
ü 依存関係が恒常的なのか一時的なのか
ü 事前,事後の依存する作業
ü 分離できる条件と範囲, 作業の構造を見通したい
5
Y Masatani, National Institute of Informatics
Individual 個々人による探索・試行錯誤
Collaborative 複数人でアイデアを共有・レビューして発展
Production 複数のグループによる展開,実用化
Publication & Communication
Education
Lifecycle of a Scientific Idea ≒ Engineering Practices 6
Y Masatani, National Institute of Informatics
Who would / could document?
かつて Literate Programming というのがあった..
インフラの面倒を見る人の間で..
ドキュメンテーション「大変」であることを
Notebook を媒介に..
コミュニケートできる..ということ!
7
ドキュメンテーションやら 運用の見える化やら
気持ちは近しい..
Y Masatani, National Institute of Informatics
Literate Computing for Reproducible Infrastructure 8
Bare Metal Cloud
< Live Codes >
< Outputs >
refactor operations
run notebooks as live codes write reproducible
operations as notebooks
keep outputs for tractability and reproducibility
communicate via notebookcommunicate via notebook
share and elaborate narrative stories
share and elaborate narrative stories
self administration reproducible workflows
accelerated experiments
Ansible Playbook & Jupyter Notebook
Reference Patterns
Expert Engineer Apprentice Engineer Expert User Participant User
Y Masatani, National Institute of Informatics