Combining IBM SmartCloud Control Desk with Tivoli Storage and Endpoint Manager Solutions
Transcript of Combining IBM SmartCloud Control Desk with Tivoli Storage and Endpoint Manager Solutions
© 2013 IBM Corporation
SmartCloud Control Desk Puzzles Session: 1102 Speaker: Thomas Baumann <[email protected]>
1
Please note IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
2 http://www.tiri.li/ 24.02.2014
SmartCloud Control Desk Integration Puzzles
Who is tiri GmbH ? Product Overview
– IBM SmartCloud Control Desk (SCCD) – IBM Endpoint Manager (IEM) – IBM Tivoli Storage Manager (TSM)
Integration Modules – Just one specialty of many specialties
Combination – Case Study – Demo
Snippets (Components of the Puzzle) Tools
4 http://www.tiri.li/ 24.02.2014
tiri GmbH
IBM Premier Business Partner Founded 2008 Germany, Hamburg area, Northern territory
Specialty: Software Focus:
– IBM Tivoli Storage Manager TSM (AAA Accredited) – IBM Endpoint Manager IEM (AA Accredited) – IBM Tivoli Productivity Center TPC /
Virtual Storage Center VSC (AA Accredited)
6 http://www.tiri.li/ 24.02.2014
Product Overview
SmartCloud Control Desk
Tivoli Storage Manager
IBM Endpoint Manager
7 http://www.tiri.li/ 24.02.2014
Szenario
The IBM Tivoli Storage Manager family of products has long been recognized as a leader in unified recovery management, providing the ability to protect a wide range of systems including virtual machines, file servers, email, databases, mainframes and even desktops from a single administration interface.
Many customers have the need to respond quickly to requests of several departments, and also have to meet compliance requirements. Furthermore, backup jobs for ensuring RTO and RPO needs quickly and efficiently adapted.
Due to overloads of IT service departments or lack of knowledge at administrator-side, there is a need for simplification of work processes. By use of Standardization and Automation this can be achieved.
Customers and departments will also retrieve and verify information about the recovery state of their systems.
By combining SmartCloud Control Desk Self Service with IBM Tivoli Endpoint Manager and Tivoli Storage Manager as backend a highly efficient and secure infrastructure can be realized. With use of the IBM Tivoli Storage Productivity Center even storage for new machines can be provisioned and SAN Configuration throughout switch-infrastructure and Zoning can be fulfilled.
8 http://www.tiri.li/ 24.02.2014
SmartCloud Control Desk Features
– Helping to make it easier and friendlier for end users to request services, and have them fulfilled through full Information Technology Infrastructure Library ( ITIL™ ) compliant process automation.
– Providing a Platform for an Electronic App Store via standard IBM SmartCloud Contol Desk and IBM® Tivoli® Endpoint Manager integration, and integration with cloud provisioning tools (VMware, IBM SmartCloud Provisioning, and so on).
– Improving the productivity and responsiveness of the IT staff with new features and improved usability.
– Getting more social with live chat and improved social media integration.
– Improving smarter infrastructure management inside and outside the data center, including map integration.
– Improving mobile support, including map integration and directions. – Improving integration between development and operations (DevOps)
through IBM SmartCloud Control Desk and IBM Rational® development tools integration.
– Automated process control required to keep up with the rapid changes that cloud brings about
9 http://www.tiri.li/ 24.02.2014
IBM Endpoint Manager
Features – IBM® Endpoint Manager V9.0 delivers consolidated lifecycle
management and security and compliance solutions. The policy-based engine automates day-to-day operational tasks and enforces security and compliance standards to maximize productivity and reduce downtime by:
– Providing heterogeneous support for servers, workstations, laptops and mobile devices, including unified mobile device management capabilities for Android, iOS, Symbian, and Windows™ Mobile and Windows Phone 8
– Streamlining provisioning of new computers, automatically layering on software and configuration policies based on triggers such as group membership
– Reporting on compliance drifts and remedying configuration issues according to desired work-ready state defined policies
10 http://www.tiri.li/ 24.02.2014
IBM Tivoli Storage Manager
Features – IBM Tivoli Storage Manager and IBM Tivoli Storage Manager
Extended Edition V7.1 help reduce backup windows by helping optimize deduplication, node replication, and reclamation processes.
– IBM Tivoli Storage Manager for Virtual Environments V7.1 improves backup and recovery management in VMware environments
– Tivoli Storage Manager Operations Center V7.1 adds integrated administrative actions, improved visibility, and server diagnostics
11 http://www.tiri.li/ 24.02.2014
IBM Tivoli Storage Productivity Center Features
– Offers comprehensive visibility and centralized management of heterogeneous storage infrastructures with improved device management, custom tags, and agent-less server management from a single interface that is web-based and integrated for an enhanced user experience.
– Advances performance troubleshooting with a convenient performance monitor and health view, threshold violation views and graphs, and performance information views for all your resources.
– Delivers lower bandwidth remote mirroring replication management by providing management of SAN Volume Controller Change Volumes.
– Offers virtual volume transformation, including data compression. – Reports regularly on volume performance by server, unmanaged
server, and hypervisor, and allows you to export it for sharing and further analysis.
– Opens opportunities for VMware administrators to monitor and manage storage resources with more data and capabilities by providing a plug-in for VMware vCenter, and by adding support as a vSphere API for Storage Awareness provider.
13 http://www.tiri.li/ 24.02.2014
SCCD Interfaces
SCCD provides many Interfaces – tiri GmbH focuses on flexibility through usage of
Open Standards and Open Technologies – Connection from and to 3rd Party Systems, e.g.
• IBM Endpoint Manager (or any Software Management Suite) • IBM Tivoli Storage Manager (or any Backup Software) • IBM Tivoli Productivity Center (or any Storage Management Software) • IBM Monitoring (or any Monitoring System)
– Realized and Implemented by use of SCCD Integration Framework
14 http://www.tiri.li/ 24.02.2014
SCCD Integration Framework Integration Framework Components
– Predefined integration content – Applications to create and configure integration components – Support for multiple communication modes including web services,
hyper text transfer protocol (HTTP), and Java Message Service (JMS) messaging
– Support for different data formats, including database interface tables, XML and JavaScript Object Notation (JSON) messages, and flat files such as comma-separated text files
– Support for the import and export of bulk data – Event-based, batch, program-initiated, and user-initiated processing
and context-based launch of external applications – Support for integration to operational management products (OMPs) – Support for clustered environments – Support for interacting with applications that support the Open
Services for Lifecycle Collaboration (OSLC) integration specification. The integration framework can enable an application to be an OSLC consumer application that can integrate with an external application that has implemented OSLC provider capabilities.
15 http://www.tiri.li/ 24.02.2014
SCCD Integration Framework
Integration Framework Typical Scenarios – Load files with legacy data during an implementation. – Synchronize master data between a product application and an
external (e.g. ERP) application. – Use web services to enable real-time querying of product
application data by an external application. – Call an external application to validate data that is entered in a
product application.
Current Case-Study focuses on – Webservices in both directions – Usage of Commandline tools for management of 3rd Party Systems
16 http://www.tiri.li/ 24.02.2014
SCCD Connects to IEM
Automation Scripts invoked from a Workflow – Several Languages – Recommended: Jython (WebSphere Standard)
But
– Jython can invoke even Shell-Scripts
What is to met? – All IEM Functionality – Compliance – End-to-End Transparency
17 http://www.tiri.li/ 24.02.2014
IEM connects to IBM Tivoli Storage
Relevance Language in Combination with TSM Macros
Provides Automation
Self Healing ?
– e.g. Database Backup to Tape failed due to lack of Scratch Tapes – Where is enough space to ensure a current Database Backup
18 http://www.tiri.li/ 24.02.2014
TSM Monitoring connects to SCCD
Tivoli Storage Manager filetext Userexit function
Supervised by Monitoring Agent
On Warning / On Critical – Reporting into SCCD
Again: End to End Transparency
20 http://www.tiri.li/ 24.02.2014
Pulse Demo Environment
SuSE Linux Enterprise Server SLES 11 x86_64
IBM SmartCloud ControlDesk 7.5.1 – Websphere 7.0.0.27 ND – IBM Java 1.6.0 – cd /opt/IBM/SMP/maximo/applications/maximo – ./version.sh
22 http://www.tiri.li/ 24.02.2014
API
Easy use of Standardized Application Programming Interfaces provides End to End Monitoring and Automation
Which are used here? – TSM Programming API for own Client Operations – dsmadmc wrapper for Administrative Actions
• SNMP was an option, but insecure – REST API – Commandline Interfaces
23 http://www.tiri.li/ 24.02.2014
Special API
TSM – cd /opt/tivoli/tsm/client/api/bin64/sample – ln -s makesmp64.linux86 Makefile – make
• g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callbuff.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dpsthread.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callbuff64 callbuff.o dpsthread.o \ • -lApiTSM64 -lpthread -lcrypt -ldl • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callmt1.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callmt641 callmt1.o -lApiTSM64 -lpthread -lcrypt -ldl • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callmt2.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callmt642 callmt2.o -lApiTSM64 -lpthread -lcrypt -ldl • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dsmgrp.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o dsmgrp64 dsmgrp.o -lApiTSM64 -lpthread -lcrypt -ldl • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callevnt.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callevnt64 callevnt.o -lApiTSM64 • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callhold.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callhold64 callhold.o -lApiTSM64 • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c callret.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o callret64 callret.o -lApiTSM64 • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapiproc.c • ar rv libApiSmp64.a dapiproc.o • ar: creating libApiSmp64.a • a - dapiproc.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapibkup.c • ar rv libApiSmp64.a dapibkup.o • a - dapibkup.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapiinit.c • ar rv libApiSmp64.a dapiinit.o • a - dapiinit.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapiqry.c • ar rv libApiSmp64.a dapiqry.o • a - dapiqry.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapipref.c • ar rv libApiSmp64.a dapipref.o • a - dapipref.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapipw.c • ar rv libApiSmp64.a dapipw.o • a - dapipw.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapirc.c • ar rv libApiSmp64.a dapirc.o • a - dapirc.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapint64.c • ar rv libApiSmp64.a dapint64.o • a - dapint64.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapiutil.c • ar rv libApiSmp64.a dapiutil.o • a - dapiutil.o • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -c dapismp.c • g++ -O -I. -m64 -DLINUX_CLIENT -Wno-write-strings -o dapismp64 dapismp.o libApiSmp64.a -lApiTSM64
ApiTSM64
24 http://www.tiri.li/ 24.02.2014
Special API
SOAP Get Request – PHP Example
• <?php
• if (isset($argv[1])) { • $ticketid=$argv[1]; • } else { • $ticketid="1155"; • } • $client = new SoapClient("http://192.168.178.29/meaweb/wsdl/MXSR.wsdl", array('login' => "mmustermann", 'password' => "sccd4tiri"));
• #$paramsChild->REPORTEDBY = "mmustermann"; • #$paramsChild->AFFECTEDPERSON = "MMUSTERMANN"; • #$paramsChild->DESCRIPTION = "Software-inst"; • #$paramsChild->DESCRIPTION_LONGDESCRIPTION = "Update"; • #$paramsChild->SITEID = "TIRI4151"; • $paramsChild->TICKETID = $ticketid; • #$paramsChild->TICKETUID = "138"; • #$paramsChild->ASSETNUM = "PC09";
• $paramsParent->SR = $paramsChild; • $params->MXSRQuery = $paramsParent;
• try{ • $srequest = $client->QueryMXSR($params); • #print_r($srequest->MXSRSet->SR->TICKETID); • #print_r($srequest->MXSRSet->SR->STATUS); • echo $srequest->MXSRSet->SR->TICKETID->_."\t"; • echo $srequest->MXSRSet->SR->STATUS->_."\n"; • } • catch (Exception $exc){ • echo "Soap Error: " . $exc->getMessage()."\n"; • } • ?>
querySR.php
25 http://www.tiri.li/ 24.02.2014
Special API
SOAP Get Request – Perl Example
• #!/usr/bin/perl
• use strict; • use warnings; • use LWP::UserAgent;
• if ( ! $ARGV[0] ) { • die "no temaction provided..."; • }
• my $temaction=$ARGV[0];
• #$ENV{HTTPS_CA_FILE} = "/usr/share/ca-certificates/cacert.org/cacert.org.crt"; • $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
• my $ua = LWP::UserAgent->new;
• my $server_endpoint = "https://tiritem.support.tiri.li:52311/api/action/$temaction/status";
• #print $server_endpoint."\n";
• # set custom HTTP request header fields • my $req = HTTP::Request->new(GET => $server_endpoint); • $req->authorization_basic('tiriadm', 'Malzbier77'); • $req->header('content-type' => 'application/xml');
• # add POST data to HTTP request body • my $post_data = ''; • $req->content($post_data);
• my $resp = $ua->request($req); • if ($resp->is_success) { • my $message = $resp->decoded_content; • print "Received reply: $message\n"; • } • else { • print "HTTP POST error code: ", $resp->code, "\n"; • print "HTTP POST error message: ", $resp->message, "\n"; • }
GETTEMACTIONSTATUS.pl
26 http://www.tiri.li/ 24.02.2014
Special API
SOAP Put Request – PHP Example
•<?php • $client = new SoapClient("http://192.168.178.29/meaweb/wsdl/MXSR.wsdl", array('login' => "mmustermann", 'password' => "sccd4tiri")); • $paramsChild->REPORTEDBY = "mmustermann"; • $paramsChild->AFFECTEDPERSON = "MMUSTERMANN"; • $paramsChild->DESCRIPTION = "new_Softwareinst"; • $paramsChild->SITEID = "TIRI4151"; • $paramsChild->ASSETNUM = "PC09"; • $paramsParent->SR = $paramsChild; • $params->MXSRSet = $paramsParent; • try{ • $srequest = $client->CreateMXSR($params); • print_r($srequest); • $srid = $srequest->SRMboKeySet->SR->TICKETID; • print_r($srid); • } • catch (Exception $exc){ • echo "Soap Error: " . $exc->getMessage()."\n"; • } •?>
createSR.php
27 http://www.tiri.li/ 24.02.2014
Special API
Automation Script – Jython Example
• from java.io import BufferedReader from java.io import InputStreamReader from java.lang import ProcessBuilder process = ProcessBuilder(["/opt/IBM/scripts/automation/tiri.sh", "arg1", "arg2"]).start() input_stream = process.getInputStream() input_reader = InputStreamReader(input_stream) input_reader = BufferedReader(input_reader) line = input_reader.readLine() while line is not None: print line line = input_reader.readLine()
getInfo.jython
30 http://www.tiri.li/ 24.02.2014
Jython Interpreter
/opt/ibm/db2/V9.7/java/jdk64/jre/bin/java -jar \ /opt/IBM/WebSphere/AppServer/profiles/ctgAppSrv01/installedApps/ctgCell01/MAXIMO.ear/lib/jython.jar • Jython 2.5.2 (Release_2_5_2:7206, Mar 2 2011, 23:12:06)
• [IBM J9 VM (IBM Corporation)] on java1.6.0 • Type "help", "copyright", "credits" or "license" for more information. • >>> import os • >>> os.getcwd() • '/root' • >>> quit()
Jython interpreter
31 http://www.tiri.li/ 24.02.2014
Automated EAR Re-Deployment
/perl -pi -e 's|PERFJAVAOPTION="-Xms256m -Xmx256m -Xj9 -Xquickstart"|PERFJAVAOPTION="-Xms1024m -Xmx1024m -Xj9 -Xquickstart"|g' /opt/IBM/SMP/wasclient/ThinWsadmin.sh
/opt/IBM/SMP/jacl/solutions/DeployApplication.sh wasadmin passw0rd MAXIMO ctgNode01 MXServer /opt/IBM/SMP/maximo/deployment/default/maximo.ear maximo_host webserver1
•Entering /opt/IBM/SMP/jacl/solutions/DeployApplication.sh at Thu Jun 20 11:21:26 CEST 2013. •… •Application name: MAXIMO •Path to new EAR: /opt/IBM/SMP/maximo/deployment/default/maximo.ear •WAS Node: ctgNode01 •WAS Application Server: MXServer •WAS Virtual Host: maximo_host •WAS Web Server: webserver1 •CCMDB lib dir: /opt/IBM/SMP/lib •CCMDB JACL dir: /opt/IBM/SMP/jacl/solutions •-------------------------------------------------------------- •Running ThinWsadmin.sh with appInstall.py: Deploying application MAXIMO. •Command Line: •/opt/IBM/SMP/wasclient/ThinWsadmin.sh -user wasadmin -password xxxxxxxxxx -lang jython -f /opt/IBM/SMP/scripts/was/appInstall.py install MAXIMO ctgNode01 MXServer /opt/IBM/SMP/maximo/deployment/default/maximo.ear maximo_host webserver1 •WASX7209I: Mit Prozess "dmgr" auf Knoten ctgCellManager01 über SOAP-Connector verbunden. Typ des Prozesses: DeploymentManager •…
DeployApplication.sh
32 http://www.tiri.li/ 24.02.2014
Acknowledgements, disclaimers and trademarks The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in this publication to IBM products, programs or services do not imply that they will be made available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth, savings or other results. All statements regarding IBM future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. Information concerning non-IBM products and services was obtained from a supplier of those products and services. IBM has not tested these products or services and cannot confirm the accuracy of performance, compatibility, or any other claims related to non-IBM products and services. Questions on the capabilities of non-IBM products and services should be addressed to the supplier of those products and services. All customer examples cited or described are presented as illustrations of the manner in which some customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer and will vary depending on individual customer configurations and conditions. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. tiri, the tiri logo, tiri.li, and other tiri GmbH products and services are trademarks or registered trademarks of tiri GmbH, Germany. IBM, the IBM logo, ibm.com, Tivoli, the Tivoli logo, Tivoli Enterprise Console, Tivoli Storage Manager FastBack, and other IBM products and services are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at ibm.com/legal/copytrade.shtml