Service Level Agreement
Last Revised: July 26, 2011
1. Purpose
The purpose of this document is to identify the levels of service that Opscode will endeavor to maintain in support of customers of the Hosted Chef service, and to provide this information on standard support level customers' use of Opscode Hosted Chef.
1.1 Scope
This document describes the basic level of service that Opscode will endeavor to provide in its support of the delivery of Opscode Hosted Chef. This includes the following:
- Opscode Responsibilities and Services
- Incident Management
- Incident Reporting Process
- Change Control Management
This document should be used as a reference for customers in their use of Hosted Chef.
2. Opscode Responsibilities and Services
The following paragraphs detail the responsibilities and services of Opscode.
2.1 Responsibilities
Opscode will use commercially reasonable efforts to day-to-day service operations, maintenance and administration for customer's Hosted Chef services that are within Opscode's Span of Control. As used in this document, the term "Span of Control" means those areas of the Hosted Chef functionality that are under the direct control of Opscode, including functionality that is provided by external vendors or suppliers pursuant to a contractual relationship with Opscode. Opscode will not have any obligation or liability of any kind with respect to, and the term "Span of Control" will not include, without limitation, any functionality, event, incident or occurrence that is outside of Opscode's reasonable control, including, but not limited to, acts of God, public enemies, terrorist acts, war, civil disorder, fire, flood, explosion, earthquakes, labor disputes or strikes, any acts or orders of any government or any action or inaction of customers or any third party.
Opscode will use commercially reasonable efforts to remedy incidents that have been identified either directly by Opscode, or by a Hosted Chef customer. Corrective action by Opscode assumes that the incident is within its Span of Control and customer has provided all relevant and necessary information to Opscode. (See Information for Incident Reporting for required reporting information.)
Opscode will, when necessary, pursue the resolution of any incident with outside vendors that are within its Span of Control. During the resolution period, Opscode will issue updates to the customer pursuant to the support times, as detailed in Hosted Chef Support, and consistent with the Incident Handling categories (severity and priority).
2.2 Service Level Objectives
Opscode will use commercially reasonable efforts to provide an over all minimum monthly system availability for Hosted Chef of 99.9%, as measured for each calendar month. Excluded from the calculation of system availability is any downtime caused by factors that are beyond Opscode's Span of Control or are otherwise outside of Opscode's reasonable control, and times allocated for scheduled maintenance.
2.3 Service Availability
Opscode considers the Hosted Chef service available when all the API calls that can cause a Chef Client run to finish are available, as reasonably determined by Opscode.
Opscode may implement monitors and external checks to several API endpoints every 60 seconds to verify system availability. Opscode may also have external monitoring of web service functions, including without limitation: degradation in API response time, issues in repeatability, Management Console or Cookbooks functions and interfaces, and the time for search index processing. These monitors and detection tools may initiate paging of appropriate personnel to address availability issues immediately. Opscode response to Hosted Chef service availability is detailed in Incident Priority.
Hosted Chef Service Availability Priority 1 issues are counted against our Service Level Objective of 99.9% monthly system availability.
Additionally, Hosted Chef customers may experience issues of severity that they report to Opscode, as detailed in the Incident Reporting Process. As long as the Chef client run can finish, we will consider the service available, and will respond to the reported incident consistent as detailed in Incident Severity.
If analysis determines that Opscode is the cause of a customers' Severity 1 issue, it will also be counted against our Service Level Objective of 99.9% monthly system availability.
2.4 Service Credits
For any calendar month in which Service Availability does not meet the Service Level Objectives, paying Hosted Chef customers will be eligible to receive Service Credits as described below. THESE SERVICE CREDITS SHALL BE THE CUSTOMER'S SOLE AND EXCLUSIVE REMEDY FOR ANY FAILURE BY OPSCODE OR THE HOSTED CHEF SERVICE TO MEET THE SERVICE LEVEL OBJECTIVES.
The Service Credits indicated in Table 1 will only apply when Hosted Chef is unavailable as defined in Service Availability for a period of time that exceeds the downtime allowed in the Service Level Objectives. If the Hosted Chef Service Availability does not meet the Service Level Objectives for a given calendar month, the affected customer may request a Service Credit equal to the following percentage of the monthly hosting fee actually paid to Opscode for Hosted Chef:
Monthly System Availability |
Monthly Service Credit Provided |
| < 99.1% - 99.9% | 10% |
| < 99.0% - 95.1% | 15% |
| < 95% | 50% |
| Table 1, Opscode Service Credits | |
2.4.1 Service Level Credit Requests
In order to receive any of the Service Credits referred to above, the customer must notify Opscode within thirty days from the date of the billing notification for the month in question. Failure to comply with this requirement will forfeit the right to receive a Service Credit.
2.4.2 Maximum Service Credit
The aggregate maximum amount of Service Credits to be issued by Opscode for any single calendar month in which Service Availability does not meet Service Level Objectives shall not exceed 50% of the hosting fee actually paid by the customer to Opscode for Hosted Chef for that calendar month. Service Credits may not be exchanged for, or converted to, monetary amounts. Service Credits will be applied to the hosting fees payable for the month following the month in which the Service Credit was properly and timely requested.
2.5 Hosted Chef Support
The Opscode Support Engineering team is an interface between customer's Named Contacts and Opscode for support of services provided by Opscode. This arrangement provides Standard Support Level customers with access to a direct point of contact for reporting incidents, receiving updates and escalation. Table 2 provides the Hosted Chef Support service hours and contact information based upon the contracted support level.
| Contact Availability Hours | 7x24x365 |
| Contact Phone Number | 206-508-4799 |
| Email Address | support@opscode.com |
| Web Access | http://help.opscode.com/ |
| Service Hours of Operation | 6am - 6pm PST, Monday - Friday, excluding holidays |
| Table 2, Opscode Hosted Chef Support Contact Information | |
Please see Incident Reporting Process for details on communicating incidents through these contact streams, on information necessary for meaningful support response, and on how the service hours of operation affect Opscode incident response.
2.5.1 Hosted Chef Support Services
The following list identifies the Hosted Chef Support Services offered to customer Named Contacts:
- Web, email and telephone support for incident resolution.
- Advisory Bulletins provided on an as needed basis.
- Notification of planned maintenance activities.
- Notification of emergent issues with service availability/functionality.
Training and Implementation Services are negotiated, agreed to, and managed separately from support services for Opscode Hosted Chef. If a customer would like to consider Opscode Training and Implementation Services, please see Appendix B for contact information.
2.5.2 Hosted Chef Support Incident Levels and Limits
As a Opscode Hosted Chef – Standard Support Level customers will be entitled to 2 (two) incidents per billing period, as part of the service. Subsequent support incidents within a billing period will be charged to the customer at the current per incident rate.
See Incident Limitations and Overage Charges for how an issue is determined to be an incident that is considered in any limitations, or for overage charges.
3 Incident Reporting Process
3.1 Communicating Incidents
Customer Named Contacts will communicate incidents to Opscode in one of the following manners:
- Use the web interface http://help.opscode.com/ to directly open a trouble ticket at that site, or
- Direct an email to Hosted Chef Support (support@opscode.com), with the sending email address being one of those associated with the customers' organization on Hosted Chef.
- Please note that the Opscode Support Phone Number (206-508-4799) is for contact only.
- Depending upon the specifics of the issue, it is highly unlikely that real-time analysis and resolution can occur over the phone.
- The phone call can initiate support response, but the following will be required from the customer prior upon engaging support - to ensure meaningful action can be effectively and efficiently undertaken for problem resolution.
- Customer documentation of the issue, as experienced from their perspective and particular use case.
- Documentation of any actions taken immediately prior to the issues occurrence (if any), and
- Documentation of any actions taken to troubleshoot or attempted direct resolution that the customer undertook prior to engaging Hosted Chef Support.
- Following using the Support Phone to initiate contact, the required information can be provided by the customer through either of the previously detailed means.
- This avoids an unauthorized engagement of support, and the potential incident overage charges that could occur for the customer.
- Those who seek support, who aren't authorized, will be redirected to those who have been customer authorized as determined in Contact Personnel.
- Platform and version.
- How Chef was installed (packages, RubyGems, from source, etc).
- If using RubyGems, how it was installed.
- Debug logs from the client. Run "chef-client -l debug".
- If you custom compiled Ruby (or are using REE), we'll need to know about that.
- Description of the incident.
- Customer criticality of the incident or problem.
- List of those actions taken by customer to verify the problem and that customer has attempted to resolve the incident.
- Other comments to provide additional pertinent information as appropriate dependent upon the incident being reported.
- Opscode software bugs
- Issues with Hosted Chef data/fields
- Feature requests
- Basic help - seeking to understand Opscode products, services, or features and functionality
- Help beyond basic understanding of Opscode products, services, or features and functionality
- Detailed analysis of customer written Chef code
- Any debugging that extends outside of Opscode Hosted Chef or Chef product
- Issues caused by failing to follow documented recommendations/limitations on product use
- For each incident, create a trouble ticket that clearly states the problem after gathering all pertinent information about the incident. See Communicating Incidents for the different manners in which trouble tickets can be opened.
- Information contained in the ticket should include, minimally, all of the detail required from Mandatory Information For Incident Reporting above, and any additional pertinent information to help inform its resolution.
- Understands and is knowledgeable about problems that may arise during platform usage.
- Understands and is knowledgeable with respect to functionality of utilized toolsets.
- Understands and is knowledgeable with its network operations and is capable of discerning whether an incident is internal to its internal operations before identifying the incident as an issue for Opscode.
- Hosted Chef functionality is completely unavailable to customer.
- Data loss.
- Begin addressing immediately.
- If code change is needed: implement to production upon availability.
- Initial contact must be done by phone.
- Customer response within 30 service minutes.
- Subsequent updates hourly.
- Hosted Chef functionality is available but severely limited.
- There is no available workaround.
- Begin addressing as soon as possible.
- Prioritized bug and product release cycle as required.
- Initial contact must be done by phone.
- Customer response within 2 service hours.
- Subsequent updates every 2 hours.
- Hosted Chef functionality is usable with minor degradation in service.
- There is an available work around for the issue.
- Address as soon as possible.
- Standard bug and product release cycle as required.
- Customer response within 1 service day.
- Subsequent updates as warranted, or as agreed.
- Issue causes little impact to functionality or Hosted Chef use.
- A reasonable circumvention to the problem has been found.
- Address as time permits, best effort.
- Customer response within 2 service days.
- Subsequent updates as warranted, or as agreed.
- Questions regarding the use of cookbooks, recipes, attributes, data bags, or any other individual portions of the Chef architecture.
- Debugging a customer written or modified cookbook or recipe.
- Deployment to node questions that are of a "how to" nature
- A complete outage of Hosted Chef service for multiple customers.
- A reoccurring temporary outage of Hosted Chef critical service.
- Begin addressing Immediately, fix same day.
- Where application issue - Address in production, back populating dev/test.
- 7x24x365
- Hosted Chef functionality is available but severely limited.
- Recent modifications to the system cause service to operate inconsitently.
- Fix same day.
- Where application issue - Prioritized bug and product release cycle as required.
- Same day.
- 0600x1800 PT, 7 days a week.
- Hosted Chef service is usable with minor degradation in service.
- Fix next business day. 0600-1800 M-F
- Where application issue - Standard bug and product release cycle as required.
- Next business day.
- 0600-1800 PT, 5 days a week.
- Issue causes little impact to functionality or service availability.
- Begin addressing as time permits, best effort.
- Where application issue - Standard bug and product release cycle as required.
- No escalation.
- All customers will be informed through use of the twitter account (@opscode_status)
- All customers will be informed through the Opscode Status Website (status.opscode.com).
- All customers will be informed through use of the twitter account (@opscode_status)
- All customers will be informed through the Opscode Status Website (status.opscode.com).
Opscode will validate that the individual communicating the incident is authorized by the customer to engage support, as detailed in Contact Personnel.
For all authorized contacts, Opscode will generate a single response for each trouble ticket that is received, within the support hours of operation as shown in Table 2, to confirm receipt of the incident report and the initiation of appropriate response actions.
Opscode sets the initial classification of the trouble ticket and responds based upon that classification, unless otherwise agreed between Opscode and the customer. See Incident Handling and Updates for details on Opscode response.
3.2 Mandatory Information for Incident Reporting
For each incident, the customer is required to provide Opscode with information that will facilitate timely problem determination and resolution. Customer should provide Opscode, at a minimum, the following information for all reported incidents:
3.3 Incident Response
Opscode will endeavor to respond to and address each reported incident and request for Hosted Chef support. Opscode response will begin upon receipt of notification, within the Service Hours of Operation listed in Table 2.
Opscode, however, makes no commitment on the amount of time that it may take to resolve an individual incident, as causation factors can vary in complexity. The customer will be provided status on incident resolution as described below in Incident Management. The timing of customer response status reporting will occur consistent with the timeframes indicated in Table 3.
When additional information has been requested from the customer order to address the incident, any failure by the customer to provide requested information will be included in customer response status reporting consistent with the times indicated in Table 3. If said incident is a Severity 1 incident for which Opscode is subsequently determined to be the causation factor, the time it takes for the customer to provide the necessary information will not be counted against Hosted Chef Service Availability levels.
3.4 Incident Limitations and Overage Charges
Incidents that are caused by factors within Opscode's Span of Control will not be considered in the calculation of incident limits, nor will a customer be billed overage charges for Opscode response to them.
By way of example, the following will not be treated as an "incident" for purposes of calculating incident limits or result in any overage charges:
By way of example, the following will be considered an "incident" for purposes of calculating incident limits and may potentially result in a per-incident overage charge(s):
The amount for any per-incident overage charges will be included as a line item in the monthly billing summary sent by Opscode to customer billing contacts.
4 Incident Management
4.1 Incident Resolution Responsibilities
Incident resolution requires teamwork between Opscode and Hosted Chef customers. Appendix A provides a flowchart of the Incident Resolution Process.
All customer incidents concerning issues with the use of Hosted Chef services that cannot be solved by customer representatives will be reported to Hosted Chef Support, pursuant to the Reporting Process procedures outlined below.
Any reported incident that is caused by a failure that is outside Opscode's Span of Control and not directly related to its delivery of the Hosted Chef service will be returned to the customer with an explanation.
4.1.1 Customer Contact Personnel
In order for Hosted Chef Support to effectively resolve incidents, it is necessary for Opscode to have an accurate list of the customer's designated contact personnel.
Those the customer intends to be designated contact personnel able to engage Opscode support must have access to the Opscode Hosted Chef Service and thereby map to the organization association within the Hosted Chef Management Console. Those purporting to be from the customer, who are not in the customer's organization association will not be able to engage Hosted Chef Support.
4.1.2 Customer Responsibilities
The following section identifies certain additional responsibilities of Opscode Hosted Chef customers in connection with the services provided under this service level agreement.
4.1.2.1 Incident Responsibilities
4.1.2.2 Technical Responsibilities
4.2 Incident Handling and Updates
Hosted Chef Support will coordinate incident isolation, testing and repair work within Opscode and all third party systems that are within Opscode's Span of Control based upon the service times specified in Table 2. Incident severity and priority are both considered in responding to any Opscode detected or customer reported issues.
4.2.1 Incident Severity
Opscode initially determines the level of incident severity based on a number of criteria. This includes the extent of impact to the customer in use of Hosted Chef functionality, the level of repeatability/constancy in issue occurrence, and the availability of a functional work around. Table 3 provides a summary of Opscode Incident Severity Levels.
The customer may seek to increase the initially determined Opscode Severity Level by following the detail found in Escalation to Opscode.
Severity Level |
Description |
Support Response Targets |
Customer Response Targets |
| Severity 1 |
|
|
|
| Severity 2 |
|
|
|
| Severity 3 |
|
|
|
| Severity 4 |
|
|
|
|
Please Note: The following items will rarely be classified above Severity 3 level Severity 1 and 2 classifications are based in the loss or limitation of Hosted Chef services or functionality, not in responding to questions on how to utilize its availability. |
|||
| Table 3, Opscode Incident Severity | |||
4.2.2 Incident Priority
The Incident Priority is distinguishable from Incident Severity, in that it applies to the Hosted Chef Service in totality, and thus impacts all customers and users of it. Opscode establishes Incident Priority based upon the extent of impact. Table 4 provides a summary of Opscode Incident Priority Levels.
Priority Level |
Description |
Support Response Targets |
Opscode Escalation |
| Priority 1 |
|
|
|
| Priority 2 |
|
|
|
| Priority 3 |
|
|
|
| Priority 4 |
|
|
|
| Table 4, Opscode Incident Priority | |||
4.2.2.1 Customer Notification of Priority 1 and 2 Issues
Opscode will use commercially reasonable efforts to ensure that the Hosted Chef Service Availability meets the Service Level Objectives. In the event of Incident Priority 1 or 2 issues, Opscode will notify customers via two mechanisms.
Status updates on addressing the emergent issue will be communicated through the above channels consistent with Incident Severity Customer Response Targets as shown in Table 3.
4.3 Escalation Process
4.3.1 Opscode Internal Escalation
Escalation procedures are in place at Opscode to manage the resolution of incidents when they occur. Hosted Chef Support services are available according to the contracted support service level purchased. All referenced communications and escalations are available based upon those hours, as listed in Table 2.
4.3.1.1 Customer-specific Incident Escalation
For customer specific incidents, the Incident Severity determines the escalation timeline. If the incident remains open after the time indicated, Opscode escalates stewardship of issue resolution to the next level, to ensure appropriate resources are aligned and focused on addressing its' resolution.
Table 5 below provides escalation timelines for Severity 1 and 2 incidents, based on time after the incident was reported.
Escalation Level |
Escalation Contact |
Severity 1 |
Severity 2 |
| Level 1 | Hosted Chef Support Engineer | 1 hour | 2 hours |
| Level 2 | Management | 2 hours | 4 hours |
| Level 3 | Senior Management | 3 hours | 8 hours |
| Level 4 | Executive Management | 4 hours | 24 hours |
| Table 5, Incident Severity Escalation | |||
Severity 3 incidents seldom require escalation but in the event that the customer believes that Opscode is not addressing the incident in a timely manner, the parties can mutually agree to elevate the priority of the incident, and treat it as a Severity 2 incident. The customer can pursue that increase in severity classification by following the process detailed in Escalation to Opscode.
4.3.1.2 Hosted Chef Service Incident Escalation
For the Hosted Chef services, the Incident Priority determines escalation procedures. These procedures may be initiated through automated monitors and detection tools, as referenced in Service Availability. These monitors and detection tools may initiate paging of appropriate personnel to address Priority 1 issues immediately. Escalation occurs as needed based upon defined internal Opscode processes and procedures.
Detection of other priority Hosted Chef services issues, by internal personnel or based upon customer reporting, will result in the same escalation procedures being followed as appropriate – the distinction is in when the escalation is initiated, as indicated in Table 4.
Target Time to resolution is as indicated in the Incident Priority "Support Response" section. It is the goal of Opscode to meet or exceed all of these stated times to resolution.
4.3.2 Escalation to Opscode
In the event that the customer believes there is cause to increase the Opscode defined severity level for a specific incident, or if Opscode does not maintain communication status to the customer consistent with the commitments made in Incident Severity, the Administrative Contact for the Customer organization can request that the incident be escalated to the next level.
All escalation requests should be initiated through the Hosted Chef Support representative, and not to any other Opscode personnel directly. Customer requested escalations will be undertaken by Hosted Chef Support, and will occur through the Incident Severity Escalation Table.
Only in the event that the customer has not received a response that the desired escalation has occurred within thirty (30) minutes of the request made by the administrative contact for the customer organization, should the next Opscode escalation level be contacted directly. The customer should verify that escalation has not occurred, or that it remains in consideration, with the Hosted Chef Support representative prior utilizing the Hosted Chef Support Escalation Contacts in Appendix B for their direct escalation.
4.3.3 Additional Opscode Escalation Contacts
In the event that the customer is dissatisfied with the Opscode service or support after the resolution of the incident, the concern may be raised through Hosted Chef Support Escalation Contacts referred to above, or through their Account Manager, as found in Appendix B.
The customer may also become aware of a security incident or vulnerability, and want to report that detail to Opscode. Opscode Computing Security will evaluate perceived incident occurrence and/or exposure to security vulnerability, and report back to the customer as required. Contact information for Opscode Computing Security is listed under Additional Opscode Contacts of Appendix B.
4.3.4 Any Further Required Information
Opscode and the customer will cooperate and work together in good faith to ensure that any additional processes that are required to ensure the smooth escalation of incidents within each organization are clearly communicated to one another in writing, so that the escalation processes within each organization and between the two organizations are clearly understood by both parties.
5 Change Control Management (CCM)
5.1 Planned Maintenance by Opscode
Opscode will use commercially reasonable efforts to ensure that any planned maintenance events under its Span of Control are properly coordinated.
All planned maintenance notification notices will be communicated via these mechanisms:
5.2 Service Interruptions and Advanced Notification Requirements
Generally, Opscode will use commercially reasonable efforts to provide customers with two (2) business days advance notice (via email) of all planned maintenance activities resulting in service interruptions greater than one hour in duration that will have a direct impact on the services delivered by Opscode.
Opscode assumes that the customer accepts the scheduled maintenance unless Opscode is advised otherwise via email within one (1) business day prior to the time of the planned event. Opscode will consider in good faith any such objection that is received within the one (1) business day period, but may, in its sole discretion, elect to proceed with the planned maintenance as scheduled.
Please Note: Opscode reserves the right to execute emergency maintenance at any time without notice.
6 Appendix A - Incident Resolution Process

7 Appendix B - Opscode Support Contact List
Both parties are responsible for ensuring that their contact information is updated and maintained as current.
Customers of Opscode Hosted Chef commit to maintaining their Opscode Hosted Chef account as current with appropriate personnel included within the organizational association and listed as billing contacts, as described in Contact Information.
7.1 Opscode Hosted Chef Support Escalation Contacts
Level |
Title |
Phone |
|
| First | Support Engineering | 206-508-4799 | support-team@opscode.com |
| Second | Management | 415-484-5765 | support-mgt@opscode.com |
| Third | Senior Management | 406-480-6846 | support-snr-mgt@opscode.com |
| Fourth | Executive Management | 815-575-9677 | support-exec@opscode.com |
7.2 Additional Opscode Escalation Contacts
Function |
|
| Computing Security | security@opscode.com |
| Training and Implementation Services | ts@opscode.com |
| Sales Account Manager | sales@opscode.com |