class: title, smokescreen, shelf, no-footer # <small>最小のPaaSシステムの設計と実装<br>そして解説できること</small> <div class=footnote> <small><small> Copyright (C) 2025 Ken'ichi Fukamachi, CC4.0 BY-SA-NC </small></small> </div> --- class: compact # <small>背景</small> <div class=footnote> <small><small> (脚注1) インフラ部の目的(全プロジェクト共通) <br> (脚注2) IT業界の開発とは、いわゆるタコが自分の足を食べている状態なんだが、どうも自覚がない人が多いらしい。 すでに、 大量のデータがある分野は、すべて「ほどほど」の精度で(コンピュータによる)自動化ができる状態になっている。 金の投入具合で進捗は異なるが、おそかれはやかれ全分野で同じことがおこるはず。 どこまでディスるか?は発表者に任せる:D </small></small> </div> - 「単に使い方をしっている」だけでは(長期的には)食べていけない - dockerやkubernetesしかり - 各種プログラミング言語しかり - 「動作原理を理解している」か否か?がベテランと新人(novice)との大きな差 - 謎のエラーメッセージの理由を(直感的に)推測できたり - どこを改造すればよいのか?が(直感的に)分かる --- class: compact # <small>目標</small> <div class=footnote> <small><small> </small></small> </div> 1. 最小構成のPaaSを設計&構築する 1. その説明ができるようになる(アウトプット) 1. プロジェクトメンバーの他のチームが利用できる(インフラ環境サービス) --- class: compact,img-right # <small>技術的詳細(案)</small> <div class=footnote> <small><small> (脚注1) 本当に、このとおりに実装できるかは分からない:-) <br> (脚注2) <A HREF="https://github.com/sysbuild-training/hands-on-base"> https://github.com/sysbuild-training/hands-on-base </A> がベーシステム(改造元) <br> (脚注3) <A HREF="https://github.com/sysbuild-training/www.py"> https://github.com/sysbuild-training/www.py </A> </small></small> </div>  <small> - Unixコマンドを全力で使い、少ないコード量で実現したい - docker (compose)ベース(脚注2,3) - 検討事項 - 他のユーザが理解できるように、できるだけ授業と合わせる(-> 管理システムはwww.pyベースのPythonで書く;たぶん数行の変更) - 分散システムなんだからGo言語だろう!とGo言語にする。 ただし学習コストの問題もあるので、むりにGo言語にしなくてもよい気がしてきた (Go言語版はオリジナルの計画どおり、うちの研究室の研修用に別途作成) </small>