環境
vCenter7環境へ、ネスト環境用のvCenter7をデプロイ
クライアント:CentOS7
ISO:VMware-VCSA-all-7.0.3-20150588.iso
※vCenter以外もovaファイルは同様の手順にてデプロイ可能
事前準備
①ISOダウンロード
②ISOに含まれるovaファイルを抽出
例:「vcsa\VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ova」
③ovaファイルを解凍
# tar -xvf VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ova VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ovf VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.mf VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-file1.json VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-file2.rpm VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk1.vmdk VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk2.vmdk VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk3.vmdk
④ovaファイルを編集
vi VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ovf
以下のようにuserConfigurable="false"となっており、
デフォルト値(value="False")から変更したい項目について、
userConfigurable="true”と変更する。
<Property ovf:key="guestinfo.cis.appliance.ssh.enabled" ovf:type="boolean" ovf:userConfigurable="false" ovf:value="False"> <Label>SSH Enabled</Label> <Description>Set whether SSH-based remote login is enabled. This configuration can be changed after deployment.</Description> </Property>
⑤ovaファイルの再作成
④にてファイルを編集したことでハッシュが変更されているので、ハッシュ以外にてファイルを作成
# tar -cvf VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ova VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ovf VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-file1.json VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-file2.rpm VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk1.vmdk VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk3.vmdk VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10-disk2.vmdk VMware-vCenter-Server-Appliance-6.7.0.52000-19300125_OVF10.ova
⑥ansibleデプロイ
以下のようなyamlファイルを作成し、ansible-playbookにて実行
- hosts: local gather_facts: false vars_files: - ../vars_main.yml tasks: - name: Deploy vCenter community.vmware.vmware_deploy_ovf: hostname: '{{ vcenter.hostname }}' username: '{{ vcenter.username }}' password: '{{ vcenter.password }}' datacenter: '{{ vcenter.datacenter }}' cluster: '{{ vcenter.cluster }}' datastore: '{{ vcenter.datastore }}' disk_provisioning: thin folder: "/DC-01/vm/Env-{{ Env }}" name: '{{ Env }}-vcenter' networks: "Network 1": "Env-{{ Env }}" ovf: /ISO/VCSA-7.0.3.ovf validate_certs: no inject_ovf_env: yes deployment_option: tiny properties: guestinfo.cis.appliance.net.addr.family: "ipv4" guestinfo.cis.appliance.net.mode: "static" guestinfo.cis.appliance.net.addr: "172.16.{{ Env }}.2" guestinfo.cis.appliance.net.pnid: "{{ Env }}-vcenter.{{ domain }}" guestinfo.cis.appliance.net.prefix: "24" guestinfo.cis.appliance.net.gateway: "172.16.{{ Env }}.254" guestinfo.cis.appliance.net.dns.servers: "172.16.{{ Env }}.1" guestinfo.cis.appliance.root.passwd: "VMware1!" guestinfo.cis.appliance.ssh.enabled: "True" guestinfo.cis.appliance.ntp.servers: "time1.google.com" guestinfo.cis.deployment.autoconfig: "True" guestinfo.cis.vmdir.password: "VMware1!" domain: "{{ domain }}" searchpath: "{{ domain }}"