コンテンツにスキップ
JelinaJelina Documentation技術ドキュメント
公式サイトに戻る

差分パッケージの設定

ファイルシステムに加えた変更をそのままパッケージ化し、差分パッケージとして JelinaCloud にアップロードします。差分パッケージはデバイスに直接デプロイできます。

まずデバイスの実行環境を設定して Increment をアップロードし、その Increment をデプロイすることでデバイス環境を移行できます。

差分パッケージの作成について

Section titled “差分パッケージの作成について”

Jelina は、一部のキャッシュパスや機密性の高い設定をパッケージに含めません。以下は Increment に含まれないパスの一部です。

/adv, /app, /mnt/boot, /mnt/overlay/rw, /mnt/inactive, /mnt/overlay/ro, /tmp, /var/cache, /var/log, /var/backups, /var/tmp, /var/run, /var/mail, /var/volatile, /proc, /sys, /dev, /run, /boot, /lost+found , /etc/systemd/system/jelinvisored_* , /etc/ld.so.cache, /etc/ssh/ssh_host*, /etc/gshadow, /etc/gshadow-, /etc/fstab, /etc/docker, /var/lib/systemd/coredump, /var/lib/systemd/random-seed, /var/lib/dbus, /var/lib/containerd, /var/lib/private, /etc/.pwd.lock , /var/lib/apt/lists, /var/lib/apt/mirrors, /var/lib/logrotate/status, pycache

JelinaCloud では、デバイスの実行環境を設定した後にパッケージ化してアップロードし、Release と関連付けることができます。デバイスがその Release をデプロイする際、関連付けた差分パッケージを先にインストールすることで、アプリケーションに適切な実行環境を提供し、複数デバイスの環境を統一します。

フリートまたはデバイスの操作ページでインストールする Increment を選択すると、デバイスは指定された Increment をインストールします。

差分パッケージのアップロード

Section titled “差分パッケージのアップロード”
  1. フリートの差分パッケージ一覧ページで、差分パッケージをアップロードボタンをクリックします。

  2. 差分パッケージ名を入力し、デバイスを選択して、説明(任意)を入力します。差分パッケージをアップロードボタンをクリックします。アップロードできるのはオンラインのデバイスのみです。

JelinaCloud は対象デバイスに環境のパッケージ化とアップロードを通知し、アップロードされたファイルを追加した差分パッケージに関連付けます。

image-20220728171959626

  1. 差分パッケージ一覧で、新しく追加されたパッケージのデータを確認できます。

image-20220728172123128

ファイルのアップロードが完了すると、差分パッケージを公開できます。差分パッケージの概要ページで、公開ボタンをクリックします。

image-20220729092035564

従来、デバイスの差分パッケージを再作成してアップロードする際は、「デバイスにインストール済みの差分パッケージチェーン」に沿って各世代を順番にパッケージ化していました。そのため、インストール済みの過去のバージョンが増えるほどパッケージが大きくなりました。現在は、アップロード/再アップロードの操作パネルに次の 2 つのオプションが追加されています。

  • 統合アップロード:デバイスが現在依存する複数世代の差分を 1 つのパッケージに統合して一括アップロードします。多段の依存関係とパッケージサイズを減らし、その後のインストールを高速化します。
  • 除外パス:ログやキャッシュなど、不要なディレクトリやファイルをパッケージ作成時に手動で除外し、サイズをさらに削減します。

どちらも任意のオプションです。選択や入力をしない場合の操作は従来と同じです。

  • 対象デバイスがオンラインであること。
  • デバイスで動作している Jelinvisor が 1.2.27 以上であること。それより古い場合は「統合アップロード」と「除外パス」の両方を使用できません。画面ではスイッチがグレー表示されて選択できず、入力欄も無効になります。
  • 「統合アップロード」には、デバイス側の検出結果に基づき、現在の環境がこの機能に対応していることも必要です。バージョン要件を満たしていてもデバイスが未対応の場合、スイッチは無効になります。

デバイスの差分パッケージを再作成してアップロードする操作を例に説明します。

  1. 対象フリート(Fleet)のデバイスの差分パッケージ管理ページを開き、アップロード/再アップロードの操作箇所を見つけます。従来の差分パッケージをアップロード/再アップロードに対応します。
  2. 操作パネルを開くと、まず現在のデバイス状態が確認されます。
    • デバイスのバージョンまたは機能が条件を満たさない場合、「統合アップロード」スイッチは選択できず、次のような理由が表示されます。
      • 「デバイスの Jelinvisor は 1.2.27 以上である必要があります」
      • 「現在のデバイス環境は統合アップロードに対応していません」(デバイスが返した具体的な理由を併記)
    • 条件を満たしている場合は、スイッチを選択できます。
  3. 必要に応じて次の項目を設定します。
    • 「統合アップロード」を選択:複数世代の親差分を 1 つのパッケージに統合します。インストール後のデバイスは、それまでの差分パッケージチェーンに依存しなくなります。
    • 「除外パス」を入力:1 つ以上のパス規則を指定できます。1 行に 1 つずつ記入するか、入力欄で順に追加します。例:
      • var/lib/docker/(このディレクトリを除外)
      • etc/ssh/ssh_host*(プレフィックスで除外)
      • *.log(すべてのログファイルを除外)
      • * と ? のワイルドカードに対応します。パスの先頭に ./ や / を付けても付けなくても、効果は同じです。
      • 完全なパスを記述することを推奨します。./ などの相対パスは使用しないでください。
    • 両方を同時に使用することも、一方のみを使用することも、両方とも使用しないこともできます。
  4. オプションを確認し、環境差分をアップロードボタンをクリックして、デバイスにパッケージの作成とアップロードを指示します。開始後の進捗表示は従来のフローと同じです。
  5. アップロード開始時にパラメーターが要件を満たさない場合(バージョンが不足しているのに統合アップロードを選択した場合など)、エラーが表示されて送信が阻止されます。条件を満たさないオプションを解除してから再試行してください。

image-20260710113232635

image-20260710113331009

差分パッケージの一覧および詳細ページでは、各パッケージに次の情報が追加表示されます。

  • 今回のアップロードで統合アップロードを有効にしたかどうか。
  • 今回使用した除外パスの規則(指定した場合)。

これにより、過去のアップロードに使用したパッケージ作成オプションを確認でき、問題の調査や設定の再利用に役立ちます。

なお、「統合アップロード」で作成した差分パッケージには、依存内容がまとめて含まれるため、「親差分」の依存関係は表示されません。統合アップロードを使用していないパッケージの依存関係表示は従来と同じです。

image-20260710144334272

Q:「統合アップロード」スイッチが表示されないのはなぜですか。 A:デバイスの Jelinvisor が 1.2.27 未満であるか、バージョン要件を満たしていてもシステム環境が統合機能に対応していないためです。この場合は従来の差分パッケージのアップロード方式のみを使用できます。

Q:除外パスのみを入力し、統合アップロードを選択しない場合にも、デバイス側の追加対応が必要ですか。 A:不要です。除外パスは Jelinvisor 1.2.27 以上であれば使用でき、「統合アップロード」の対応機能チェックに合格する必要はありません。