@hiiretail/gcp-infra-cli 0.69.1 → 0.70.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const path = require('path');
|
|
2
|
+
const chalk = require('chalk');
|
|
3
|
+
const BaseGenerator = require('../../../src/BaseGenerator');
|
|
4
|
+
const { required } = require('../../../src/validators');
|
|
5
|
+
|
|
6
|
+
module.exports = class extends BaseGenerator {
|
|
7
|
+
prompting() {
|
|
8
|
+
const prompts = [
|
|
9
|
+
{
|
|
10
|
+
type: 'input',
|
|
11
|
+
name: 'system',
|
|
12
|
+
message: 'Name of the software system',
|
|
13
|
+
validate: required,
|
|
14
|
+
},
|
|
15
|
+
];
|
|
16
|
+
|
|
17
|
+
return this.prompt(prompts).then((props) => {
|
|
18
|
+
this.answers = props;
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
writing() {
|
|
23
|
+
const { system } = this.answers;
|
|
24
|
+
const filename = this.kebabCase(system.toLowerCase());
|
|
25
|
+
|
|
26
|
+
this.copyDir(
|
|
27
|
+
'docs',
|
|
28
|
+
this.destinationPath(path.join('docs', filename)),
|
|
29
|
+
{
|
|
30
|
+
...this.answers,
|
|
31
|
+
c4System: system.replace(/\s/g, ''),
|
|
32
|
+
},
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
end() {
|
|
37
|
+
this.log(`
|
|
38
|
+
${chalk.green('Your Runbook documentation template have now been created.')}
|
|
39
|
+
Next, push this change in a feature branch and open a pull request.
|
|
40
|
+
`);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Runbook for <%-system%>
|
|
2
|
+
|
|
3
|
+
## General
|
|
4
|
+
|
|
5
|
+
<!-- Describe in short what the purpose of the solution is. -->
|
|
6
|
+
|
|
7
|
+
## Architecture
|
|
8
|
+
|
|
9
|
+
<!-- Include C4 diagrams or links to the Software Guidebook. -->
|
|
10
|
+
|
|
11
|
+
## Business Continuity and Disaster Recovery Plan
|
|
12
|
+
|
|
13
|
+
<!-- Link to the Business Continuity and Disaster Recovery Plan documentation. -->
|
|
14
|
+
|
|
15
|
+
## Services
|
|
16
|
+
|
|
17
|
+
<!-- A short description of what the purpose of each service is. Links to the log files of all the services that are included in the solution. -->
|
|
18
|
+
|
|
19
|
+
## Dashboard
|
|
20
|
+
|
|
21
|
+
<!-- Links to one or multiple dashboards. -->
|
|
22
|
+
|
|
23
|
+
## Service Level Objectives
|
|
24
|
+
|
|
25
|
+
<!-- What are the SLOs? -->
|
|
26
|
+
|
|
27
|
+
## Alerts
|
|
28
|
+
|
|
29
|
+
<!-- What are the alerts that has been setup, where is alert sent to and what are the steps to mitigate the issue? -->
|
|
30
|
+
|
|
31
|
+
## Health Checks
|
|
32
|
+
|
|
33
|
+
<!-- Links to the configured uptime checks that has been setup in GCP. -->
|
|
34
|
+
|
|
35
|
+
## How do I..?
|
|
36
|
+
|
|
37
|
+
<!-- Good to know things. Such as `How do I check the price for a specific item?` -->
|
|
38
|
+
|
|
39
|
+
## Known Issues
|
|
40
|
+
|
|
41
|
+
<!-- Are there any known issues? If yes, what is the workaround to solve them? -->
|
|
42
|
+
|
|
43
|
+
## Contact & Escalation Matrix
|
|
44
|
+
|
|
45
|
+
<!-- If the team is unable to resolve the issue, who is the first in line to contact?
|
|
46
|
+
|
|
47
|
+
| # | Name | Role | E-Mail | Phone number |
|
|
48
|
+
| --- | --- | --- | --- | --- |
|
|
49
|
+
| 1 | Mr X | My Role | mr.x@x.com | 1234567 |
|
|
50
|
+
| 2 | Mr Y | My Role | mr.y@y.com | 7654321 |
|
|
51
|
+
-->
|
|
@@ -1,9 +1,43 @@
|
|
|
1
1
|
# Observability and SRE
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<!--
|
|
4
|
+
Explain what metrics you will monitor and how you will monitor them. Read through the SRE Chapter documentation
|
|
5
|
+
and adopt the guidelines and naming convetions that exist, https://github.com/extenda/chap-sre-docs/blob/master/README.md
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
List
|
|
6
8
|
|
|
7
|
-
|
|
9
|
+
* that the clan will use GCP Operations to monitor their service and GCP-resources
|
|
10
|
+
* that the clan will keep this documentation up-to-date through the lifecycle of the service
|
|
11
|
+
* that the clan will create and maintain a Runbook
|
|
12
|
+
-->
|
|
8
13
|
|
|
9
|
-
##
|
|
14
|
+
## Service A
|
|
15
|
+
|
|
16
|
+
<!--
|
|
17
|
+
List the SLIs and SLOs per service, more information about SLIs and SLOs can be found here, https://github.com/extenda/chap-sre-docs/blob/master/docs/service-levels.md
|
|
18
|
+
All services must list and explain how they will monitor and have SLOs set for:
|
|
19
|
+
|
|
20
|
+
* Availability
|
|
21
|
+
* Latency
|
|
22
|
+
* Throughput
|
|
23
|
+
* Error rate
|
|
24
|
+
|
|
25
|
+
If the team need to monitor any additional SLOs, it must be mentioned how they plan to monitor that.
|
|
26
|
+
|
|
27
|
+
If not using fully-managed services by Google, SLIs and SLOs needs to be set for those as well. When using fully-managed services, only SLIs needs to be monitored
|
|
28
|
+
Example:
|
|
29
|
+
|
|
30
|
+
* A clan is using Cloud SQL
|
|
31
|
+
* Then they need to set SLIs and SLOs based on when they need to increase CPU and Memory for example
|
|
32
|
+
|
|
33
|
+
-->
|
|
34
|
+
|
|
35
|
+
### SLIs
|
|
36
|
+
|
|
37
|
+
### SLOs
|
|
38
|
+
|
|
39
|
+
## Service B
|
|
40
|
+
|
|
41
|
+
### SLIs
|
|
42
|
+
|
|
43
|
+
### SLOs
|