나는 사용한다CentOS 8.4, libvirtd (libvirt) 6.0.0, Vagrant 2.2.18, gem version 2.7.6.3 and ruby 2.5.9p229 (2021-04-05 revision 67939) [x86_64-linux]
vagrant를 사용하여 Qemu/KVM에서 VM을 구축하려고 합니다. 기술적으로 KVM은 잘 작동하며 VM을 수동으로 생성할 수 있습니다. 하지만 vagrant를 사용하여 가상머신을 생성할 수 없습니다. libvirt용 vagrant 및 vagrant 플러그인을 설치했습니다. 버전은 다음과 같습니다:vagrant-libvirt (0.5.3, global)
이 명령을 사용하여 vagrant를 시작하려고 하면 vagrant up --provider=libvirt
오류가 발생합니다.
/usr/lib64/libk5crypto.so.3: 정의되지 않은 기호: EVP_KDF_ctrl, 버전 OPENSSL_1_1_1b - /home/user/.vagrant.d/gems/2.7.4/gems/ruby-libvirt-0.7.1/lib/_libvirt. (로딩 오류)
OpenSSL 버전을 다음과 같이 사용하고 있습니다. 1.1.1g FIPS 21 Apr 2020
이 문제를 어떻게 해결하나요?
답변1
해결책은 없지만 댓글에 적합하지 않은 추가 세부 사항은 여기에 공유하겠습니다.
- vabrant-libvirt는 커뮤니티에서 유지관리하는 플러그인입니다(그들은 한동안 유지관리자에게 요청해 왔습니다.https://github.com/vagrant-libvirt/vagrant-libvirt/issues/1069, 아마도 오랫동안 제대로 수정되지 않은 이유일 것입니다). Hashicorp에서 유지 관리하지 않기 때문에 일반적으로 Vagrant만큼 잘 지원되지 않습니다.
- RHEL8 변종은 현재 약 1년 동안 손상/결함이 있으므로 탄탄한 개발 기술이 없으면 옵션은 다음과 같습니다.
- 여기에서 모든 팁을 시도해 보세요.https://github.com/vagrant-libvirt/vagrant-libvirt#possible-problems-with-plugin-installation-on-linux
- 버그 보고서를 읽어보세요(대개 잘못된 저장소에 게시되었기 때문에 해결 방법 없이 종료된 경우가 많습니다).https://github.com/hashicorp/vagrant/issues) 버그 보고서 제출https://github.com/vagrant-libvirt/vagrant-libvirt/issues
- 배포판 전환을 고려하세요. (Centos 7은 2024년 6월/추가 2.4년까지 중단되지 않을 것이며, 중단되면 이 문제는 아마도 Centos 8에서 해결될 것입니다. 그리고 항상 Debian, SUSE 등으로 전환할 수 있는 옵션이 있습니다.)
다음을 사용하여 동일한 문제가 발생했습니다.
- AlmaLinux 8.5(이것은 RHEL 8.5의 "버그 호환 버그" 광고 주장과 일치하는 것 같습니다.)
- 원더러 2.2.19
- 나는 당신의 오류를 확인하기 위해 달려가야 했지만
CONFIGURE_ARGS="..." vagrant plugin install vagrant-libvirt
결국 같은 곳에 갇혔습니다.
이 소스에 따라 openssl이 번들로 제공되는 방식과 관련된 해결되지 않은 버그가 있는 것 같습니다.https://bugzilla.redhat.com/show_bug.cgi?id=1925782
이는 일반적으로 다른 사람이 자신의 openssl 복사본을 포함하고 시스템과 동일한 기호가 없는 경우에 발생합니다. 이 경우 vagrant 패키지의 복사본은 자체 openssl(!)처럼 보입니다.
$ rpm -ql ./vagrant_2.2.14_x86_64.rpm | grep crypto.so /opt/vagrant/embedded/lib64/libcrypto.so /opt/vagrant/embedded/lib64/libcrypto.so.1.1 $
이것은 외부 패키지입니다. 우리는 이를 제공하지 않습니다. 우리는 openssl 시스템(매우 훌륭하다고 생각함)을 제공하며, 패키지는 자체 내용을 포함하기보다는 이를 사용해야 합니다. 특히, 다른 시스템 기능(예: krb5 사용)을 호출할 때 자체 라이브러리로 시스템 라이브러리를 재정의할 필요가 없습니다.
티켓이 여러 장 나온 탓에 한동안 계속돼온 미해결 이슈인 것 같습니다. https://github.com/vagrant-libvirt/vagrant-libvirt/issues/1088#issuecomment-686513145