속성에서 MAC 주소와 UUID를 생성 한 다음 값을 템플릿에 전달하고 싶습니다. 이 같은 :
Attribute/default.rb
:
default['libvirt']['xml_mac_Adrr'] = 'openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/:$//''
default['libvirt']['xml_uuid'] = 'uuidgen virbr0'
Template/network.erb
:
<uuid><%= node['libvirt']['xml_uuid'] %></uuid>
<mac address='<%= node['libvirt']['xml_mac_Adrr']%>'/>
어떻게 할 수 있습니까?
업데이트default.xml
가상 네트워크 의 네트워크 를 수정하고 싶습니다 . 기본적으로 우리는 virsh-net command
UUID 및 MAC 주소 값을 XML 파일에 전달하고 게스트 컴퓨터에서 수정하는 템플릿을 사용하고 싶습니다. 이것은 내 요리법입니다.
template '/etc/libvirt/qemu/network/default.xml' do
source 'qemu-network.erb'
owner "root"
group "root"
mode "0644"
end
역 따옴표를 사용하여 Ruby 내부에서 쉘 명령을 실행하고 응답을 캡처 할 수 있습니다.
default['libvirt']['xml_mac_Adrr'] = `openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/:$//'`
default['libvirt']['xml_uuid'] = `uuidgen virbr0`
편집하다:
두 번째 문제는 컨트롤러에서 인스턴스 변수를 사용하여 뷰와 정보를 공유해야한다는 것입니다. 따라서 가장 좋은 방법은 다음과 같습니다.
@mac = `openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/:$//'`
@uuid = `uuidgen virbr0`
그런 다음보기 수준에서 다음을 사용할 수 있습니다.
<uuid><%=@uuid %></uuid>
<mac address='<%=@mac %>'/>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다