getting stoned with "project onyx"

17
© 2009 VMware Inc. All rights reserved Getting Stoned with “Project Onyx”

Upload: carter-shanklin

Post on 26-Jan-2015

114 views

Category:

Technology


1 download

DESCRIPTION

Introducing "Project Onyx" which is a code generator for use with vSphere Client. Just launch Onyx, connect to it with your vSphere Client, then any action you take is converted into real, functional code. For more info visit http://vmware.com/go/onyx

TRANSCRIPT

Page 1: Getting Stoned with "Project Onyx"

© 2009 VMware Inc. All rights reserved

Getting Stoned with “Project Onyx”

Page 2: Getting Stoned with "Project Onyx"

2Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

You Don’t Know How To Use The VMware API!

•Documentation is sparse.•No training.•No developer certifications.•Few published best practices.• Limited samples.•Only one book on the market.

•How much confidence do you have in the code you ship?•How can you be sure you’re

not setting an expensive trap for yourself?

Page 3: Getting Stoned with "Project Onyx"

3Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

That’s Just Like, You Know, Your Opinion, Man.

Cost of fixing bugs is huge.

But the worst is when you find bugs in the field.

What bugs are you shipping that you don’t even know about?

Page 4: Getting Stoned with "Project Onyx"

4Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

The Blunt Truth About vSphere API.

Quick facts about the vSphere API.

• Over 450 functions.

• Some functions hide dozens of use cases. The single argument to ReconfigVM contains 306 nested properties.

Total of 69 optional properties when reconfiguring switches or portgroups.

Total of 52 properties when configuring iSCSI targets.

• Not object-oriented, many things lack object representation. VM CDROM drives.

VM network cards.

Virtual switches.

Very complex, taking years to master.

Page 5: Getting Stoned with "Project Onyx"

5Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

You use the same API that VMware does!

Re-Hashing Some Old Details.

vCenter

vSphere Web Services

Your Code!vSphere Client

ESX ESXESXESXESX

Borrow best practicesLearn from the experts

Page 6: Getting Stoned with "Project Onyx"

6Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Blaze Through Your Product Development Cycle With Onyx.

There is a tool just like that! “Project Onyx”!

What is “Project Onyx”?

• Client-side proxy software.

• Macro record style code generation.

• Convert vSphere Client requests to code.

• From the creators of PowerCLI.

• Generates functional PowerShell code.

• Can be easily converted to other languages such as Java or C#.

• With Onyx your development: Faster!

Fewer Bugs!

Follows Best Practices!

Page 7: Getting Stoned with "Project Onyx"

7Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Onyx: Your Stepping Stone To High Performance.

• Launch Onyx on your client, runs on port 1545.

• Start vSphere Client, connect to http://localhost:1545/

• Onyx connects to your ESX or vCenter via https.

• Any action after that can be turned into code.

ESX or vCenter

Page 8: Getting Stoned with "Project Onyx"

9Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Let Onyx Smoke Out The Details For You.

Let’s say you need to figure out how to set a VM’s MAC address.

Old way:

• Open the vSphere API documentation.

• Try to find a network card object.

• Discover there is no network card object, so grope around in the VM object.

• Discover the virtual hardware array, poke around looking for network cards.

• (About 5 more steps omitted.)

With Onyx:

• Launch Onyx and log in.

• Edit the VM’s properties.

• Change the MAC address.

• Look at the code that Onyx generated for you.

It’s that simple!

Page 9: Getting Stoned with "Project Onyx"

10Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

End Chronic Confusion Syndrome.

Onyx sees everything and can explain everything.

Turn anything the vSphere Client can do into code, no matter how complex.

• You don’t waste time digging through API references.

• You don’t waste time figuring out complex property relationships.

Page 10: Getting Stoned with "Project Onyx"

11Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Don’t Get Burned By These Gotchas.

Onyx code requires human review and refactoring.

• Object IDs are constant and hard-coded.

• Unnecessary code may be generated.

• Code is not complete and functional, you have to add supporting logic.

Page 11: Getting Stoned with "Project Onyx"

12Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

A Joint Demo With VI Java API.

What exactly is VI Java?

• A Java binding to the vSphere Web Service API!

• An alternative to the vSphere Web Services SDK!

• True object-oriented model!

• High performance! (http://vijmark.sf.net)

• Open source! (http://vijava.sf.net)

• Provides POJO for many things not objectified by vSphere API! (Although Onyx cannot take advantage of that!)

Demo shows how to convert Onyx code to VI Java code.

• VM.

• Storage.

• Network.

Page 12: Getting Stoned with "Project Onyx"

13Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

The Science.

4 rules for converting into your language of choice.•Create objects when Onyx does, use the same name.•Assemble the overall object at the end.•Bring your own code for looking up IDs.•Replace Get-View with class methods or static lookup code.

Page 13: Getting Stoned with "Project Onyx"

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

DEMOhttp://vmware.com/go/onyx

Page 14: Getting Stoned with "Project Onyx"

15Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Get Hooked Up!

Conclusion:•vSphere API is hard.•Onyx makes it less hard.•4 rules for converting into your language of choice. Create objects when Onyx does, use the same name.

Assemble the overall object at the end. Bring your own code for looking up IDs. Replace Get-View with class methods or static lookup code.

•Net result: Faster Development Fewer Bugs. Follow Best Practices.

But wait there’s more!•Debug your own clients with Onyx!

Page 15: Getting Stoned with "Project Onyx"

16Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Time Keeps Slipping Into The Future

Onyx Future Possibilities.•Java / C#.• Integration into vSphere Client.•Code refactoring and function/method generation.•What do you want to see?

Page 16: Getting Stoned with "Project Onyx"

17Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Get Hooked Up!

http://vmware.com/go/onyx•Download.•Watch the getting started video.•Give feedback.

Page 17: Getting Stoned with "Project Onyx"

Copyright © 2010 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. VMware products are covered by one or more patents listed at http://www.vmware.com/go/patents. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Q+Ahttp://vmware.com/go/onyx