3.8K Views
September 22, 23
スライド概要
WSL v2.0.0 最新情報と、WSL2 + VSCode + OpenAI (DALL・E API)連携を試してみました。
※この内容は一個人としてまとめたものであり、会社の公式見解ではございません。詳細は提供元の公式情報をご確認ください
Linux、IoT、クラウド活用などを紹介します。
ljstudy#12 「Cloud, AI 時代のLinux最速スキルアップ術」 WSL2 最新アップデートと活用紹介! Manami Taira
Manami Taira LjStudy Organizer • Linux Red Hat Linux 9 (RHELじゃない) から ユーザー • コミュニティ暦 2010年冬よりLjstudyのイベントを企画・運営 • 本業 独立系SIer、CIer、金融DXスタートアップ などを経て現職 • 好きな動物 DALL・E で生成 猫とアルパカ • 主な著書 LinkedIn
今日のアジェンダ •WSL2について •AI時代のWSL活用法! • 発表内容の前提 趣味で調べている範囲(公式見解ではない)のためユーザー目線かつ、一個人としてのご紹介 • 正式情報は、各提供元の情報をご確認ください
突然ですが質問です 好きなLinuxディストリビューションは何ですか? ハッシュタグ #Ljstudy でPostしてみよう! ※特に無かったら他のOSでもいいです
本日のお題 WSL2 Windows Subsystem for Linux 2
Windows x Linux 開発環境 従来からの手法(あくまでも一例) 開発環境 代表例 メリット デメリット デュアルブート ハードウェア仮想化 (ゲストOS) 擬似的UNIX環境の互換レイヤー WindowsとLinuxをパーティションで 切り、同じPCに同居 Windows上にUNIXライクな環境を提供する互 換レイヤ(Cygwin) ホストOSでゲストOSをエミュレー ション 1台のマシンで2種類のOSを 稼働させることができる ゲストOS不要、ハードウェア仮想化も行わない ため煩雑な作業もなく軽量に動作 ホストOSとゲストOSの切替・管理 が容易 • • • 物理マシンのスペック・処理性能に 左右される OS切り替え時に時間がかかる ブートローダーやドライブ破損時のトラブル が発生した場合、環境が壊れてしまうリスク がある • アプリケーションが実行するシステムコール の読み替えだけを行う仕組みのため入出力 が遅い 大量のデータを扱う用途には向かない セットアップ/運用のオーバーヘッドが大きい
WSL2 Windows Subsystem for Linux 2 従来の仮想マシンやデュアル ブート セットアップのオーバーヘッドなく、ほとんどのコマンドラインツール、 ユーティリティ、アプリケーションなどのLinux環境を変更せずWindows 上で直接実行可能に 1 2 3 WSL2 Linux カーネルは オープンソース ファイルIOの高速化 システムコールの 100%互換性 詳細 WSL 2 は Hyper-V 仮想マシンとして実行
WSL2 動作環境 WSL 2 は Hyper-V 仮想マシンとして実行 • Windows 11 • Windows 10 (バージョン 1903、ビルド 18362 以降) • Windows Server 2022 • Windows Server 2019 (バージョン 1709) 以降 • VMware 15.5.5+ • VirtualBox 6+ 「WSL 2」がようやく「Windows Server」で正式版に - 窓の杜 (impress.co.jp)
標準インストールできるLinuxディストリビューションのリスト
Linuxディストリビューションのインストール その他の方法 お好みのLinuxディストリビューションをインポートすることもできます • カスタムWSLディストリビューションを Microsoft Store からダウンロード • ディストリビューションのインポート • WSL用のカスタムディストリビューション作成
最近WSL のアップデート • GPUサポート (2023年2月) WSL での GPU 高速化による ML トレーニング | Microsoft Learn D3D12 GPU Video acceleration in the Windows Subsystem for Linux now available! - Windows Command Line (microsoft.com) • Systemd 標準サポート(2022年9月) Systemd support is now available in WSL! - Windows Command Line (microsoft.com)
WSL最新アップデート! 2023年9月18日の最新アップデート
WSL V2.0.0 爆誕 LINUX 用 WINDOWS サブシステム 2023 年 9 月の更新プログラム - WINDOWS コマンド ライン (MICROSOFT.COM) 「Windows Subsystem for Linux」がv2.0.0に、多数の試験機能を追加 - 窓の杜 (impress.co.jp)
確認し、ご利用の判断をお願い致します wsl --update; wsl --update --pre-release GitHub - microsoft/WSL: Issues found on WSL wsl --version ■ Experimental (試験機能)をONにするには .wslconfig の設定を変更します C:¥Users¥<yourusername>¥.wslconfig #下記のように追記する(例) [experimental] autoMemoryReclaim=gradual
WSL2 試験機能のサポート WSL/wsl-config. 確認し、ご利用の判断をお願い致します 試験機能のリスト 説明 autoMemoryReclaim キャッシュされたメモリを再利用することで、WSL VM の使用時にメモリ内で 縮小します スパース VHD 使用時に WSL 仮想ハード ディスク (VHD) を自動的に縮小します ミラー モード ネットワーク ネットワークの互換性を向上させる WSL の新しいネットワーク モード DNSトンネリング WSL が DNS 要求を解決する方法を変更して、ネットワークの互換性を向上 させます ファイアウォール Windows ファイアウォール ルールを WSL に適用し、WSL VM の高度なファ イアウォール制御を許可します 自動プロキシ WSL が Windows からのプロキシ情報を自動的に使用して、ネットワークの 互換性を向上させるようにします Updated to include new config values for WSL 2.0 release by craigloewen-msft · Pull Request #1815 · MicrosoftDocs/WSL · GitHub
ディスク領域の自動クリーンアップ (スパース VHD の設定) 設定名 sparseVhd 値 ブール値 デフォルト false 補足 true に設定すると、新しく作成された VHD は自動的にスパース設定されます WSL 仮想ハード ディスク (VHD) は、使用することでだんだんとサイズが大きくなりますが、 この機能を有効にすると、サイズも自動的に縮小されます。 新しい VHD が自動的にスパース VHD に設定され、自動的にサイズを縮小できます。 必要に応じて既存のLinuxディストリビューションをスパースに設定する かどうかを設定できるコマンドが追加されました wsl --manage <distro> --set-sparse <true/false> WSL をシャットダウン後、スパース設定を実施
番外編:Windows 以外 で WSL2 を使いたい クラウドサービスでVMを立てて、リモートデスクトップアプリで接続する ※Azureの場合、Nested Virtualization対応マシンでWindows対応バージョンを構築 例 • Azure VM or • 仮想デスクトップ(Azure Virtual Desktop) → リモートデスクトップアプリで接続 Azure 仮想マシン Nested Virtualization (入れ子になった仮想化) 対応VM https://learn.microsoft.com/ja-jp/azure/virtual-machines/acu Windows 用リモート デスクトップ クライアントを使用して Azure Virtual Desktop に接続する - Azure Virtual Desktop | Microsoft Learn ※必要ライセンスについては別途ご確認ください
WSLとツールを組み合わせて 快適な開発・検証環境を手に入れよう WSL v2.0.0 Node.JS , Python など Visual Studio Code Docker Desktop ※組み合わせは一例です
WSL2活用! クラウド+AI活用!
WSL2 + VSCode + OpenAI (DALL・E API) もこもこしているアルパカと少女の画像をDALL・Eで生成 GitHub - openai/openai-cookbook: Examples and guides for using the OpenAI API
WSL2 最新情報ソース トレーニング – Linux 用 Windows サブシステム (WSL) の概要 - Training | Microsoft Learn マイクロソフト 公式 WSLトレーニングページ(Microsoft Learn) Windows Command Line (microsoft.com) マイクロソフト コマンドラインチームのBlog Issues · microsoft/WSL · GitHub WSL Issueレポート先 WSL での Docker コンテナーの概要 | Microsoft Learn Dockerセットアップ手順
END ありがとうございました