Ubuntu Core 18 には snap が組み込まれていますが、インストールしようとすると次のエラーが発生します。
$ sudo snap install microk8s
error: snap "microk8s" requires classic confinement which is only available on
classic systems
答え1
Ubuntu Core は厳密に制限されたスナップのみをサポートします。
Ubuntu Core は--classic
スナップをサポートしていません。そのため、Core システムでは「クラシック」エラーが表示され、Cloud システムでは表示されません。
こちらは関連リリース発表からの抜粋(2017年1月):
snapd 2.20 では、新しい制限ポリシー「クラシック」が導入され、スクリプトとツールのあらゆるニーズに対応できるように設計されています。制限を「クラシック」として宣言する Snap は、ほとんどのレガシー (Debian パッケージなど) パッケージ アプリと同様に、システムの残りの部分にアクセスできます。また、CI 統合ストア モデルのメリットも享受でき、自動更新、古いバージョンへのロールバック、リリース チャネルなどを使用できます。
この新しい「クラシック」な制限は、Ubuntu Core システムではなく、従来の Linux ディストリビューション上に snapd がインストールされている場合にのみ利用できます。
答え2
MicroK8sをUbuntu Coreで実行できるように、厳密に制限されたスナップを取得することに積極的に取り組んでいます。進捗状況を追跡できるブランチがあります。https://github.com/ubuntu/microk8s/tree/feature/jdb%2Fstrict現時点では、ビルドは latest/edge/strict チャネルで実行されます。次の方法で試すことができます。
sudo snap install microk8s --channel=latest/edge/strict
万が一、期待通りに動作しない場合は、フィードバックをいただければ幸いです。簡単な検査レポートで十分です ( microk8s inspect
)。ありがとうございます。