http://predixtransform.com
Architect, design, build, maintain and support your software services for publishing in the Predix catalog. In this session, we'll provide a detailed overview of the life cycle of publishing a software service in the Predix catalog. This will include a practical “how to build” the required service broker, as well as architectural considerations.
4. 4PREDIX TRANSFORM
Approval Process
Level 1
• Product Management
• Marketing Management
• Business Development
Level 2
• Architecture
• Security/Legal and Risk
• Pricing and Commercialization
• 24/7 Technical Operation and Support
5. 5PREDIX TRANSFORM
Partner Portal Preview
• Describes the Evaluation Process
• Includes Guidelines for partners to
prepare their proposals
• Provides the entry point to launch
the onboarding workflow
9. 9PREDIX TRANSFORM
1. Enterprise
account in
Predix Basic
Provision VM
for deploying
non-CF service
2. Provision an
Org and Spaces
3. Build Service
and Service
Broker
5. Prepare API
doc with
Swagger 2.0
Security and Risk Assessment
4. Set up CI/CD
Pipeline for all
environments
Technical Onboarding Process
Setting up a Development Environment in Predix Basic
12. 12PREDIX TRANSFORM
Auto-provisioning Service Broker
package com.ge.predix.tpsp.handler;
import java.util.Map;
import com.ge.predix.tpsp.exception.ServiceProxyException;
import com.ge.predix.tpsp.model.PatchServiceRequest;
import com.ge.predix.tpsp.model.ProvisionServiceRequest;
public interface AdminServiceHandler {
public boolean validateProvisionServiceRequest( ProvisionServiceRequest request)throws
ServiceProxyException;
public boolean validatePatchServiceRequest(String instanceId, PatchServiceRequest
request)throws ServiceProxyException;
public Map<String, Object>autoProvision(Map<String, Object>params)throws
ServiceProxyException;;
}
13. 13PREDIX TRANSFORM
Extending with Actual Proxy Service
/**
* Provides an example service controller to be extended with actual proxy
* service methods
*/
@RestController
@RequestMapping(value = { V1P}
public class ProxyMethodController {
public static final String BASE_PATH = "/resource";
private static final Logger logger = LoggerFactory
.getLogger(ProvisionServiceController.class);
@Autowired
private ServiceInstanceContext context;
@SuppressWarnings("nls")
@RequestMapping(value = BASE_PATH , method = RequestMethod.GET, consumes =
MediaType.TEXT_PLAIN_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> retrieve() {
//retrieve service parameters for this subscriber
ServiceInstanceDto dto =this.context.getServiceInstanceContext();
logger.info("Proxy GET service called for: "+ dto.getServiceInstanceId());
return new ResponseEntity<String>(dto.toString(), HttpStatus.OK);
}
}
15. 15PREDIX TRANSFORM
4. Set up CI/CD
Pipeline for all
environments
ISV Partner
Meta
Store
Deployment
API
Tile
Deployment
Request
Deployment Workflow
Approval Gateway
Deploy to
sandbox & run
tests
Promote to
Preprod
Deploy to
Preprod &
request approval
Deploy to
Predix Prod
Status API
Start
workflow
Update status
Status
DB
17. 17PREDIX TRANSFORM
Deploy service
broker (and
Service) in Stage
for validation
Finalize documentation and tile
design with logo for Beta
Build sample, prepare Brownbag
session
Set up training for 24/7 support
and monitoring team
Set up 24/7
service
monitoring and
support
Security and Risk Assessment
Go Beta!
Beta Release Process
18. 18PREDIX TRANSFORM
Remediate
security & risk
assessment
Finalize all
commercial
term and
contract
agreements
Set up CI/CD
Pipeline for all
environments
Open change
management
ticket
Update 24/7
support system
Security and Risk Assessment
General Availability Process
19. 19PREDIX TRANSFORM
Update CI/CD
Pipeline for all
environments
Finalize any
commercial
term changes
Deploy and test
the update in
Stage env.
Change
management
ticket for prod.
push
Update 24/7
support system
Security and Risk assessment
Updates and Patches Process
22. 22PREDIX TRANSFORM
Technical Support Model
for 3rd Party microservices in the Predix catalog
GE Digital Tech Support Predix
Developers
SLASLA
ISV
Partner
23. 23PREDIX TRANSFORM
SLAs and Escalations
To accomplish high availability of the Predix Platform, we
adhere to the below:
• Clear Incident definition
• Quick response according to the Priority of the Incident
• Clear escalation channels
• Monitoring and health checks
24. 24PREDIX TRANSFORM
SLAs and Escalations
ITEM P0 P1 P2 P3 P4
Internal Time to
Resolve(after priority
confirmed)
< 43 minutes 2 hours 1 sprint 3 sprints 3+ sprints
Communication
Interval
1 hour 1 hour 4 hours 2 business days 1 business week
Description • 1 or more service(s)
completely down
(blocked)
• Multiple customers
impacted
• Major functional outage
• Service is up but
intermittent; single
customer impact
• Dev pipeline down
• Functionality
impacted/impaired
• Performance impacted
• Known workaround
exists
• Single user issue
• Minor functionality
impacted
• Known workaround
exists
• Documentation
• Low priority
issue/informational
• No risk to other
functionality/service
Priority Immediate Critical High Medium Low
25. 25PREDIX TRANSFORM
How Does GE Digital Do SOPs and Monitoring?
How do we use SOPs?
What are we monitoring?
Alerts and alarms
27. 27PREDIX TRANSFORM
Future: Automation
Tazo, the friendly support
chat-bot
• Current capabilities
The future
• New relic integration
• Service Now integration
• Live logging
• Troubleshooting help
28. 28PREDIX TRANSFORM
Requirements Recap
• Contact numbers and email addresses
• Expected response time
• Monitoring (new relic)
• Health checks
• Additional checks
• Definition of each component (each service)
• Documentation