创建变量
其中包括需要做快照的服务器,vCenter,datacenter
vm_names: # change vm server name
- Server01
- Server02
vcenter_hostname: "vCenter hostname" # change vCenter
datacenter_name: "Datacenter name" # change datacenter
创建快照
---
- name: Create snapshots
hosts: localhost
connection: local
gather_facts: true
vars_files:
- vmware_names.yml ##
- vmware_vault.yml
tasks:
- name: Create snapshots
community.vmware.vmware_guest_snapshot:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{datacenter_name}}"
validate_certs: no
name: "{{ item }}"
folder: "/"
state: present
snapshot_name: "{{ item }}-{{ ansible_date_time.date }}"
description: "Snapshot of {{ item }} created on {{ ansible_date_time.iso8601 }}"
loop: "{{ vm_names }}"
loop_control:
loop_var: item
delegate_to: localhost
register: snapshot_results
- name: Print snapshot task results
debug:
var: snapshot_results.msg
删除快照
---
- name: Delete snapshots of multiple VMs in vCenter
hosts: localhost
gather_facts: no
vars_files:
- vmware_names.yml
- vmware_vault.yml
tasks:
- name: Delete snapshots of VMs
community.vmware.vmware_guest_snapshot:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
folder: "/"
validate_certs: no
name: "{{ item }}"
state: absent
snapshot_name: "{{ item }}-2024-06-25" ### change date
loop: "{{ vm_names }}"
loop_control:
loop_var: item
delegate_to: localhost
register: snapshot_results
- name: Print snapshot task results
debug:
var: snapshot_results.msg
浙公网安备 33010602011771号