修正する:1. dockerのバグをバイパスするように管理されており、現在#2で作業しています。「ストレージ構成に失敗しました:要求されたパーティションスキームを割り当てることはできません」情報
ここでは、当社のジュニアエンジニアがKickstartファイルを使用してISOでRHEL OVFを構築しました。新しいバージョンのRHELを使用していて、Kickstartインストールを使用してインストールを自動化しようとすると、現在のスクリプトは失敗します。また、Packer および Docker コンテナを使用して、これらのインストールスクリプトの一部を実行します。
VMware ESXiを使用して仮想マシン(RHEL OS)をインポートし、構成/インストールを開始しました。その後、タスクが完了したらそれを終了し、その仮想マシンにOVFを作成します。
#1. VMとRHELのインストールを監視すると、Dockerがインストールされていないとマークされ始めます。 解決済み
- それから私に教えてください。ストレージ構成に失敗しました:要求されたパーティションスキームを割り当てることができません。:
したがって、デフォルトでVMware ESXiのサイレントインストールに関するメッセージが表示されないように、プログラムでこれらの質問に答える方法を理解してください。
しかし、テストのために1分前にこれらの質問に手動で答え、VMがシャットダウンされず(必ずそうでなければ)タイムアウトしたため、これは別の問題になります。
誰でも私を正しい方向に案内できますか?私はLinuxの専門家ではなく、RHELの「自動化された」キックスタート全体に初めて触れる人です。
@telcoMここでコメントに1行ずつ返信します。
私は何も見ない買い戻しキーワード。(レビューをして発見しました。買い戻し期間が作成されています。包装労働者インストールする)。私もちろんいくつかのパッケージ宣言がリストされていますが、%post
実際にはdockerがコメントアウトされています。コメントを削除して再構築しようとしましたが、まだ同じメッセージが表示されます。その後、除外しようと-docker
しましたが、Dockerパッケージを要求するのと同じメッセージが表示されます。以下にリストされている内容は次のとおりです。%post
これにはいくつかのファームウェアパッケージがありますが、明確にするために削除しました。
%packages --nobase
@core
authconfig
system-config-firewall-base
tmpwatch
bzip2
eject
time
unzip
zip
which
sos
java
bind
bind-chroot
#vim
#dos2unix
#sudo
-docker
open-vm-tools
-postfix
-rhnsd
-yum-rhn-plugin
-subscription-manager
-chrony
%end
%packages
kickstartファイルの宣言の下にJfrog Artifactoryからインポートされたいくつかのカスタムリポジトリがあります。
%post --log=/root/kickstart-post.log
set -x
cat > /etc/yum.repos.d/test.repo <<'CAT'
[test1]
name=test1
username=
password=
baseurl=https://artifactory.MyWebsite.com/artifactory/MyUrl
gpgcheck=0
enabled=1
[test2]
name=test2
baseurl=http://127.0.0.1:8080/__RHEL_VER__
gpgcheck=0
enabled=1
[test3]
name=test3
username=
password=
baseurl=https://artifactory.MyWebsite.com/artifactory/MyURL
gpgcheck=0
enabled=1
CAT
yum install -y A-Huge-List-Of-Apps-And-Libs-Here
yum install -y http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- パーティション化とストレージに関しては、これはより簡単です。
bootloader --location=mbr --driveorder=sda --append="fips=1 crashkernel=auto rhgb quiet" --password=
zerombr
clearpart --all --initlabel --drives=sda,sdb
part /boot --fstype=ext4 --size=512
part pv.01 --size=36000 --grow --ondrive=sda
part pv.02 --size=1000 --grow --ondrive=sdb
volgroup vg_root pv.01
volgroup vg_perstore pv.02
logvol / --fstype=xfs --name=lv_root --vgname=vg_root --size=7000 --grow
logvol /export/home --fstype=xfs --name=lv_home --vgname=vg_root --size=1000
logvol /opt --fstype=xfs --name=lv_opt --vgname=vg_root --size=4096
logvol /tmp --fstype=xfs --name=lv_tmp --vgname=vg_root --size=2048
logvol /var --fstype=xfs --name=lv_var --vgname=vg_root --size=2048
logvol /var/core --fstype=xfs --name=lv_core --vgname=vg_root --size=128
logvol /var/crash --fstype=xfs --name=lv_crash --vgname=vg_root --size=1000
logvol /var/getlogs --fstype=xfs --name=lv_getlogs --vgname=vg_root --size=2000
logvol /var/viewlogs --fstype=xfs --name=lv_viewlogs --vgname=vg_root --size=1000
logvol /var/log --fstype=xfs --name=lv_log --vgname=vg_root --size=1000
logvol /var/log/audit --fstype=xfs --name=lv_audit --vgname=vg_root --size=725
logvol /var/log/logins --fstype=xfs --name=lv_logins --vgname=vg_root --size=96
logvol /var/log/root_logins --fstype=xfs --name=lv_root_logins --vgname=vg_root --size=32
logvol /var/cache/yum --fstype=xfs --name=lv_repo --vgname=vg_root --size=1000
logvol /var/opt/BurgerKing --fstype=xfs --name=lv_varopt --vgname=vg_root --size=20000
logvol swap --name=lv_swap --vgname=vg_root --size=4096
logvol /var/opt/perstore --fstype=xfs --name=lv_perstore --vgname=vg_perstore --size=500 --grow
%addon com_redhat_kdump --disable
%end
ここで私が探すべき他のものはありますか?
答え1
スクリーンショットの最初のエラーは次のとおりです。
You have specified that the package 'docker' should be installed. This package
does not exist. Would you like to ignore this package and continue with
installation?
RHEL 7.xインストールメディアには、名前付きパッケージは含まれていませんdocker
。インストールするには、kickstartファイルのキーワードを使用して1つ以上のパッケージストアを設定する必要がありますrepo
。
セクションヘッダー行--ignoremissing
に追加して、Dockerなしでインストールが成功できることを確認できます。%packages
結局、失われたか破損したのはDockerへの依存関係を表します。
2番目の画像では、次の行を見逃したようです。
storage configuration failed: Unable to allocate requested partition scheme.
これは、Kickstart ファイルで指定されたストレージ構成が、VM で構成された仮想ディスクと明らかに一致しないことを意味します。 2 番目のメッセージが表示された可能性があります。
Not enough space in file systems for the current software selection. An additional 1233.25 MiB is needed.
インストーラは要求されたパーティションを適用できないため、ユーザーが手動で有効なストレージ構成を提供するまで、インストーラには実際にパッケージに使用できるスペースがありません。したがって、ユーザーが要求した最後のエラーメッセージも表示されます。
No disks selected: please select at least one disk to install to.
Unable to allocate requested partition scheme.
あなたがしたいと思うでしょうキックスタート構文リファレンスこれを準備し、実際の使用のためにKickstartのマニュアルを読んでください。
最後のエラーより前のメッセージは、仮想ディスクのサイズが46.88GiBおよび2000MiBであることを示します。ご注意ください、ギブバイナリベースの単位で表示されるため、46.88 GiB = 46.88 * (1024^3) バイト = 約 50337016710 バイトです。これは、必要な仮想ディスクのサイズを次のように指定したためです。50GB= 50 000 000 000バイト(VMwareに適した最も近い高い値に丸められた)とバイト単位とより高い単位間の変換でわずかな丸めエラーが発生します。
論理ボリュームの最小サイズの合計はvg_root
47269なので、論理ボリュームの最小サイズはpart pv.01
この値以上でなければなりません。さらに、さまざまな要件(データの並べ替えなど)を満たすためにパーティションのサイズをわずかに増やすことができるため、パーティションの実際の最小容量要件はpv.01
ディスク/boot
の46.88GiB容量より大きくなる可能性があります。これらのKickstart設定を維持するには、VMに割り当てられているディスクサイズを少し増やしてから、Kickstartが機能している場合は下に調整してください。
RHEL 7.x Kickstartのドキュメントには、--nobase
この%packages
セクションのオプションは含まれていません。これは廃止予定のオプションのように見え、バグレポート以降の文書から削除されました。
「一部のカスタムストア」は%post
インストール後のスクリプトのように見えます%packages
。 。スクリプトが正しいセクションにない場合、インストーラはスクリプトコマンドをインストールするパッケージ名として解釈しようとし、そのパッケージ名の形式が正しくないため、最終的にランダムなパッケージコレクションをインストールしようとする可能性があります。依存関係と共に。これはインストールの試みを説明できます。%end
%packages
%post
%end
docker
インストールが完了した後に仮想マシンが自動的にシャットダウンされるようにするには、キックスタート構成poweroff
ファイルの主要部分にこのキーワードを含む行が必要です。ただし、自動シャットダウン機能が不足している場合は、「レールを離れて」手動入力が必要なインストールが原因で発生する可能性があります。