mirror of
https://github.com/vmware/vsphere-automation-sdk-python.git
synced 2024-11-22 09:39:58 -05:00
clean up old gh-pages files
This commit is contained in:
parent
1860069aae
commit
4b3a3e101c
37
README.md
37
README.md
@ -1,37 +0,0 @@
|
|||||||
# VMTN6720U - Hackathon Training: Getting started with the vSphere Automation SDK for Python
|
|
||||||
**Date:** 08/28/17 6:30PM-8:00PM
|
|
||||||
|
|
||||||
# Agenda
|
|
||||||
* Introduction to vSphere REST API
|
|
||||||
* vSphere Automation SDKs
|
|
||||||
* Getting Started Using the Python SDK
|
|
||||||
* Lab
|
|
||||||
|
|
||||||
# Introduction to vSphere REST API
|
|
||||||
* Consume from SDKs, CLI’s
|
|
||||||
* NOTE: Need bullets from Alan
|
|
||||||
|
|
||||||
# vSphere Automation SDKs
|
|
||||||
* Supported Languages
|
|
||||||
* Python, Java, Ruby, Perl, .NET, REST (JavaScript/Postman)
|
|
||||||
* Open Source on Github
|
|
||||||
* SDK Includes:
|
|
||||||
* Runtime
|
|
||||||
* Serialization
|
|
||||||
* Language Binding
|
|
||||||
* Python Wrapper around REST API
|
|
||||||
* API Reference Documentation (for offline usage)
|
|
||||||
|
|
||||||
# [Labs](lab.md)
|
|
||||||
|
|
||||||
**Wifi**: VMworld-Hackathon-Training-4<br />
|
|
||||||
**Wifi Password**: Hackathon2017
|
|
||||||
|
|
||||||
Connect to VC matching first letter of your last name (poorman’s load balance):
|
|
||||||
|
|
||||||
**VC1**: [192.168.104.11](https://192.168.104.11) (A-H)<br />
|
|
||||||
**VC2**: [192.168.104.13](https://192.168.104.13) (I-Q)<br />
|
|
||||||
**VC3**: [192.168.104.13](https://192.168.104.13) (R-Z)<br />
|
|
||||||
|
|
||||||
**VC Username**: administrator@vsphere.local<br />
|
|
||||||
**VC Password**: VMware1!
|
|
@ -1 +0,0 @@
|
|||||||
theme: jekyll-theme-tactile
|
|
188
lab.md
188
lab.md
@ -1,188 +0,0 @@
|
|||||||
# VMworld 2017 Python SDK Hackathon
|
|
||||||
|
|
||||||
## Install Python
|
|
||||||
Go to: [downloads](https://www.python.org/downloads/) and download and install Python for your Platform.
|
|
||||||
The SDK supports both python2 and python3, but we recommend to install the latest version of python3.
|
|
||||||
|
|
||||||
## Setup Python SDK
|
|
||||||
|
|
||||||
Create and activate a virtual env:
|
|
||||||
|
|
||||||
#### Python2:
|
|
||||||
|
|
||||||
virtualenv <env_dir>
|
|
||||||
|
|
||||||
#### Python3:
|
|
||||||
|
|
||||||
| Windows | OSX |
|
|
||||||
|---------|-----|
|
|
||||||
|```py -m venv <env_dir>```|```python3 -m venv <env_dir>```|
|
|
||||||
|
|
||||||
#### Activate your virtual env:
|
|
||||||
|
|
||||||
| Windows | OSX |
|
|
||||||
|---------|-----|
|
|
||||||
|```<env_dir>\Scripts\activate```|```source <env_dir>/bin/activate```|
|
|
||||||
|
|
||||||
## Clone the github repo
|
|
||||||
The python github repo is located [here](https://github.com/vmware/vsphere-automation-sdk-python)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/vmware/vsphere-automation-sdk-python
|
|
||||||
```
|
|
||||||
Or optionally [download](https://github.com/vmware/vsphere-automation-sdk-python/archive/master.zip) the SDK from Github as a .zip file and unzip it to the current dir.
|
|
||||||
|
|
||||||
## Install dependencies
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cd <sdk-dir>
|
|
||||||
pip install -r requirements.txt --extra-index-url <file:///abs_path/to/sdk/lib/>
|
|
||||||
```
|
|
||||||
|
|
||||||
## Set PYTHONPATH to use SDK helper methods
|
|
||||||
|
|
||||||
#### Linux/Mac:
|
|
||||||
|
|
||||||
export PYTHONPATH=${PWD}:$PYTHONPATH
|
|
||||||
|
|
||||||
#### Windows:
|
|
||||||
|
|
||||||
set PYTHONPATH=%cd%;%PYTHONPATH%
|
|
||||||
|
|
||||||
## OPTIONAL: Install Visual Studio Code IDE
|
|
||||||
Microsoft's Visual Studio Code is a great (free) IDE that can be used for Python via a plugin providing a rich development environment.
|
|
||||||
|
|
||||||
[Visual Studio Code](https://code.visualstudio.com/)<br />
|
|
||||||
[Python Plugin](https://marketplace.visualstudio.com/items?itemName=donjayamanne.python)
|
|
||||||
|
|
||||||
## vSphere Python SDK Examples
|
|
||||||
Start the Python command interpreter:
|
|
||||||
|
|
||||||
#### Linux/Mac:
|
|
||||||
|
|
||||||
python3
|
|
||||||
|
|
||||||
#### Windows:
|
|
||||||
|
|
||||||
py
|
|
||||||
|
|
||||||
## List VC inventory in interactive mode
|
|
||||||
|
|
||||||
### Connect to the vSphere REST API endpoint
|
|
||||||
|
|
||||||
```python
|
|
||||||
from samples.vsphere.common import vapiconnect
|
|
||||||
stub_config = vapiconnect.connect("<VC_IP_Address>", "administrator@vsphere.local", "VMware1!", True)
|
|
||||||
```
|
|
||||||
|
|
||||||
### List VMs
|
|
||||||
|
|
||||||
```python
|
|
||||||
from com.vmware.vcenter_client import VM
|
|
||||||
vm_svc = VM(stub_config)
|
|
||||||
vm_svc.list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### List Datacenters
|
|
||||||
|
|
||||||
```python
|
|
||||||
from com.vmware.vcenter_client import *
|
|
||||||
Datacenter(stub_config).list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### List Clusters
|
|
||||||
|
|
||||||
```python
|
|
||||||
Cluster(stub_config).list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### List Hosts
|
|
||||||
|
|
||||||
```python
|
|
||||||
Host(stub_config).list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### List Folders
|
|
||||||
|
|
||||||
```python
|
|
||||||
Folder(stub_config).list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### List Datastore
|
|
||||||
|
|
||||||
```python
|
|
||||||
Datastore(stub_config).list()
|
|
||||||
```
|
|
||||||
|
|
||||||
### Find a specific host using a filter spec
|
|
||||||
|
|
||||||
```python
|
|
||||||
filter_spec = Host.FilterSpec(names=set(["<HOST_IP_Address>"]))
|
|
||||||
Host(stub_config).list(filter_spec)
|
|
||||||
```
|
|
||||||
|
|
||||||
Note: To exit interactive Python simply type quit() and press Return:
|
|
||||||
|
|
||||||
```python
|
|
||||||
quit()
|
|
||||||
```
|
|
||||||
|
|
||||||
## Run samples on github
|
|
||||||
For this portion of the lab we recommend using your favorite code editor or as mentioned above download and install [Visual Studio Code](https://code.visualstudio.com/). We will be using Visual Studio code to demo these examples.
|
|
||||||
|
|
||||||
Open the sample property file testbed.py using your favourite text editor, such as:
|
|
||||||
|
|
||||||
#### Linux/OSX:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
vi samples/vsphere/vcenter/setup/testbed.py
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Windows:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
notepad samples\vsphere\vcenter\setup\testbed.py
|
|
||||||
```
|
|
||||||
|
|
||||||
And then change the following two settings:
|
|
||||||
|
|
||||||
```python
|
|
||||||
config["SERVER"] = "<VC_IP_Address>"
|
|
||||||
config["PASSWORD"] = "VMware1!"
|
|
||||||
config["VM_DATASTORE_NAME"] = "vsanDatastore"
|
|
||||||
```
|
|
||||||
|
|
||||||
### Run create basic VM sample
|
|
||||||
|
|
||||||
**NOTE:** Be sure to name the VM using your First and Last name so it's unique!!
|
|
||||||
|
|
||||||
```bash
|
|
||||||
python samples/vsphere/vcenter/vm/create/create_basic_vm.py -v -n "vm_<firstname_lastname>"
|
|
||||||
```
|
|
||||||
|
|
||||||
### Verify the new VM is created successfully
|
|
||||||
|
|
||||||
```bash
|
|
||||||
python samples/vsphere/vcenter/vm/list_vms.py -v
|
|
||||||
```
|
|
||||||
|
|
||||||
### Run deploy ovf template sample
|
|
||||||
|
|
||||||
**NOTE:** Use single quote for password in Mac 'VMware1!'
|
|
||||||
|
|
||||||
```bash
|
|
||||||
python samples/vsphere/contentlibrary/ovfdeploy/deploy_ovf_template.py -v -clustername "Cluster1" -libitemname "Sample_OVF"
|
|
||||||
```
|
|
||||||
|
|
||||||
### Verify the new VM is deployed successfully
|
|
||||||
|
|
||||||
```bash
|
|
||||||
python samples/vsphere/vcenter/vm/list_vms.py -v
|
|
||||||
```
|
|
||||||
|
|
||||||
## Exercises
|
|
||||||
Try to use the sample_template to create three scripts and then run them:
|
|
||||||
|
|
||||||
* Power on/off the VM you created
|
|
||||||
* Edit VM cpu/memory
|
|
||||||
* Add a CD-ROM to your VM
|
|
Loading…
Reference in New Issue
Block a user