Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study - PowerPoint PPT Presentation

slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study PowerPoint Presentation
Download Presentation
Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study

play fullscreen
1 / 19
Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study
175 Views
Download Presentation
nau
Download Presentation

Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Extending Plesk Functionality to Control External Web Services A SoftLayer API Case Study Nathan Day CTO, SoftLayer Technologies, Inc.

  2. Introduction How to extend the functionality of Plesk for Linuxto talk to an external web service—the SoftLayer API. • Plesk Modules Overview • SoftLayer API Overview • Example: SoftLayer Demo Module • Questions Softlayer—Extending Plesk Functionality to Control External Web Services

  3. Introduction A global, on-demand data centerand hosting service provider The SoftLayer difference: • Automated Services and Solutions • Industry-leading Customer Portal and Open API • Industry’s First Secure Network-within-a-Network Topology • On-demand Scalability • Integrated Geographical Diversity www.SoftLayer.com Softlayer—Extending Plesk Functionality to Control External Web Services

  4. Introduction Long-standing partnership across multiple Parallels product lines • Gold Partner • Member of Service Provider Alliance Program • Sponsor of Parallels Summit & Softlayer—Extending Plesk Functionality to Control External Web Services

  5. Plesk Modules Overview “The main advantage of Plesk is the opportunity to manage a wide range of functionality from a single control panel. In this sense, integrating additional applications and services with Plesk via the mechanism of modules gains benefit as follows: • PCP (Plesk Control Panel) provides means for installing/uninstalling modules easily • Modules integrate with Plesk Language system • Modules integrate with Plesk Help system • Modules use skins provided by Plesk • Plesk provides Modules API specially designed to create Plesk-specific modules • Modules are registered in Plesk, which prevents from casual deletion of 'module’ applications” Plesk 8.3 Modules Development Guide Softlayer—Extending Plesk Functionality to Control External Web Services

  6. Plesk Modules Overview Plesk Modules – Consist of Front-end, Back-end, Resource Files, Install scripts, Third-party code – Controlled by a GUI Using Module Manager Softlayer—Extending Plesk Functionality to Control External Web Services

  7. SoftLayer API Web Service • Used for infrastructure management • Control Servers or Services (DNS, iSCSI, CDN, etc.) • SOAP or XML-RPC • Same functionality available as SoftLayer customer portal • Details available at SoftLayer Developer Networkhttp://www.softlayer.com/devnet.html Softlayer—Extending Plesk Functionality to Control External Web Services

  8. SoftLayer Plesk Module Example • Server Details • Bandwidth Graph from Switch Data • Server Power and Reboot Management • Accounting • Previous Invoices • Current Balance • Support Ticket • New • Previous Softlayer—Extending Plesk Functionality to Control External Web Services

  9. How we did it • Written in PHP • Built a class extending PHP SOAP Client • Uses built in Plesk templating • References built-in Plesk Module API • Uses built-in Plesk Global Constants • Created a template file per tab • Created a controller file per tab • Stores data in Plesk backend database Softlayer—Extending Plesk Functionality to Control External Web Services

  10. File listing Softlayer—Extending Plesk Functionality to Control External Web Services

  11. Code to access SoftLayer API $client = new SoftLayer_API_SoapClient('SoftLayer_Hardware_Server'); $objectMask = new SoftLayer_API_ObjectMask(); // General $objectMask->datacenter; $objectMask->serverRoom; $objectMask->provisionDate; $objectMask->lastOperatingSystemReload; // Hardware Components $objectMask->components->hardwareComponentModel->hardwareGenericComponentModel->hardwareComponentType; $objectMask->hardwareChassis; //software components $objectMask->softwareComponents->softwareLicense->softwareDescription->drivers; //network component $objectMask->primaryBackendIpAddress; $objectMask->primaryIpAddress; $objectMask->frontendNetworkComponents->uplinkComponent->networkVlan; $objectMask->frontendNetworkComponents->primarySubnet; $objectMask->frontendNetworkComponents->uplinkComponent->hardware; $objectMask->backendNetworkComponents->uplinkComponent->networkVlan; $objectMask->backendNetworkComponents->primarySubnet; $objectMask->backendNetworkComponents->uplinkComponent->hardware; $objectMask->bandwidthAllocation; // Billing cycle for bandwidth calculation $objectMask->account->billingInfo; $client->setObjectMask($objectMask); $server = $client->findByIpAddress($_SERVER['SERVER_ADDR']); Softlayer—Extending Plesk Functionality to Control External Web Services

  12. Module Page Softlayer—Extending Plesk Functionality to Control External Web Services

  13. General Tab Softlayer—Extending Plesk Functionality to Control External Web Services

  14. General Tab (continued) Softlayer—Extending Plesk Functionality to Control External Web Services

  15. Account Tab Softlayer—Extending Plesk Functionality to Control External Web Services

  16. Tickets Tab Softlayer—Extending Plesk Functionality to Control External Web Services

  17. Settings Tab Softlayer—Extending Plesk Functionality to Control External Web Services

  18. Conclusion Plesk functionality can be extendedbeyond the server using the modules subsystem • Next Steps for SoftLayer • Publish SoftLayer Demo • Encourage/Develop Integration Projects Softlayer—Extending Plesk Functionality to Control External Web Services

  19. References • Plesk 8.3 Unix Modules Guide • Plesk 8.3 Unix Modules Reference • SoftLayer API User’s Guide Wiki, http://sldn.softlayer.com/wiki • Kevin Laude, SoftLayer API Evangelist, klaude@softlayer.com Softlayer—Extending Plesk Functionality to Control External Web Services