「ソフトウェア企業でふつうに存在したインフラが存在しない」――本田技研工業(ホンダ)が5月19日に同社のテックブログで公開した記事「ソフトウェアエンジニアがHondaに転職して感じたこと4選」が話題だ。
「ソフトウェア開発インフラが整ってない」――“赤裸々すぎ”と話題のホンダテックブログ、突然の記事削除 「逆に印象悪い」の声も - ITmedia NEWS
IT業界から自動車業界に転職し、ホンダに務めて2年目という社員がつづる赤裸々な内容が「公式ブログらしからぬギリギリな内容だ」とXなどで注目を浴びたが、20日になって記事を削除。「逆に印象が悪い」などと波紋を呼んでいる。
「ソフトウェア開発インフラが整ってない」――“赤裸々すぎ”と話題のホンダテックブログ、突然の記事削除 「逆に印象悪い」の声も - ITmedia NEWS
⇧ 何と言うか、
『「ソフトウェア企業でふつうに存在したインフラが存在しない」』
については、あなたが意識できていないだけであって、インフラエンジニアの方、乃至は、他のソフトウェアエンジニアの方々が、頑張って環境を構築してくれたのであって、何もないところから自然に誕生するわけでは無いのよね...
「ソフトウェア企業」における「インフラ」であろうが、試行錯誤して苦労した人たちのおかげで存在しているのだと思うのだが...
By the way、
Microsoftが、Linuxカーネルを仮想マシン内で実行するためのシステムである「Windows Subsystem for Linux(WSL)」をオープンソース化し、ソースコードをGitHubに公開したことを、2025年5月20日に開催したイベント「Microsoft Build 2025」で発表しました。
MicrosoftがWindows Subsystem for Linux(WSL)をオープンソース化してコードをGitHubに公開 - GIGAZINE
About
Windows Subsystem for Linux (WSL) is a powerful way for you to run your Linux command-line tools, utilities and applications, all unmodified and directly on Windows without the overhead of a traditional virtual machine or dual boot setup.
⇧「WSL(Windows Subsystem for Linux)」のソースコードが「GitHub」上で公開されたらしい。
残念ながら、「WSL(Windows Subsystem for Linux)」の構成要素に関する概要図は公式のドキュメントでは公開されていないようなのだが、
⇧ ブログの方で、近しい図は公開されていた。
ちなみに、
⇧ 上記サイト様によりますと、元々は「デスクトップ」向けの用途として開発が進められていたものが、「仮想GPU(vGPU:virtual Graphics Processing Unit)」にも対応するプロジェクトが進行してるらしい。
兎にも角にも、「Microsoft」には限らず、公式のドキュメントでシステム構成概要図を公開してもらって各々の構成要素の関係性を全体で俯瞰で把握できるようにして欲しいよね...
Azure シリアル コンソールとは
相も変わらず、「Microsoft」のドキュメントが酷いのだが、
⇧ 何が酷いって、「パンくずリスト」を見ると、
Learn / トラブルシューティング / Azure / Windows 仮想マシン /
⇧ とあり、「Windows 仮想マシン」のドキュメントに該当するらしいのだが、
が対象って、ドキュメントの分類が間違っている気がするんだが...
そもそも、「トラブルシューティング」に分類ってのも違和感を感じる...
「Azure リソース」の「Azure Virtual Machine」を作成した際に、付属するサービスではあるらしいのだが、「Azure Virtual Machine」に付随する機能であるならば、「Azure Virtual Machine」に付随する機能の一覧として「Azure シリアル コンソール」についてのページが存在しているのが、「TO BE(あるべき姿)」なんではないかという気がしてならない...
なのだが、ページが見当たらないので「トラブルシューティング」のページの内容から「Azure シリアル コンソール」というサービスを理解するしか無いのだが、
Azure portal のシリアル コンソールを使用すると、Linux または Windows を実行する仮想マシン (VM) インスタンスと仮想マシン スケール セット インスタンスのテキスト ベースのコンソールにアクセスできます。
シリアル コンソールには、Azure portal または Azure CLI を使用してアクセスでき、VM または仮想マシン スケール セットに対する共同作成者以上のアクセス ロールを持つユーザーに対してのみ許可されます。
シリアル コンソールは、VM と仮想マシン スケール セット インスタンスに対して同じ方法で動作します。 このドキュメントでは、特に記載のない限り、VM という記述にはすべて仮想マシン スケール セット インスタンスが暗黙的に含まれます。
⇧ とありますと。
『VM または仮想マシン スケール セット インスタンスの ttyS0 または COM1 シリアル ポートに接続し、ネットワークの状態に依存しないアクセスを提供します。』
とあり、「Azure Virtual Machine」に確実に接続できる方法が「Azure シリアル コンソール」ということらしい。
Azure シリアル コンソールは画面サイズの可変に対応しておらず、--no-pagerオプションなどが有効か
なのだが、
既知の問題
Microsoft は、シリアル コンソールおよび VM のオペレーティング システムには問題がいくつかあることを認識しています。 Linux VM のそのような問題と軽減手順を以下に示します。 これらの問題と軽減策は、VM と仮想マシン スケール セット インスタンスの両方に適用されます。 表示されているエラーと一致しない場合は、シリアル コンソールに関する一般的なエラーに関する記事で一般的なシリアル コンソール サービス エラーを参照してください。
https://learn.microsoft.com/ja-jp/troubleshoot/azure/virtual-machines/linux/serial-console-linux
問題
シリアル コンソールのテキストが画面サイズいっぱいに表示されない (テキスト エディターの使用後に多く発生)。
https://learn.microsoft.com/ja-jp/troubleshoot/azure/virtual-machines/linux/serial-console-linux
対応策
シリアル コンソールは、ウィンドウ サイズに関するネゴシエーション (RFC 1073) をサポートしていません。つまり、画面サイズを更新するための SIGWINCH 信号が送信されないため、VM はターミナルのサイズを認識していません。 xterm または同様のユーティリティをインストールして resize
コマンドを使用できるようにしてから、resize
を実行します。
https://learn.microsoft.com/ja-jp/troubleshoot/azure/virtual-machines/linux/serial-console-linux
⇧ とあり、ログの内容が見切れてしまうという致命的な「問題」を抱えているという...
公式のドキュメントで「Azure シリアル コンソール」の「問題」解決のためだけに「Azure Virtual Machine」に余計なものをインストールするっていうのは、何か「対応策」として間違っている気がしてしまうんだが...
ネットの情報を漁っていたところ、
ログの全体像を見たいときには向かないと思う(最近はログ1行にとんでもない長い構造化フォーマットがぶっこまれることも多くて画面が埋まる)けど、自分の用途であれば問題ないかな。
⇧ 上記サイト様にありますように、2パターンの対応が考えられるようだ。
- 環境変数を使って対応するパターン
→ SYSTEMD_LESS=FRXMK journalctl - オプションで対応するパターン
→ journalctl --no-pager
ただ、いずれにしろ、ログの全体が出力されてしまうので、リアルタイムでログが垂れ流しになっているような場合は、journalctlコマンドを実行した後で、Ctrl + C とかでプロセスをkillする必要がある。
まぁ、特定の「サービス」のログを確認したいことがほとんどだと思うので、
■環境変数を使って対応するパターン
SYSTEMD_LESS=FRXMK journalctl -u [対象のサービス名]
■オプションで対応するパターン
journalctl -u [対象のサービス名] --no-pager
⇧ と言った感じで、確認したい「対象のサービス名」を確認する感じになるんかな?
それにしても、「Microsoft」のサービスは「ユーザーエクスピリエンス(UX:User eXperience)」が最悪なんだが...
毎度モヤモヤ感が半端ない…
今回はこのへんで。