This is an automated email from the ASF dual-hosted git repository. heneveld pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/brooklyn-docs.git
commit 24a6379ee806958eb048d42c23c0023949d8d35d Author: iuliana <[email protected]> AuthorDate: Fri Oct 29 18:30:21 2021 +0100 Added vSphere location documentation --- guide/locations/_azure-ARM.md | 2 +- guide/locations/_byon.md | 2 +- guide/locations/_ibm-softlayer.md | 2 +- .../locations/_inheritance-and-named-locations.md | 2 +- guide/locations/_localhost.md | 2 +- .../_location-customizer-security-groups.md | 2 +- guide/locations/_location-customizers.md | 2 +- guide/locations/_special-locations.md | 2 +- guide/locations/_ssh-keys.md | 2 +- guide/locations/_vSphere.md | 114 +++++++++++++++++++++ 10 files changed, 123 insertions(+), 9 deletions(-) diff --git a/guide/locations/_azure-ARM.md b/guide/locations/_azure-ARM.md index d1eb149..72758ee 100644 --- a/guide/locations/_azure-ARM.md +++ b/guide/locations/_azure-ARM.md @@ -219,7 +219,7 @@ stored in protected .PFX file. It needs to be prepared upfront or created with t ###### Sample Windows Blueprint -Placeholders surrounded with `<>` have to be replcaced with their respective values. +Placeholders surrounded with `<>` have to be replaced with their respective values. {% read snippets/_location-azure-sample-windows.camp.md%} diff --git a/guide/locations/_byon.md b/guide/locations/_byon.md index e04e077..4547f3f 100644 --- a/guide/locations/_byon.md +++ b/guide/locations/_byon.md @@ -1,6 +1,6 @@ --- section: BYON -section_position: 8 +section_position: 9 section_type: inline --- diff --git a/guide/locations/_ibm-softlayer.md b/guide/locations/_ibm-softlayer.md index f2a41ea..be8d444 100644 --- a/guide/locations/_ibm-softlayer.md +++ b/guide/locations/_ibm-softlayer.md @@ -2,7 +2,7 @@ section: IBM Cloud Previously IBM Softlayer title: IBM Softlayer section_type: inline -section_position: 6 +section_position: 7 --- ## IBM Cloud (previously IBM SoftLayer) diff --git a/guide/locations/_inheritance-and-named-locations.md b/guide/locations/_inheritance-and-named-locations.md index bf237f3..5a94d51 100644 --- a/guide/locations/_inheritance-and-named-locations.md +++ b/guide/locations/_inheritance-and-named-locations.md @@ -2,7 +2,7 @@ section: Inheritance and Named Locations title: Named Locations section_type: inline -section_position: 7 +section_position: 8 --- ### Inheritance and Named Locations diff --git a/guide/locations/_localhost.md b/guide/locations/_localhost.md index 695aa2b..d32c73f 100644 --- a/guide/locations/_localhost.md +++ b/guide/locations/_localhost.md @@ -1,6 +1,6 @@ --- section: Localhost -section_position: 10 +section_position: 11 section_type: inline --- diff --git a/guide/locations/_location-customizer-security-groups.md b/guide/locations/_location-customizer-security-groups.md index 31efa78..8f1ebaa 100644 --- a/guide/locations/_location-customizer-security-groups.md +++ b/guide/locations/_location-customizer-security-groups.md @@ -1,6 +1,6 @@ --- section: Customizing Cloud Security Groups -section_position: 12 +section_position: 13 section_type: inline --- diff --git a/guide/locations/_location-customizers.md b/guide/locations/_location-customizers.md index 974d557..1e219e8 100644 --- a/guide/locations/_location-customizers.md +++ b/guide/locations/_location-customizers.md @@ -1,7 +1,7 @@ --- section: Location Customizers section_type: inline -section_position: 11 +section_position: 12 --- ### Location Customizers diff --git a/guide/locations/_special-locations.md b/guide/locations/_special-locations.md index 5febe32..62c63e1 100644 --- a/guide/locations/_special-locations.md +++ b/guide/locations/_special-locations.md @@ -1,6 +1,6 @@ --- section: Specialized Locations -section_position: 13 +section_position: 14 section_type: inline --- diff --git a/guide/locations/_ssh-keys.md b/guide/locations/_ssh-keys.md index 96f7aed..bb049d4 100644 --- a/guide/locations/_ssh-keys.md +++ b/guide/locations/_ssh-keys.md @@ -1,6 +1,6 @@ --- section: SSH Keys -section_position: 9 +section_position: 10 section_type: inline --- diff --git a/guide/locations/_vSphere.md b/guide/locations/_vSphere.md new file mode 100644 index 0000000..c8c8b04 --- /dev/null +++ b/guide/locations/_vSphere.md @@ -0,0 +1,114 @@ +--- +section: vSphere Locations +section_position: 6 +section_type: inline +--- + +### vSphere Locations + +[VMware vSphere](https://docs.vmware.com/en/VMware-vSphere) is VMware's virtualization platform, which transforms data centers into aggregated computing infrastructures that include CPU, storage, and networking resources. +vSphere manages these infrastructures as a unified operating environment, and provides you with the tools to administer the data centers that participate in that environment. +Apache Brooklyn includes support for vSphere servers regardless of the underlying provider ([AWS](https://aws.amazon.com/vmware), [Hetzner](https://docs.hetzner.com/robot/dedicated-server/virtualization/vmware-esxi/), etc). + +To deploy applications on a vSphere server Apache Brooklyn needs to know its vRealize Automation endpoint that is used to communicate with vCenter to discover compute resources, collect data, and provision machines. +It is recommended to create customized VM templates to be cloned to speed up provisioning operations. +The vSphere Server endpoint is secured and credentials must be provided in the vSphere location catalog definition. + +Below are examples of configuration options that use values specific to a vSphere server: + +* `endpoint` specifies the URL of an vRealize Automation endpoint +* `identity` specifies the identity of the user accessing the vRealize Automation endpoint +* `credential` specifies the password for the user accessing the vRealize Automation endpoint +* `resourcePool` specifies the name of an existing resource pool by vCenter +* `cluster` specifies the name of an existing cluster managed by vCenter +* `datastore` specifies the name of an existing datastore managed by vCenter +* `customDomain` specified an Active Directory domain +* `folder` specifies the name of the folder that groups the VMs generated based on the location blueprint +* `imageId` specifies the identifier of the VM to clone +* `osFamily: windows` tells Apache Brooklyn to consider it as a Windows machine. +* `user` , `password` specify the credentials of the cloned VM. Apache Brooklyn uses them to log into the VM to customize it. +* `networks` specifies a list of networks the cloned VM will be added in. +* `cloudMachineNamer: org.apache.brooklyn.core.location.cloud.names.CustomMachineNamer` a special Apache Brooklyn type that provides unique VM names +* `custom.machine.namer.machine` specifies a template for the `cloudMachineNamer` to use when generating unique VM names +* `vmNameMaxLength:80` tells vCenter to strip the VM name to maximum 15 characters. + + +The next two sections show a Linux and Windows locations examples. + +#### Sample Linux Blueprint + +Placeholders surrounded with `<>` have to be replaced with their respective values. + +```yaml +brooklyn.catalog: + id: my-vsphere-linux-location + name: my-vsphere-linux-location + itemType: location + item: + type: vsphere + brooklyn.config: + displayName: vSphere VMware Linux + + # vcenter access + endpoint: https://<VSPHERE-SERVER>/sdk + identity: <VSPHERE-USER> + credential: <VSPHERE-PASS> + + resourcePool: Resources + cluster: <COMPUTE-CLUSTER> + datastore: <DATASTORE> + customDomain: <DOMAIN> + folder: <FOLDER> + + # VM template details + imageId: <TEMPLATE-VM> + user: <VM-USER> + password: <VM-PASSWORD> + networks: + - name: <NETWORK-NAME> + + # Prefix machine name with initials + cloudMachineNamer: org.apache.brooklyn.core.location.cloud.names.CustomMachineNamer + custom.machine.namer.machine: <PREFIX>-${entity.application.id}-LINUX-${entity.displayName[0..*10]}-${entity.id} + vmNameMaxLength: 80 +``` + + +#### Sample Windows Blueprint + +Placeholders surrounded with `<>` have to be replaced with their respective values. + +```yaml +brooklyn.catalog: + id: my-vsphere-windows-location + name: my-vsphere-windows-location + itemType: location + item: + type: vsphere + brooklyn.config: + displayName: vSphere VMware Windows + + # vcenter access + endpoint: https://<VSPHERE-SERVER>/sdk + identity: <VSPHERE-USER> + credential: <VSPHERE-PASS> + + resourcePool: Resources + cluster: <COMPUTE-CLUSTER> + datastore: <DATASTORE> + customDomain: <DOMAIN> + folder: <FOLDER> + + # VM template details + imageId: <TEMPLATE-VM> + osFamily: Windows + user: Administrator + password: <VM-PASSWORD> + networks: + - name: <NETWORK-NAME> + + # Prefix machine name with initials + cloudMachineNamer: org.apache.brooklyn.core.location.cloud.names.CustomMachineNamer + custom.machine.namer.machine: <PREFIX>-${entity.application.id}-WINDOWS-${entity.displayName[0..*10]}-${entity.id} + vmNameMaxLength: 80 +``` \ No newline at end of file
