diff --git a/docs/.vuepress/navbar-menus/learning.js b/docs/.vuepress/navbar-menus/learning.js index ae09937ed..bbb849f62 100644 --- a/docs/.vuepress/navbar-menus/learning.js +++ b/docs/.vuepress/navbar-menus/learning.js @@ -12,7 +12,7 @@ export default [{ }, { text: 'Solutions', - link: '/learning/solutions/automated-diagnostics/index.md' + link: '/learning/solutions/index.md' }, { text: 'Terminology', diff --git a/docs/.vuepress/public/assets/img/solutions-name-project.png b/docs/.vuepress/public/assets/img/solutions-name-project.png new file mode 100644 index 000000000..519946367 Binary files /dev/null and b/docs/.vuepress/public/assets/img/solutions-name-project.png differ diff --git a/docs/.vuepress/sidebar-menus/learning.ts b/docs/.vuepress/sidebar-menus/learning.ts index ebc14add1..c9692325e 100644 --- a/docs/.vuepress/sidebar-menus/learning.ts +++ b/docs/.vuepress/sidebar-menus/learning.ts @@ -178,11 +178,14 @@ export default [{ }, { text: 'Solutions', + link: '/learning/solutions/index.md', collapsible: true, children: [ + { link: '/learning/solutions/index.md', text: 'Solutions Overview'}, + { link: '/learning/solutions/getting-started.md', text: 'Getting Started with Solutions'}, { text: 'Automated Diagnostics', - link: '/learning/solutions/automated-diagnostics/index', + link: '/learning/solutions/automated-diagnostics/index.md', collapsible: true, children: [ { link: '/learning/solutions/automated-diagnostics/index.md', text: 'Solution Summary' }, @@ -200,17 +203,6 @@ export default [{ { link: '/learning/solutions/automated-diagnostics/examples/linux.md', text: 'Linux' }, { link: '/learning/solutions/automated-diagnostics/examples/windows.md', text: 'Windows' }, { link: '/learning/solutions/automated-diagnostics/examples/apis.md', text: 'SaaS & Internal API\'s' }, - { - text: 'Kubernetes', - link: '/learning/solutions/automated-diagnostics/examples/kubernetes', - collapsible: true, - children: [ - { link: '/learning/solutions/automated-diagnostics/examples/kubernetes', text: 'Kubernetes Examples' }, - { link: '/learning/solutions/automated-diagnostics/examples/k8s-logs-events.md', text: 'Pod Logs & K8s Events' }, - { link: '/learning/solutions/automated-diagnostics/examples/k8s-app-debug-capture.md', text: 'App Debug State Capture' } - ] - }, - { link: '/learning/solutions/automated-diagnostics/examples/databases.md', text: 'Databases' }, { link: '/learning/solutions/automated-diagnostics/examples/network-devices.md', text: 'Network Devices' }, { link: '/learning/solutions/automated-diagnostics/examples/observability-integrations.md', text: 'Observability Integrations' } ] @@ -220,8 +212,33 @@ export default [{ { link: '/learning/solutions/automated-diagnostics/simplifying-diagnostics.md', text: 'Simplifying Diagnostics Output' }, { link: '/learning/solutions/automated-diagnostics/automation-beyond-triage.md', text: 'Automation Beyond Triage' }, { link: '/learning/solutions/automated-diagnostics/feedback-faq.md', text: 'Feedback & FAQ' } - // {link: '/learning/solutions/auto-incident-kubernetes-logs.md', text: 'Example: Kubernetes Logs'}, - // {link: '/learning/solutions/auto-diagnostics-github-script.md', text: 'Example: Raw Scripts'} + ] + }, + { + text: 'Containers', + link: '/learning/solutions/containers/index.md', + collapsible: true, + children: [ + { link: '/learning/solutions/containers/index.md', text: 'Solution Summary'}, + { + text: 'Kubernetes', + link: '/learning/solutions/containers/kubernetes', + collapsible: true, + children: [ + { link: '/learning/solutions/containers/kubernetes', text: 'Kubernetes Examples' }, + { link: '/learning/solutions/containers/k8s-logs-events.md', text: 'Pod Logs & K8s Events' }, + { link: '/learning/solutions/containers/k8s-app-debug-capture.md', text: 'App Debug State Capture' } + ] + }, + ] + }, + { + text: 'Database Mangement', + link: '/learning/solutions/database-management/index.md', + collapsible: true, + children: [ + { link: '/learning/solutions/database-management/index.md', text: 'Solution Summary' }, + { link: '/learning/solutions/database-management/db-and-autodiag.md', text: 'Databases + Auto Diagnostics' }, ] } ] diff --git a/docs/.vuepress/styles/index.scss b/docs/.vuepress/styles/index.scss index ba9f38a61..6773ab3f4 100644 --- a/docs/.vuepress/styles/index.scss +++ b/docs/.vuepress/styles/index.scss @@ -13,7 +13,6 @@ h6 { font-weight: 700; } - #main-title { -webkit-text-fill-color: var(--text-color); color: var(--text-color); @@ -52,6 +51,10 @@ h6 { color: var(--text-color) } +.vp-hero-action { + background-color: #f6f6f6; +} + .vp-feature-bg + .vp-feature { color: var(--text-color) } diff --git a/docs/learning/solutions/automated-diagnostics/examples-overview.md b/docs/learning/solutions/automated-diagnostics/examples-overview.md index ab6d92ccd..b512f0f82 100644 --- a/docs/learning/solutions/automated-diagnostics/examples-overview.md +++ b/docs/learning/solutions/automated-diagnostics/examples-overview.md @@ -32,15 +32,15 @@ Other prebuilt Jobs are included in the Automated Diagnostics Solution package, - +

Stopped ECS Task Errors
- +

ELB Targets Health
- +

CloudWatch Logs
@@ -72,88 +72,88 @@ Other prebuilt Jobs are included in the Automated Diagnostics Solution package,

GKE Cluster Connectivity - +

Top CPU Consuming Processes
- +

Retrieve Errors from Syslog
- +

List Top Disk Consuming Files
- +

Active Directory Replication Statistics
- +

Retrieve IIS Web Server Logs
- +

SMB Connection Failures
- +

API Health Check
- +

Recent Pod Logs
- +

Recent Kubernetes Events
- +

Pod Status & Errors
- +

Retrieve Deployment Diagnostics
- +

Top Resource Consuming Queries
- +

Blocking Locks
- +

Missing Indexes
- +

BGP Route Flapping
- +

Check Spanning Tree
- +

Check Duplex Mismatch
- +

Retrieve Application Logs
- +

Retrieve Saved Queries
diff --git a/docs/learning/solutions/auto-diagnostics-github-script.md b/docs/learning/solutions/automated-diagnostics/examples/auto-diagnostics-github-script.md similarity index 100% rename from docs/learning/solutions/auto-diagnostics-github-script.md rename to docs/learning/solutions/automated-diagnostics/examples/auto-diagnostics-github-script.md diff --git a/docs/learning/solutions/auto-incident-kubernetes-logs.md b/docs/learning/solutions/automated-diagnostics/examples/auto-incident-kubernetes-logs.md similarity index 100% rename from docs/learning/solutions/auto-incident-kubernetes-logs.md rename to docs/learning/solutions/automated-diagnostics/examples/auto-incident-kubernetes-logs.md diff --git a/docs/learning/solutions/automated-diagnostics/examples/containers.md b/docs/learning/solutions/automated-diagnostics/examples/containers.md deleted file mode 100644 index 5f5c60cdd..000000000 --- a/docs/learning/solutions/automated-diagnostics/examples/containers.md +++ /dev/null @@ -1,7 +0,0 @@ -# Automated Diagnostics - -## Containers - - - -### Amazon ECS \ No newline at end of file diff --git a/docs/learning/solutions/automated-diagnostics/index.md b/docs/learning/solutions/automated-diagnostics/index.md index fca217cd9..9e812cacc 100644 --- a/docs/learning/solutions/automated-diagnostics/index.md +++ b/docs/learning/solutions/automated-diagnostics/index.md @@ -10,14 +10,14 @@ feed: # Automated Diagnostics -## What is PagerDuty's Automated Diagnostics Solution? +### Overview Automated diagnostics is a solution provided by integrating PagerDuty's Incident Response and Runbook Automation products. By automating the retrieval of “diagnostic” data during incidents, you can shorten the length of incidents, reduce the number of individuals paged to help with resolution, and gather evidence for fixing the root-cause after the incident. ### Use Cases There are multiple use-cases and benefits to the Automated Diagnostics solution. Here are a few of the most common examples: -1. **Improve Triage**: surfacing diagnostic data can improve the time spent troubleshooting and the number of people pulled into incidents. -2. **Capture Environment State**: by capturing the _environment_ or _application_ "state" during an incident, operations engineers and developers have _evidence_ to help them fix code-level bugs and configuration errors - perhaps a while after the incident has been resolved. -3. **Realtime Updates**: by querying backend services in realtime, an Incident Commander can more easily provide updates to stakeholders during an incident. +- **Improve Triage**: surfacing diagnostic data can improve the time spent troubleshooting and the number of people pulled into incidents. +- **Capture Environment State**: by capturing the _environment_ or _application_ "state" during an incident, operations engineers and developers have _evidence_ to help them fix code-level bugs and configuration errors - perhaps a while after the incident has been resolved. +- **Realtime Updates**: by querying backend services in realtime, an Incident Commander can more easily provide updates to stakeholders during an incident. For more details on these use-cases, see [**this section**](/learning/solutions/automated-diagnostics/automation-beyond-triage) of the solution-guide. @@ -26,9 +26,7 @@ PagerDuty provides a solution that helps users start automating diagnostics quic ![Automated Diagnostics within PagerDuty](/assets/img/diag-on-pd-timeline.png) -
- -![Verbose Diagnostics in Runbook Automation](/assets/img/diag-verbose-output.png) +
![Verbose Diagnostics in Runbook Automation](/assets/img/diag-verbose-output.png) As an example, if an incident is triggered for a service running in Kubernetes, PagerDuty Runbook Automation can retrieve information from logs, API’s, databases and other sources that support this service. This could be triggered with the click of a button or through event-driven invocation. @@ -40,172 +38,50 @@ Diagnostics retrieved using **Runbook Automation** can be made available in mult ## Examples & Templates This guide includes a full section on Examples & Best Practices - a preview of that is shown here: - -
------ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

Stopped ECS Task Errors
-
- -

ELB Targets Health
-
- -

CloudWatch Logs
-
- -

Azure Function App Health
-
- -

Azure File Sync
-
- -

Load Balancer Health Probes
-
- -

Load Balancer Health Checks
-
- -

Troubleshoot Firewall Rules
-
- -

GKE Cluster Connectivity
-
- -

Top CPU Consuming Processes
-
- -

Retrieve Errors from Syslog
-
- -

List Top Disk Consuming Files
-
- -

Active Directory Replication Statistics
-
- -

Retrieve IIS Web Server Logs
-
- -

SMB Connection Failures
-
- -

API Health Check
-
- -

Recent Pod Logs
-
- -

Recent Kubernetes Events
-
- -

Pod Status & Errors
-
- -

Retrieve Deployment Diagnostics
-
- -

Top Resource Consuming Queries
-
- -

Blocking Locks
-
- -

Missing Indexes
-
- -

BGP Route Flapping
-
- -

Check Spanning Tree
-
- -

Check Duplex Mismatch
-
- -

Retrieve Application Logs
-
- -

Retrieve Saved Queries
-


Intrinsic Latency Diagnostics Test


Check Redis Port Listening


Retrieve Redis Memory Statistics


Slow Log Entries


Check Database Storage Status


Query Nginx Status Endpoint


Retrieve Error Logs


Test Nginx Configuration


Retrieve Recent PostgreSQL Logs


Test for PostgreSQL Server Running


Check Compaction Statistics


Describe Kafka Topic


View Topic Messages


Retrieve Java Thread Dump


Retrieve Java Heap Dump


RabbitMQ Node Health
\ No newline at end of file + +| Examples | +| --- | +| [Stopped ECS Task Error](/learning/solutions/automated-diagnostics/examples/public-cloud-providers.md) | +|[ELB Targets Health](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html)| +|[CloudWatch Logs](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html)| +|[Azure Function App Health](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#azure)| +|[Azure File Sync](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#azure)| +|[Load Balancer Health Probes](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#azure)| +|[Load Balancer Health Checks](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#google-cloud-platform-gcp)| +|[Troubleshoot Firewall Rules](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#google-cloud-platform-gcp)| +|[GKE Cluster Connectivity](/docs/learning/solutions/automated-diagnostics/examples/public-cloud-providers.html#google-cloud-platform-gcp)| +|[Top CPU Consuming Processes](/docs/learning/solutions/automated-diagnostics/examples/linux.html)| +|[Retrieve Errors from Syslog](/docs/learning/solutions/automated-diagnostics/examples/linux.html)| +|[List Top Disk Consuming Files](/docs/learning/solutions/automated-diagnostics/examples/linux.html)| +|[Active Directory Replication Statistics](/docs/learning/solutions/automated-diagnostics/examples/windows.html)| +|[Retrieve IIS Web Server Logs](/docs/learning/solutions/automated-diagnostics/examples/windows.html)| +|[SMB Connection Failures](/docs/learning/solutions/automated-diagnostics/examples/windows.html)| +|[API Health Check](/docs/learning/solutions/automated-diagnostics/examples/apis.html)| +|[Recent Pod Logs](/docs/learning/solutions/automated-diagnostics/examples/kubernetes.html)| +|[Recent Kubernetes Events](/docs/learning/solutions/automated-diagnostics/examples/kubernetes.html)| +|[Pod Status & Errors](/docs/learning/solutions/automated-diagnostics/examples/kubernetes.html)| +|[Retrieve Deployment Diagnostics](/docs/learning/solutions/automated-diagnostics/examples/kubernetes.html)| +|[Top Resource Consuming Queries](/docs/learning/solutions/automated-diagnostics/examples/databases.html)| +|[Blocking Locks](/docs/learning/solutions/automated-diagnostics/examples/databases.html)| +|[Missing Indexes](/docs/learning/solutions/automated-diagnostics/examples/databases.html)| +|[BGP Route Flapping](/docs/learning/solutions/automated-diagnostics/examples/network-devices.html)| +|[Check Spanning Tree](/docs/learning/solutions/automated-diagnostics/examples/network-devices.html)| +|[Check Duplex Mismatch](/docs/learning/solutions/automated-diagnostics/examples/network-devices.html)| +|[Retrieve Application Logs](/docs/learning/solutions/automated-diagnostics/examples/observability-integrations.html)| +|[Retrieve Saved Queries](/docs/learning/solutions/automated-diagnostics/examples/observability-integrations.html)| +|[Intrinsic Latency Diagnostics Test](#)| +|[Check Redis Port Listening](#)| +|[Retrieve Redis Memory Statistics](#)| +|[Slow Log Entries](#)| +|[Check Database Storage Status](#)| +|[Query Nginx Status Endpoint](#)| +|[Retrieve Error Logs](#)| +|[Test Nginx Configuration](#)| +|[Retrieve Recent PostgreSQL Logs](#)| +|[Test for PostgreSQL Server Running](#)| +|[Check Compaction Statistics](#)| +|[Describe Kafka Topic](#)| +|[View Topic Messages](#)| +|[Retrieve Java Thread Dump](#)| +|[Retrieve Java Heap Dump](#)| +|[RabbitMQ Node Health](#)| \ No newline at end of file diff --git a/docs/learning/solutions/containers/index.md b/docs/learning/solutions/containers/index.md new file mode 100644 index 000000000..772eee6ff --- /dev/null +++ b/docs/learning/solutions/containers/index.md @@ -0,0 +1,23 @@ +# Container Solutions + +### Overview +Automating container management with Runbook Automation can significantly enhance your business operations by streamlining and simplifying the deployment, scaling, and maintenance of containerized applications. By leveraging Rundeck's powerful automation capabilities, you can reduce manual intervention, minimize human error, and ensure consistent and reliable execution of tasks. This leads to increased efficiency and productivity, as routine and repetitive tasks are handled automatically, freeing up your IT team to focus on more strategic initiatives. + +### Use Cases +There are multiple use-cases and benefits to the Containers solution. Here are a few of the most common examples: + +- **Scale Kubernetes Deployoments**: Integrate seamlessly with Kubernetes clusters, enabling DevOps teams to automate complex scaling tasks +- **Diganose issues by checking Pod Status and Errors**: Create jobs to automatically check pod status, retrieve logs, and identify errors at set intervals or in response to specific triggers +- **Gather recent logs from Pods**: Capture state and log information before restarting containers to help troubleshoot after the solution is back online. +- **Start, Kill, and Execute Commands in Containers**: Execute commands in containers to control environment related issues and isolate code execution. + +### Prebuilt Automation +PagerDuty provides a solution that helps users start automating diagnostics quickly. This Solution consists of **prebuilt Automation Jobs** that show how the use cases above can be implemented in your environment. (Note: Some of these solutions may exist in other Solution Packages.) + + +| Examples | +| --- | +| [Recent Pod Logs](/learning/solutions/containers/kubernetes.md) | +| [Recent Kubernetes Events](/learning/solutions/containers/kubernetes.md) | +| [Pod Status & Errors](/learning/solutions/containers/kubernetes.md) | +| [Retrieve Deployment Diagnostics](/learning/solutions/containers/kubernetes.md) | diff --git a/docs/learning/solutions/automated-diagnostics/examples/k8s-app-debug-capture.md b/docs/learning/solutions/containers/k8s-app-debug-capture.md similarity index 100% rename from docs/learning/solutions/automated-diagnostics/examples/k8s-app-debug-capture.md rename to docs/learning/solutions/containers/k8s-app-debug-capture.md diff --git a/docs/learning/solutions/automated-diagnostics/examples/k8s-logs-events.md b/docs/learning/solutions/containers/k8s-logs-events.md similarity index 100% rename from docs/learning/solutions/automated-diagnostics/examples/k8s-logs-events.md rename to docs/learning/solutions/containers/k8s-logs-events.md diff --git a/docs/learning/solutions/automated-diagnostics/examples/kubernetes.md b/docs/learning/solutions/containers/kubernetes.md similarity index 98% rename from docs/learning/solutions/automated-diagnostics/examples/kubernetes.md rename to docs/learning/solutions/containers/kubernetes.md index 91990ea34..5617dd1de 100644 --- a/docs/learning/solutions/automated-diagnostics/examples/kubernetes.md +++ b/docs/learning/solutions/containers/kubernetes.md @@ -1,7 +1,4 @@ -#### Automated Diagnostics ---- - -## Kubernetes +## Kubernetes Solutions Kubernetes is an open-source platform that allows for the management on a containers on a large scale. Developers, IT administrators, and DevOps engineers use Kubernetes to automate the deployment, scaling, maintenance, scheduling, and operation of _"containerized"_ applications and services. Kubernetes is frequently used for managing microservices applications with multiple service instances, where each microservice is deployed in an individual container. diff --git a/docs/learning/solutions/automated-diagnostics/examples/databases.md b/docs/learning/solutions/database-management/db-and-autodiag.md similarity index 86% rename from docs/learning/solutions/automated-diagnostics/examples/databases.md rename to docs/learning/solutions/database-management/db-and-autodiag.md index 576f1d006..c6357b5f9 100644 --- a/docs/learning/solutions/automated-diagnostics/examples/databases.md +++ b/docs/learning/solutions/database-management/db-and-autodiag.md @@ -1,6 +1,5 @@ -# Automated Diagnostics +# Database Management + Automated Diagonstics -## Databases Designing and building databases for today's modern applications is difficult and bugs can be hard to reproduce for the following reasons: **High Concurrency:** Potentially millions of users may be accessing and updating records simultaneously. @@ -9,7 +8,7 @@ Designing and building databases for today's modern applications is difficult an **Log Levels**: It is common practice to _not_ log at the "debug level" in production. -Using **Automated Diagnostics** can help with debugging database issues experienced in production by gathering as much information as possible when an incident occurs. +Pairing the Datbase Management solutions with [**Automated Diagnostics**](/learning/soltions/automated-diagnostics/index.md) can help with debugging database issues experienced in production by gathering as much information as possible when an incident occurs and providing those details to first responders or subject matter experts proactively. ## Examples diff --git a/docs/learning/solutions/database-management/index.md b/docs/learning/solutions/database-management/index.md new file mode 100644 index 000000000..13ae42bdf --- /dev/null +++ b/docs/learning/solutions/database-management/index.md @@ -0,0 +1,22 @@ +# Database Managment Solutions + +### Overview + +Database administrators (DBAs) face numerous challenges related to data security, maintaining high availability, and optimizing performance. They must protect against data breaches and cyber threats while ensuring compliance regulations. Managing backups and disaster recovery plans to prevent data loss is critical, as is minimizing downtime to ensure continuous access to data. DBAs must stay current with evolving technologies and best practices to effectively manage increasingly complex and distributed database environments. + +### Use Cases + +There are multiple use-cases and benefits to the Daabase Management solution. Here are a few of the most common examples: + +- **Ad-Hoc Backup and Restore:** Specific databases that end-users could run prior to making changes. Particularly helpful for Dev environments to quickly test then reset an environment again. +- **Database Health Check:** Automate the execution of SQL scripts to perform routine health checks on databases, checking for issues like fragmentation, tablespace usage, and index performance, or run critical SQL commands to validate they are running efficiently. +- **Schema Change Management:** Automate the execution of schema changes across development, testing, and production environments, ensuring consistency and reducing the risk of errors during deployment. +- **Capacity Planning and Scaling:** Monitor database usage trends and automate the provisioning or scaling of database resources (e.g., adding storage, increasing memory) based on predefined triggers or schedules, or make ad-hoc requests that can be approved through WFA. + +### Prebuilt Automation +To see example content listed below check out the [Getting Started with Solutions](/learning/solutions/getting-started.md) page. + +| Examples | +| --- | +| [Check Database Storage Status](/learning/solutions/database-management/db-and-autodiag.md) | + diff --git a/docs/learning/solutions/getting-started.md b/docs/learning/solutions/getting-started.md new file mode 100644 index 000000000..f082c2020 --- /dev/null +++ b/docs/learning/solutions/getting-started.md @@ -0,0 +1,43 @@ +# Getting Started with Soutions + +::: tip Prerequisites +To use any the Example Solutions, you must have a **PagerDuty Runbook Automation** (Self-Hosted or SaaS) instance available. + +If you do not have a license for either of these products, [contact us](https://www.pagerduty.com/contact-us/runbook-automation/) to learn more. + +**You must be running a currently supported product version at a minimum.** Specific jobs may require specific product versions due to newer plugin releases. Those will be captured in the job's descriptions. + +New instances of Runbook Automation Cloud have the Solution installed and included by default. [Request a Trial here](https://www.pagerduty.com/sign-up/runbook-automation/)
+::: + +## Setup + +For existing Runbook Automation environments, follow the steps below to download and import the Example Content: + +### Download the **Automated Diagnostics Solution package**. + +1. Download the latest release of the Solution [here](https://github.com/rundeckpro/solutions-content/releases/latest). + +### Create a project in your Runbook Automation environment: +1. Click the **P** in the upper left corner to navigate to the Main Dashboard

+2. Click the blue **New Project+** button:
+![Add Project](/assets/img/solutions-auto-diag-add-project.png)

+3. Copy the following into the **Project Name** field: **`containers-solution`**
+![Name Project](/assets/img/solutions-name-project.png) + :::warning Heads Up + Be sure to name the project **`containers-solution`**. Otherwise, some of the prebuilt Jobs and Tours will not function properly. + ::: +4. Provide a Label for a more "user-friendly" name - such as _Containers Solution_

+5. Click the green **Create** button + +### Import the archive file into your new project: +1. In your new project, click the **gears** in the lower left corner for **Project Settings**

+2. Choose **Import Archive** from the menu: +![Import Archive](/assets/img/solutions-auto-diag-import-archive.png)

+3. For the **Choose a Rundeck archive**, select the **`containers-solution.jar`** from the downloaded resources.

+4. Leave all of the import settings as their defaults

+5. Click the green **Import** button + ::: tip Note + The Tours in the Solution will help you prepare the project for the jobs included. Be sure to start there and name your project properly using the instructions above. + If you are looking for a more general introduction to PagerDuty’s Automation products, it is recommended to review the contents of the [Welcome Project](/learning/howto/welcome-project-starter.md). + ::: \ No newline at end of file diff --git a/docs/learning/solutions/index.md b/docs/learning/solutions/index.md index edf0b3702..460c8e381 100644 --- a/docs/learning/solutions/index.md +++ b/docs/learning/solutions/index.md @@ -1,3 +1,52 @@ -# Solutions +--- +home: true +title: Runbook Automation Solutions +heroText: Automation Solutions for Ops +tagline: See how Automation can transform your operations and streamline processes. +//heroImage: /assets/img/pd-background.png +bgImage: /assets/img/pd-background.png +bgImageDark: /assets/img/pd-background.png +//bgImageStyle: +//background-attachment: fixed -[Learn more about Automated Diagnostics](/learning/solutions/automated-diagnostics/index.md) \ No newline at end of file +actions: +- text: Getting Started + icon: circle-play + link: /learning/solutions/getting-started.md +- text: Start a Trial + icon: /assets/img/pd-icon-small.png + link: https://www.pagerduty.com/sign-up/runbook-automation/ +- text: Get the Code + icon: code-branch + link: https://github.com/rundeckpro/automated-diagnostics-project +- text: Learning Rundeck + icon: graduation-cap + link: /learning/index.md + +highlights: + +- header: Solution Categories + description: Explore Runbook Automation solution categories + //image: /assets/image/markdown.svg + //bgImage: /assets/img/pd-background.png + //bgImageDark: /assets/img/pd-background.png + bgImageStyle: + background-repeat: repeat + background-size: initial + features: + - title: Automated Diagnostics + icon: book + details: Gone are the days of manual troubleshooting! Empower your teams to orchestrate your container environments effortlessly, ensuring seamless integration between your infrastructure and business-critical applications. When things go sideways, use these solutions to diagnose and resolve problems before they escalate. + link: /learning/solutions/automated-diagnostics/index.md + + - title: Containers + icon: /assets/img/runner-icon.png + details: Think of PagerDuty Automation as your container command center, where you can manage distributed environments at scale without the headache. Whether it’s handling container sprawl or automating response playbooks, you stay in control with real-time insights and automated resolutions—keeping everything running at peak performance. + link: /learning/solutions/containers/index.md + + - title: Database Management + icon: shuffle + details: Database administrators (DBAs) face numerous challenges related to data security, maintaining high availability, and optimizing performance. Check out how Automation can make these problems yesterday's stress. + link: /learning/solutions/database-management/index.md + +---