Điểm:2

Làm cách nào để bạn xác định vị trí của Vagrantfile từ trình quản lý tài năng?

lá cờ it

Hệ điều hành là Debian 10, nhà cung cấp lang thang là libvirt.

tình trạng toàn cầu lang thang được cho là cung cấp thông tin về tất cả các vms trên một hệ thống, nhưng tôi có thể thấy việc tắt và chạy vms trong trình quản lý virt không được liệt kê bởi tình trạng toàn cầu lang thang. Tôi chỉ sử dụng libvirt cho Vagrant nên tôi biết Vagrant là thủ phạm.

Làm cách nào để xác định thư mục được liên kết/Vagrantfile cho từng vms này?

Tôi nghĩ rằng lệnh này sẽ thực hiện thủ thuật:

tìm / -name Vagrantfile -exec echo {} \; -exec bash -c 'cd "$(dirname {})" && lang thang status | grep -E shutdown\|running' \; 2>/dev/null

Nhưng có vẻ vô lý khi một thứ như thế này lại cần thiết và sẽ mất rất nhiều thời gian trên một hệ thống tệp lớn.

Làm cách nào chính xác để tôi có thể xác định thư mục cho Vagrantfile được liên kết cho mỗi vm? Phải có một cách dễ dàng hơn ngoài việc tìm kiếm triệt để hệ thống tập tin.

lá cờ cn
Tôi đã trả lời, nhưng sau đó nhận ra rằng tôi đã không đọc đúng câu hỏi!
Điểm:2
lá cờ us

Dựa trên mẫu [1], Vagrant dường như không theo dõi thư mục dự án được liên kết với VM trong siêu dữ liệu miền libvirt.

Nội bộ Vagrant giữ thông tin về VM (bao gồm cả thư mục) trong tệp JSON ~/vagrant.d/data/machine-index/index, kiểm tra ví dụ [2]

Tôi đoán có thể sửa đổi mẫu để thêm thư mục dưới dạng siêu dữ liệu, tương tự như cách Openstack Nova thêm một số siêu dữ liệu vào miền libvirt của Khách, siêu dữ liệu có thể được sử dụng để lấy tên VM, Hương vị, v.v. trực tiếp từ nút tính toán mà không cần truy vấn Nova.

Rõ ràng điều này không áp dụng cho các máy ảo hiện có trước khi thay đổi.

[1] https://github.com/vagrant-libvirt/vagrant-libvirt/blob/master/lib/vagrant-libvirt/templates/domain.xml.erb

[2]

con mèo .\index | python -m json.tool
{
    "phiên bản 1,
    "máy móc": {
        "4f9bf5cd740f409c867553c19c52a81c": {
            "local_data_path": "C:/Vagrant-Machines/bionic-vm/.vagrant",
            "tên": "mặc định",
            "nhà cung cấp": "hyperv",
            "trạng thái": "đang chạy",
            "vagrantfile_name": null,
            "vagrantfile_path": "C:/Vagrant-Machines/bionic-vm",
            "updated_at": null,
            "dữ_liệu phụ": {
                "hộp": {
                    "tên": "hashicorp/bionic64",
                    "nhà cung cấp": "hyperv",
                    "phiên bản": "1.0.282"
                }
            }
        }
    }
}

Để tham khảo, ở đây siêu dữ liệu trông như thế nào trong trường hợp của Nova:

 ví dụ virsh dumpxml-0033dd00 | cái đầu
<loại miền='kvm' id='93'>
  <name>ví dụ-0033dd00</name>
  <uuid>XXXXXXXXXXXXXXXXXXX</uuid>
  <siêu dữ liệu>
    <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0">
      <nova:package version="17.0.13"/>
      <nova:name>VM-NAME</nova:name>
      <nova:creationTime>2021-05-11 10:50:49</nova:creationTime>
      <nova:flavour name="m1.small">
        <nova:memory>16384</nova:memory>

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.