Back to the news overview

LXD 2.16 リリースのお知らせ

25th of July 2017
新機能:

  • LXD のストレージバックエンドとして Ceph RBD が使えるようになりました ("lxd init" でのサポートを含みます)
  • 新たに security.idmap.base キーが追加されました。これは security.idmap.isolated を使う場合に、ホスト上でのベースとなる uid/gid を指定します
  • イメージのダウンロードを中断できるようになりました
  • ファイルの転送でシンボリックリンクを扱えるようになりました
  • "lxc copy" と "lxc move" で進捗表示をするようになりました
  • "lxc copy" と "lxc move" で firewall と NAT を越えるために "relay" モードと "push" モードをサポートするようになりました (--mode オプション)
  • カスタムストレージボリュームのサイズを設定したり変更したりできるようになりました
  • "lxc image import" が展開したイメージを含むディレクトリからの読み込みをサポートするようになりました
  • "vlan" プロパティを "physical" ネットワークインターフェースに設定できるようになりました (以前は "macvlan" に制限されていました)
  • ストレージプールからイメージボリュームを削除できるようになりました。これでイメージストアからイメージを削除することなくストレージプールを削除できるようになりました
  • イメージとしてコンテナを公開する前に、イメージメタデータとテンプレートを API 経由で作成したり変更したりできるようになりました
  • リモートホストで、ステートフルなスナップショットをコンテナとしてリストアできるようになりました

バグ修正:

  • client: ベースとなる http クライアントを指定できるようになりました (Issue #3580)
  • client: エラーハンドリングの共通化を行いました
  • client: 停止しているコンテナのライブマイグレーションを行おうとしないようにしました
  • client: オペレーションハンドラ内のクラッシュを修正しました
  • client: 名前にスペースが含まれたファイルの push/pull の問題を修正しました
  • client: public な LXD のリモートホストを扱う際の問題を修正しました (Issue #3464)
  • client: 操作処理中の競合を修正しました
  • client: マイグレーションをリレーするコードを改良しました
  • client: 使用中の HTTP クライアントを取得できるようになりました (Issue #3580)
  • client: リモートの切断を正しく扱うようにしました
  • client.go: godoc 中で廃止したパッケージの警告を表示するようにしました (Issue #3466)
  • config: スナップショット名中に ":" が含まれる場合の処理を改良しました
  • doc: コンテナ作成時のキャッシュに存在する以前のイメージの使用に関する注意書きを追加しました (Issue #3590)
  • doc: storage_images_delete API 拡張の文書に追加しました (Issue #3539)
  • doc: exec セッション中の control API を文書に追加しました (Issue #3574)
  • doc: lxd のインポートに関する説明を詳細にしました
  • doc: セキュリティに関連する文書を作り直し詳細にしました
  • doc: 実際に動作するサンプルを示すように help を修正しました
  • doc: 空白、カンマ、クオート、括弧を修正しました
  • doc: コンテナ内の環境についての文書を追加しました (Issue #477)
  • doc: /1.0/networks/ の "config"."ipv6.nat" の値にクオートを追加しました
  • doc: 不要なバックスラッシュを削除しました
  • doc: containers.md を更新しました (訳注: LXDで扱えるデバイスタイプに usb と gpu を追加)
  • github: ISSUE_TEMPLATE.md: lxd.log の場所を修正しました
  • global: typo をいくつか修正しました
  • lxc/config: 一度に複数のデバイスを削除できるようにしました
  • lxc: 存在しない設定ファイル用のディレクトリを作成するようにしました
  • lxc: クロスプラットフォームで設定ファイル用のディレクトリを扱えるようにしました (Issue #3573)
  • lxc/exec: Windows でのシグナルハンドラを修正しました (Issue #3496)
  • lxc/file: push -p で作成する中間ディレクトリのモードを指定しないようにしました
  • lxc/image: エクスポートした際のファイル名では、常に長いフィンガープリントを使うようにしました
  • lxc/image: "ixc image copy" が取得元を記録していない問題を修正しました
  • lxc/image: "lxc image list" のフィルタのハンドリングを改良しました (Issue #3555)
  • lxc/image: エラー時の処理が抜けていたのを修正しました
  • lxc/image: コピー時にエイリアスのソースを適切に記録するようにしました (Issue #3586)
  • lxc/image: イメージにエイリアスが設定されている場合、エイリアスを更新するようにしました
  • lxc/launch: ランダムな名前をつけたコンテナの起動に失敗する問題を修正しました
  • lxc/list: --columns と --fast を同時に指定した場合にエラーになっていた問題を修正しました
  • lxc/publish: compression_algorithm を compressionAlgorithm に変更しました (訳注: 変数名の変更)
  • lxc/publish: フィンガープリントの表示の問題を修正しました
  • lxc/utils: 進捗表示での競合の可能性をなくしました
  • lxc/utils: エラー表示でフォーマット指定を行う処理が抜けていた問題を修正しました
  • lxd/container: エラーハンドリングの問題を修正しました
  • lxd/containers: メモリ使用量の表示の際のエラー処理を改良しました (Issue #3482)
  • lxd/containers: コンテナの削除が失敗した場合の根本的なエラーを表示するようにしました
  • lxd/containers: LXC 2.1 の設定キーのサポートを追加しました
  • lxd/images: イメージが見つからない場合にエラー表示を行うようにしました
  • lxd/images: フィンガープリントが与えられた場合のイメージのリフレッシュの問題を修正しました
  • lxd/import: 一時的なキーを保持するようにしました
  • lxd/import: コンテナをインポートする際、シンボリックリンクには依存しないようにしました
  • lxd/init: LVM シンプロビジョニングのツールを検出するようにしました (Issue #3497)
  • lxd/networks: プロセスの PID でない場合でも失敗しないようにしました (訳注: dnsmasqのpidファイルに書かれたPIDがdnsmasqでなく、プロセス以外だった場合にエラーになり、dnsmasqプロセスをkillできないバグを修正)
  • lxd/storage: アタッチしているコンテナすべての idmap をチェックするようにしました (Issue #3548)
  • lxd/storage: ボリュームの ETag の扱いを修正しました
  • lxd/storage: ディレクトリマウント(訳注: bind マウント) の読み込み専用モードの際の問題を修正しました
  • lxd/storage: コンテナとイメージの UsedBy の問題を修正しました
  • lxd/storage: ボリュームの設定ロジックを修正しました
  • lxd/storage: storagePoolVolumeUsedByContainersGet 関数を追加しました
  • lxd/storage: ストレージプールのエントリを削除する実装を各ドライバに移動しました
  • lxd/storage: サイズプロパティを設定を制限しました (訳注: サイズプロパティを設定できないストレージの場合にエラーになるようにした)
  • lxd/storage/lvm: lvm コマンドの実行を RunCommand 関数で実行するようにしました (Issue #3507)
  • lxd/storage/lvm: エラーハンドリングの問題を修正しました
  • lxd/storage/lvm: thinpool でないコンテナ作成時の問題を修正しました (Issue #3543)
  • lxd/storage/lvm: 機能に関係しない変更を行いました
  • lxd/storage/zfs: すべてのヘルパ関数を storage_zfs_utils.go に移動しました (Issue #3471)
  • lxd/storage/zfs: s.zfsPoolVolumeCreate() を削除し、s.zfsPoolVolumeCreate() をすべて zfsPoolVolumeCreate() に変更しました
  • lxd/storage/zfs: マウントできるすべてのデータセットに canmount=noauto を設定するようにしました (Issue #3437)
  • lxd/storage/zfs: s.pool.Name の代わりに s.getOnDiskPoolName() を使うようにしました
  • README: リンク切れを修正しました
  • README: LXD の説明を見直しました
  • shared/cancel: キャンセラーが設定されていない場合にクラッシュする問題を修正しました
  • shared/cancel: 返り値の順序を修正しました (訳注: 関数の返り値を受け取る際、間違った変数で受け取っていた)
  • shared/cancel: request のキャンセルチャンネルを使うようにしました
  • shared: RunCommand のカスタムエラータイプを使うようにしました (issue #3502)
  • shared/util: sysconf() が -1 を返した時、サイズを推測するようにしました (Issue #3581)
  • shared: Websocket プロキシ はすべてをプロキシするようにしました
  • tests: "lxc storage volume set" のテストを追加しました
  • tests: 読み込み専用のディスクのテストを追加しました
  • tests: シンボリックリンクが削除された場合のインポートテストを追加しました
  • tests: push と relay モードのテストを追加しました
  • tests: lxdbr0 なしでもテストができるようにしました
  • tests: stop/restart の際は常に --force を指定するようにしました
  • tests: apparmor の存在チェックを行うようにしました
  • tests: カーネルがサポートしていない場合は apparmor のテストをスキップするようにしました
  • tests: 正しく busybox がインストールされているかを確認するようにしました
  • zfs: ファイルシステムをマウントする際には tryMount を使うようにしました

試用環境

この新しい LXD のリリースが、すでに私たちの デモサービス で利用できます。

ダウンロード

このリリースの tarball は ダウンロードページ から取得できます。