View and manage Kubernetes ReplicaSets that maintain pod replicas
ReplicaSets ensure a specified number of pod replicas are running at any time. They are typically managed by Deployments rather than created directly, but you can view, scale, and manage them when needed.
Click the actions menu (three dots) on the ReplicaSet row.
3
Click Scale
Select Scale to open the scale dialog.
4
Set Replica Count
Enter the desired number of replicas.
5
Apply
Click Scale to apply the change.
If the ReplicaSet is managed by a Deployment, scaling the ReplicaSet directly may be overridden by the Deployment controller. Scale the parent Deployment instead for persistent changes.
Click the Create ReplicaSet button in the page header.
2
Write YAML
Enter the ReplicaSet manifest in YAML format.
3
Select Namespace
Choose the target namespace for the ReplicaSet.
4
Create
Click Create to apply the manifest.
For most use cases, create a Deployment instead of a ReplicaSet directly. Deployments provide rolling updates, rollback capabilities, and better lifecycle management.
If the ReplicaSet is managed by a Deployment, it will be automatically recreated. Delete the parent Deployment instead to permanently remove the ReplicaSet.
Deployments are the recommended way to manage stateless applications. They create and manage ReplicaSets automatically, providing additional features like rolling updates and rollbacks.
Generally no. Use Deployments instead, which manage ReplicaSets and provide additional features like rolling updates and rollbacks. Direct ReplicaSet creation is only needed for specific use cases.
Why are there multiple ReplicaSets for one Deployment?
Each time you update a Deployment’s pod template, a new ReplicaSet is created. Old ReplicaSets are kept (scaled to 0) for rollback capability. The number retained is controlled by revisionHistoryLimit.
Can I restart pods in a ReplicaSet?
ReplicaSets don’t have a built-in restart mechanism. Delete pods to have them recreated, or if managed by a Deployment, use the Deployment’s restart feature.
What happens if I scale a Deployment-managed ReplicaSet?
The Deployment controller will detect the change and revert it to match the Deployment’s replica count. Always scale the Deployment instead.
How do I identify which Deployment owns a ReplicaSet?
Check the “Controlled By” column or the owner references in the ReplicaSet details. The ReplicaSet name usually includes the Deployment name as a prefix.
Why is my ReplicaSet showing 0/0 replicas?
This is normal for old ReplicaSets after a Deployment update. The Deployment scales down old ReplicaSets to 0 but keeps them for rollback history.
Can I update the pod template in a ReplicaSet?
Yes, but existing pods won’t be updated. Only new pods (created due to scaling or pod deletion) will use the new template. Use Deployments for proper rolling updates.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ShiftLabs","description":"Internal Developer Platform","colors":{"primary":"#0D9373"},"favicon":"/images/favicon.ico","navbar":{"links":[{"label":"Dashboard","href":"https://launchpad.shiftlabs.dev"}]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"shiftlabs","hasAudioNarration":false,"actualSubdomain":"shiftlabs","customDomains":["docs.shiftlabs.dev"],"gitSource":{"type":"github","owner":"shiftlabsdev-core","repo":"shiftlabs-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21e90094a5dc2e6daf96e2","collectionId":"0b53f43a-d9fb-4feb-b2cd-4bb6b09f8625","schemaVersion":"v2"},"entitlements":{},"buildId":"6a21e90094a5dc2e6daf96e2:success","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"Infrastructure","count":39},{"language":"default","tag":"Kubernetes","count":30},{"language":"default","tag":"Platform Services","count":16},{"language":"default","tag":"CI/CD \u0026 Deployments","count":9},{"language":"default","tag":"Ceph","count":9},{"language":"default","tag":"System","count":8},{"language":"default","tag":"Workloads","count":7},{"language":"default","tag":"Settings","count":7},{"language":"default","tag":"Integrations","count":6},{"language":"default","tag":"CI Platform","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"infrastructure/kubernetes/workloads/replica-sets","slug":"/infrastructure/kubernetes/workloads/replica-sets","pageMetadata":{"title":"ReplicaSets","description":"View and manage Kubernetes ReplicaSets that maintain pod replicas","icon":"clone","href":"/infrastructure/kubernetes/workloads/replica-sets","hidden":false},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"View and manage Kubernetes ReplicaSets that maintain pod replicas\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Card,CardGroup,Heading,Info,Step,Steps,Table,Tip,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`ReplicaSets ensure a specified number of pod replicas are running at any time. They are typically managed by Deployments rather than created directly, but you can view, scale, and manage them when needed.`}),`\n`,_jsx(Heading,{level:`2`,id:`key-concepts`,children:`Key Concepts`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`ReplicaSet`,icon:`clone`,children:_jsx(_components.p,{children:`A controller that maintains a stable set of replica pods running at any time.`})}),_jsx(Card,{title:`Selector`,icon:`filter`,children:_jsx(_components.p,{children:`Label selector that identifies which pods belong to the ReplicaSet.`})}),_jsx(Card,{title:`Replicas`,icon:`copy`,children:_jsx(_components.p,{children:`The desired number of pod instances to maintain.`})}),_jsx(Card,{title:`Owner Reference`,icon:`link`,children:_jsx(_components.p,{children:`Link to the parent controller (usually a Deployment) that manages the ReplicaSet.`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`required-permissions`,children:`Required Permissions`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Action`}),_jsx(_components.th,{children:`Permission`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`View replicasets`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`iam:project:infrastructure:kubernetes:read`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Scale replicaset`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`iam:project:infrastructure:kubernetes:write`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Create replicaset`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`iam:project:infrastructure:kubernetes:write`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Edit replicaset`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`iam:project:infrastructure:kubernetes:write`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Delete replicaset`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`iam:project:infrastructure:kubernetes:delete`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`replicaset-status-values`,children:`ReplicaSet Status Values`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Running`})}),_jsx(_components.td,{children:`All desired replicas are ready`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`NotReady`})}),_jsx(_components.td,{children:`Some replicas are not ready yet`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Scaled to 0`})}),_jsx(_components.td,{children:`ReplicaSet has zero replicas`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Unknown`})}),_jsx(_components.td,{children:`Status cannot be determined`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`replicaset-metrics`,children:`ReplicaSet Metrics`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Metric`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Replicas`})}),_jsx(_components.td,{children:`Desired number of pods`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Ready`})}),_jsx(_components.td,{children:`Pods that are ready (ready/desired)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Available`})}),_jsx(_components.td,{children:`Pods available for service`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Fully Labeled`})}),_jsx(_components.td,{children:`Pods with all expected labels`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-view-replicasets`,children:`How to View ReplicaSets`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Select Cluster`,children:_jsx(_components.p,{children:`Choose a cluster from the cluster dropdown.`})}),_jsx(Step,{title:`Select Namespace`,children:_jsx(_components.p,{children:`Choose a namespace or select “all” to view ReplicaSets across all namespaces.`})}),_jsx(Step,{title:`Filter and Search`,children:_jsx(_components.p,{children:`Use the search box to find ReplicaSets by name or controlling resource.`})})]}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`The “Controlled By” column shows the parent resource (usually a Deployment) that manages each ReplicaSet.`})}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-view-replicaset-details`,children:`How to View ReplicaSet Details`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Find the ReplicaSet`,children:_jsx(_components.p,{children:`Locate the ReplicaSet in the list.`})}),_jsx(Step,{title:`Click ReplicaSet Name`,children:_jsx(_components.p,{children:`Click on the ReplicaSet name to open the detail drawer.`})}),_jsxs(Step,{title:`Review Details`,children:[_jsx(_components.p,{children:`View ReplicaSet information including:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Replica counts and status`}),`\n`,_jsx(_components.li,{children:`Pod template specification`}),`\n`,_jsx(_components.li,{children:`Label selectors`}),`\n`,_jsx(_components.li,{children:`Owner references`}),`\n`,_jsx(_components.li,{children:`Events`}),`\n`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-scale-a-replicaset`,children:`How to Scale a ReplicaSet`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Find the ReplicaSet`,children:_jsx(_components.p,{children:`Locate the ReplicaSet in the list.`})}),_jsx(Step,{title:`Open Actions Menu`,children:_jsx(_components.p,{children:`Click the actions menu (three dots) on the ReplicaSet row.`})}),_jsx(Step,{title:`Click Scale`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Scale`}),` to open the scale dialog.`]})}),_jsx(Step,{title:`Set Replica Count`,children:_jsx(_components.p,{children:`Enter the desired number of replicas.`})}),_jsx(Step,{title:`Apply`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Scale`}),` to apply the change.`]})})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`If the ReplicaSet is managed by a Deployment, scaling the ReplicaSet directly may be overridden by the Deployment controller. Scale the parent Deployment instead for persistent changes.`})}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-create-a-replicaset`,children:`How to Create a ReplicaSet`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Click Create ReplicaSet`,children:_jsxs(_components.p,{children:[`Click the `,_jsx(_components.strong,{children:`Create ReplicaSet`}),` button in the page header.`]})}),_jsx(Step,{title:`Write YAML`,children:_jsx(_components.p,{children:`Enter the ReplicaSet manifest in YAML format.`})}),_jsx(Step,{title:`Select Namespace`,children:_jsx(_components.p,{children:`Choose the target namespace for the ReplicaSet.`})}),_jsx(Step,{title:`Create`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Create`}),` to apply the manifest.`]})})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`For most use cases, create a Deployment instead of a ReplicaSet directly. Deployments provide rolling updates, rollback capabilities, and better lifecycle management.`})}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-edit-a-replicaset`,children:`How to Edit a ReplicaSet`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open Actions Menu`,children:_jsx(_components.p,{children:`Click the actions menu on the ReplicaSet row.`})}),_jsx(Step,{title:`Click Edit YAML`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Edit YAML`}),` to open the editor.`]})}),_jsxs(Step,{title:`Modify Spec`,children:[_jsx(_components.p,{children:`Edit the ReplicaSet specification. Common changes:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Replica count`}),`\n`,_jsx(_components.li,{children:`Pod template (triggers pod replacement)`}),`\n`,_jsx(_components.li,{children:`Labels and annotations`}),`\n`]})]}),_jsx(Step,{title:`Save`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Update`}),` to apply changes.`]})})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`The selector field is immutable after creation. To change the selector, delete and recreate the ReplicaSet.`})}),`\n`,_jsx(Heading,{level:`2`,id:`how-to-delete-a-replicaset`,children:`How to Delete a ReplicaSet`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open Actions Menu`,children:_jsx(_components.p,{children:`Click the actions menu on the ReplicaSet row.`})}),_jsx(Step,{title:`Click Delete`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Delete`}),` from the menu.`]})}),_jsx(Step,{title:`Confirm`,children:_jsx(_components.p,{children:`Confirm the deletion.`})})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`If the ReplicaSet is managed by a Deployment, it will be automatically recreated. Delete the parent Deployment instead to permanently remove the ReplicaSet.`})}),`\n`,_jsx(Heading,{level:`2`,id:`replicasets-vs-deployments`,children:`ReplicaSets vs Deployments`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Feature`}),_jsx(_components.th,{children:`ReplicaSet`}),_jsx(_components.th,{children:`Deployment`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Pod replication`})}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:`Yes (via ReplicaSet)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Rolling updates`})}),_jsx(_components.td,{children:`No`}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Rollback`})}),_jsx(_components.td,{children:`No`}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Update history`})}),_jsx(_components.td,{children:`No`}),_jsx(_components.td,{children:`Yes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Declarative updates`})}),_jsx(_components.td,{children:`Manual`}),_jsx(_components.td,{children:`Automatic`})]})]})]}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`Deployments are the recommended way to manage stateless applications. They create and manage ReplicaSets automatically, providing additional features like rolling updates and rollbacks.`})}),`\n`,_jsx(Heading,{level:`2`,id:`understanding-owner-references`,children:`Understanding Owner References`}),`\n`,_jsx(_components.p,{children:`Most ReplicaSets are created and managed by Deployments:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Controlled By Deployment`}),`: The ReplicaSet is managed by a Deployment. Changes to replica count should be made on the Deployment.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`No Owner`}),`: The ReplicaSet is standalone and can be managed directly.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`When a Deployment updates, it creates a new ReplicaSet with the updated pod template and scales down the old ReplicaSet.`}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`ReplicaSet not creating pods`,id:`replicaset-not-creating-pods`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Check if replica count is greater than zero`}),`\n`,_jsx(_components.li,{children:`Verify selector matches pod template labels`}),`\n`,_jsx(_components.li,{children:`Check for resource quota limits in namespace`}),`\n`,_jsx(_components.li,{children:`Review ReplicaSet events for errors`}),`\n`]})}),_jsx(Accordion,{title:`Pods not becoming ready`,id:`pods-not-becoming-ready`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Check pod logs for application errors`}),`\n`,_jsx(_components.li,{children:`Verify readiness probe configuration`}),`\n`,_jsx(_components.li,{children:`Check if required ConfigMaps/Secrets exist`}),`\n`,_jsx(_components.li,{children:`Verify image pull is successful`}),`\n`]})}),_jsx(Accordion,{title:`Scale changes being reverted`,id:`scale-changes-being-reverted`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Check if ReplicaSet is managed by a Deployment`}),`\n`,_jsx(_components.li,{children:`Scale the parent Deployment instead`}),`\n`,_jsx(_components.li,{children:`Check for HorizontalPodAutoscaler targeting the Deployment`}),`\n`]})}),_jsx(Accordion,{title:`Old ReplicaSets consuming resources`,id:`old-replicasets-consuming-resources`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Deployments keep old ReplicaSets for rollback`}),`\n`,_jsxs(_components.li,{children:[`Set `,_jsx(_components.code,{children:`spec.revisionHistoryLimit`}),` on Deployment to limit retained ReplicaSets`]}),`\n`,_jsx(_components.li,{children:`Default is 10 revisions`}),`\n`]})}),_jsx(Accordion,{title:`Cannot delete ReplicaSet`,id:`cannot-delete-replicaset`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`If managed by Deployment, it will be recreated`}),`\n`,_jsx(_components.li,{children:`Delete the parent Deployment instead`}),`\n`,_jsx(_components.li,{children:`Check for finalizers blocking deletion`}),`\n`]})}),_jsx(Accordion,{title:`Selector mismatch errors`,id:`selector-mismatch-errors`,children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Selectors are immutable after creation`}),`\n`,_jsx(_components.li,{children:`Ensure pod template labels match the selector`}),`\n`,_jsx(_components.li,{children:`Delete and recreate to change the selector`}),`\n`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`faq`,children:`FAQ`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Should I create ReplicaSets directly?`,id:`should-i-create-replicasets-directly`,children:_jsx(_components.p,{children:`Generally no. Use Deployments instead, which manage ReplicaSets and provide additional features like rolling updates and rollbacks. Direct ReplicaSet creation is only needed for specific use cases.`})}),_jsx(Accordion,{title:`Why are there multiple ReplicaSets for one Deployment?`,id:`why-are-there-multiple-replicasets-for-one-deployment`,children:_jsxs(_components.p,{children:[`Each time you update a Deployment’s pod template, a new ReplicaSet is created. Old ReplicaSets are kept (scaled to 0) for rollback capability. The number retained is controlled by `,_jsx(_components.code,{children:`revisionHistoryLimit`}),`.`]})}),_jsx(Accordion,{title:`Can I restart pods in a ReplicaSet?`,id:`can-i-restart-pods-in-a-replicaset`,children:_jsx(_components.p,{children:`ReplicaSets don’t have a built-in restart mechanism. Delete pods to have them recreated, or if managed by a Deployment, use the Deployment’s restart feature.`})}),_jsx(Accordion,{title:`What happens if I scale a Deployment-managed ReplicaSet?`,id:`what-happens-if-i-scale-a-deployment-managed-replicaset`,children:_jsx(_components.p,{children:`The Deployment controller will detect the change and revert it to match the Deployment’s replica count. Always scale the Deployment instead.`})}),_jsx(Accordion,{title:`How do I identify which Deployment owns a ReplicaSet?`,id:`how-do-i-identify-which-deployment-owns-a-replicaset`,children:_jsx(_components.p,{children:`Check the “Controlled By” column or the owner references in the ReplicaSet details. The ReplicaSet name usually includes the Deployment name as a prefix.`})}),_jsx(Accordion,{title:`Why is my ReplicaSet showing 0/0 replicas?`,id:`why-is-my-replicaset-showing-0-0-replicas`,children:_jsx(_components.p,{children:`This is normal for old ReplicaSets after a Deployment update. The Deployment scales down old ReplicaSets to 0 but keeps them for rollback history.`})}),_jsx(Accordion,{title:`Can I update the pod template in a ReplicaSet?`,id:`can-i-update-the-pod-template-in-a-replicaset`,children:_jsx(_components.p,{children:`Yes, but existing pods won’t be updated. Only new pods (created due to scaling or pod deletion) will use the new template. Use Deployments for proper rolling updates.`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"ReplicaSets","description":"View and manage Kubernetes ReplicaSets that maintain pod replicas","icon":"clone","href":"/infrastructure/kubernetes/workloads/replica-sets","hidden":false}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Key Concepts","slug":"key-concepts","depth":2,"children":[]},{"title":"Required Permissions","slug":"required-permissions","depth":2,"children":[]},{"title":"ReplicaSet Status Values","slug":"replicaset-status-values","depth":2,"children":[]},{"title":"ReplicaSet Metrics","slug":"replicaset-metrics","depth":2,"children":[]},{"title":"How to View ReplicaSets","slug":"how-to-view-replicasets","depth":2,"children":[]},{"title":"How to View ReplicaSet Details","slug":"how-to-view-replicaset-details","depth":2,"children":[]},{"title":"How to Scale a ReplicaSet","slug":"how-to-scale-a-replicaset","depth":2,"children":[]},{"title":"How to Create a ReplicaSet","slug":"how-to-create-a-replicaset","depth":2,"children":[]},{"title":"How to Edit a ReplicaSet","slug":"how-to-edit-a-replicaset","depth":2,"children":[]},{"title":"How to Delete a ReplicaSet","slug":"how-to-delete-a-replicaset","depth":2,"children":[]},{"title":"ReplicaSets vs Deployments","slug":"replicasets-vs-deployments","depth":2,"children":[]},{"title":"Understanding Owner References","slug":"understanding-owner-references","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]},{"title":"FAQ","slug":"faq","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"shiftlabs","siteName":"ShiftLabs","title":"ReplicaSets - ShiftLabs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-22T09:19:46.523Z","originalFileLocation":"infrastructure/kubernetes/workloads/replica-sets.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"View and manage Kubernetes ReplicaSets that maintain pod replicas\">\u003cmeta data-mint-head name=\"application-name\" content=\"ShiftLabs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"ReplicaSets - ShiftLabs\">\u003cmeta data-mint-head property=\"og:description\" content=\"View and manage Kubernetes ReplicaSets that maintain pod replicas\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ShiftLabs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://shiftlabs.mintlify.app/_mintlify/api/og/v2?division=Workloads\u0026amp;title=ReplicaSets\u0026amp;description=View+and+manage+Kubernetes+ReplicaSets+that+maintain+pod+replicas\u0026amp;theme=57be3255082b8f94f24487af\u0026amp;signature=d488f1c2b529f02b0833d6c23b7c690c296acf0740f6cfd3a122ffafcce7a412\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"ReplicaSets - ShiftLabs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"View and manage Kubernetes ReplicaSets that maintain pod replicas\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://shiftlabs.mintlify.app/_mintlify/api/og/v2?division=Workloads\u0026amp;title=ReplicaSets\u0026amp;description=View+and+manage+Kubernetes+ReplicaSets+that+maintain+pod+replicas\u0026amp;theme=57be3255082b8f94f24487af\u0026amp;signature=d488f1c2b529f02b0833d6c23b7c690c296acf0740f6cfd3a122ffafcce7a412\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/shiftlabs/8cK8R5imRkSeAfCf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ShiftLabs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/infrastructure/kubernetes/workloads/replica-sets.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.shiftlabs.dev/#organization\",\"name\":\"ShiftLabs\",\"url\":\"https://docs.shiftlabs.dev\"},{\"@type\":\"WebSite\",\"@id\":\"https://docs.shiftlabs.dev#website\",\"name\":\"ShiftLabs\",\"url\":\"https://docs.shiftlabs.dev\",\"publisher\":{\"@id\":\"https://docs.shiftlabs.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets#webpage\",\"url\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets\",\"name\":\"ReplicaSets\",\"description\":\"View and manage Kubernetes ReplicaSets that maintain pod replicas\",\"dateModified\":\"2026-01-22T09:19:46.523Z\",\"isPartOf\":{\"@id\":\"https://docs.shiftlabs.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Infrastructure\",\"item\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/system/clusters\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes\",\"item\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/system/clusters\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Workloads\",\"item\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/pods\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"ReplicaSets\",\"item\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets#article\",\"headline\":\"ReplicaSets\",\"name\":\"ReplicaSets\",\"description\":\"View and manage Kubernetes ReplicaSets that maintain pod replicas\",\"url\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets\",\"mainEntityOfPage\":{\"@id\":\"https://docs.shiftlabs.dev/infrastructure/kubernetes/workloads/replica-sets#webpage\"},\"dateModified\":\"2026-01-22T09:19:46.523Z\",\"publisher\":{\"@id\":\"https://docs.shiftlabs.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.shiftlabs.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ShiftLabs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ShiftLabs","nav":{"global":null,"groups":[{"group":"Getting Started","pages":[{"title":"Overview","icon":"rocket","href":"/getting-started/overview"},{"title":"Quickstart","icon":"bolt","href":"/getting-started/quickstart"},{"title":"Why ShiftLabs","icon":"lightbulb","href":"/getting-started/why-shiftlabs"}]},{"group":"Infrastructure","pages":[{"group":"Kubernetes","pages":[{"group":"System","pages":[{"title":"Clusters","icon":"server","href":"/infrastructure/kubernetes/system/clusters"},{"title":"Nodes","icon":"hard-drive","href":"/infrastructure/kubernetes/system/nodes"},{"title":"Certificates","icon":"certificate","href":"/infrastructure/kubernetes/system/certificates"}]},{"group":"Management","pages":[{"title":"Namespaces","icon":"folder-tree","href":"/infrastructure/kubernetes/management/namespaces"},{"title":"Upgrade","icon":"arrow-up","href":"/infrastructure/kubernetes/management/upgrade"}]},{"group":"Workloads","pages":[{"title":"Pods","icon":"box","href":"/infrastructure/kubernetes/workloads/pods"},{"title":"Deployments","icon":"docker","href":"/infrastructure/kubernetes/workloads/deployments"},{"title":"DaemonSets","icon":"circle-nodes","href":"/infrastructure/kubernetes/workloads/daemon-sets"},{"title":"StatefulSets","description":"Manage stateful applications with stable identities and persistent storage","icon":"database","href":"/infrastructure/kubernetes/workloads/stateful-sets"},{"title":"ReplicaSets","icon":"clone","href":"/infrastructure/kubernetes/workloads/replica-sets"},{"title":"CronJobs","description":"Schedule and manage time-based jobs in Kubernetes","icon":"timer","href":"/infrastructure/kubernetes/workloads/cron-jobs"},{"title":"Jobs","icon":"briefcase","href":"/infrastructure/kubernetes/workloads/jobs"}]},{"group":"Releases","pages":[{"title":"Helm Releases","icon":"package","href":"/infrastructure/kubernetes/releases/helm-releases"}]},{"group":"Network","pages":[{"title":"Services","href":"/infrastructure/kubernetes/network/services"},{"title":"Ingresses","icon":"globe","href":"/infrastructure/kubernetes/network/ingresses"},{"title":"Ingress Classes","icon":"layer-group","href":"/infrastructure/kubernetes/network/ingress-classes"}]},{"group":"Configs","pages":[{"title":"ConfigMaps","icon":"file-text","href":"/infrastructure/kubernetes/configs/config-maps"},{"title":"Secrets","icon":"key","href":"/infrastructure/kubernetes/configs/secrets"},{"title":"HPAs","icon":"","href":"/infrastructure/kubernetes/configs/hpas"},{"title":"PDBs","icon":"shield-halved","href":"/infrastructure/kubernetes/configs/pdbs"}]},{"group":"Storage","pages":[{"title":"PVCs","icon":"hard-drive","href":"/infrastructure/kubernetes/storage/pvcs"},{"title":"PVs","icon":"database","href":"/infrastructure/kubernetes/storage/pvs"},{"title":"Storage Classes","icon":"","href":"/infrastructure/kubernetes/storage/storage-classes"}]},{"group":"Access Control","pages":[{"title":"Cluster Roles","icon":"shield","href":"/infrastructure/kubernetes/access-control/cluster-roles"},{"title":"Cluster Role Bindings","icon":"link","href":"/infrastructure/kubernetes/access-control/cluster-role-bindings"},{"title":"Roles","icon":"shield","href":"/infrastructure/kubernetes/access-control/roles"},{"title":"Role Bindings","icon":"link","href":"/infrastructure/kubernetes/access-control/role-bindings"},{"title":"Service Accounts","icon":"user-circle","href":"/infrastructure/kubernetes/access-control/service-accounts"}]},{"group":"Observability","pages":[{"title":"Events","icon":"bell","href":"/infrastructure/kubernetes/observability/events"}]},{"title":"Custom Resources","icon":"puzzle","href":"/infrastructure/kubernetes/custom-resources"}]},{"group":"Ceph","pages":[{"group":"System","pages":[{"title":"Clusters","icon":"database","href":"/infrastructure/ceph/system/clusters"},{"title":"Nodes","icon":"server","href":"/infrastructure/ceph/system/nodes"},{"title":"OSDs","icon":"hard-drive","href":"/infrastructure/ceph/system/osds"},{"title":"CRUSH Map","icon":"sitemap","href":"/infrastructure/ceph/system/crush-map"},{"title":"Physical Disks","icon":"hard-drive","href":"/infrastructure/ceph/system/physical-disks"}]},{"group":"Management","pages":[{"title":"Services \u0026 Daemons","icon":"","href":"/infrastructure/ceph/management/services"},{"title":"Upgrade","icon":"arrow-up-from-bracket","href":"/infrastructure/ceph/management/upgrade"}]},{"group":"Observability","pages":[{"title":"Performance","icon":"gauge","href":"/infrastructure/ceph/observability/performance"},{"title":"Events","icon":"bell","href":"/infrastructure/ceph/observability/events"}]}]}]},{"group":"Platform Services","pages":[{"group":"Vault","pages":[{"title":"Secrets","icon":"key","href":"/platform-services/vault/secrets"},{"title":"Policies","icon":"shield-check","href":"/platform-services/vault/policies"},{"title":"Tokens","icon":"ticket","href":"/platform-services/vault/tokens"},{"title":"Audit Logs","icon":"scroll","href":"/platform-services/vault/audit-logs"}]},{"group":"Consul","pages":[{"title":"Services","icon":"network-wired","href":"/platform-services/consul/services"},{"title":"Intentions","icon":"shield-check","href":"/platform-services/consul/intentions"},{"title":"Key/Value Store","icon":"key","href":"/platform-services/consul/key-value"}]},{"group":"Kafka","pages":[{"title":"Brokers","icon":"server","href":"/platform-services/kafka/brokers"},{"title":"Topics","icon":"layer-group","href":"/platform-services/kafka/topics"},{"title":"Consumer Groups","icon":"users","href":"/platform-services/kafka/consumer-groups"},{"title":"Schema Registry","icon":"file-code","href":"/platform-services/kafka/schema-registry"}]},{"group":"Redis","pages":[{"title":"Overview","icon":"gauge","href":"/platform-services/redis/overview"},{"title":"Key Browser","icon":"key","href":"/platform-services/redis/key-browser"},{"title":"CLI","icon":"terminal","href":"/platform-services/redis/cli"},{"title":"Configuration","icon":"sliders","href":"/platform-services/redis/configuration"},{"title":"Slow Log","icon":"clock","href":"/platform-services/redis/slow-log"}]}]},{"group":"CI/CD \u0026 Deployments","pages":[{"group":"CI Platform","pages":[{"title":"Namespaces","icon":"folder-open","href":"/ci-cd-and-deployments/ci-platform/namespaces"},{"title":"Projects","icon":"merge","href":"/ci-cd-and-deployments/ci-platform/projects"},{"title":"Providers","icon":"git-alt","href":"/ci-cd-and-deployments/ci-platform/providers"},{"title":"Registry","icon":"box","href":"/ci-cd-and-deployments/ci-platform/registry"},{"title":"Templates","icon":"file-code","href":"/ci-cd-and-deployments/ci-platform/templates"}]},{"group":"CD Platform","pages":[{"title":"Applications","icon":"rocket","href":"/ci-cd-and-deployments/cd-platform/applications"},{"title":"Projects","icon":"folder","href":"/ci-cd-and-deployments/cd-platform/projects"},{"title":"Clusters","icon":"cloud","href":"/ci-cd-and-deployments/cd-platform/clusters"},{"title":"Repositories","icon":"git-alt","href":"/ci-cd-and-deployments/cd-platform/repositories"}]}]},{"group":"Pipeline \u0026 Helm","pages":[{"group":"Pipeline","pages":[{"title":"Syntax \u0026 Structure","icon":"code","href":"/pipeline-and-helm/pipeline/syntax-and-stracture"}]},{"group":"Helm","pages":[{"group":"Releases","pages":[{"title":"V1 3 2","href":"/pipeline-and-helm/helm/releases/v1-3-2"}]}]}]},{"group":"Performance Testing","pages":[{"title":"New Test","icon":"bolt","href":"/performance-testing/new-test"},{"title":"Test Plans","icon":"list-check","href":"/performance-testing/test-plans"},{"title":"Test Results","icon":"chart-mixed","href":"/performance-testing/test-results"},{"title":"Multi-Region Tests","icon":"globe","href":"/performance-testing/multi-region-tests"}]},{"group":"Security","pages":[{"title":"Keyrings","icon":"key","href":"/security/keyrings"}]},{"group":"Mesh Networking","pages":[{"title":"Mesh Agent","icon":"network-wired","href":"/mesh-networking/mesh-agent"}]},{"group":"Access Management","pages":[{"title":"Users","icon":"users","href":"/access-management/users"},{"title":"Groups","icon":"users-rectangle","href":"/access-management/groups"},{"title":"Roles","icon":"shield","href":"/access-management/roles"},{"title":"Projects","icon":"folder-tree","href":"/access-management/projects"}]},{"group":"Audit \u0026 Compliance","pages":[{"title":"Audit Logs","icon":"file-lines","href":"/audit-and-compliance/audit-logs"},{"title":"IAM Audit Logs","icon":"shield-check","href":"/audit-and-compliance/iam-audit-logs"}]},{"group":"Settings","pages":[{"group":"Integrations","icon":"folder-tree","pages":[{"title":"Overview","icon":"plug","href":"/settings/integrations/overview"},{"title":"Redis","icon":"database","href":"/settings/integrations/redis"},{"title":"Consul","icon":"server","href":"/settings/integrations/consul"},{"title":"Vault","icon":"shield-check","href":"/settings/integrations/vault"},{"title":"Kafka","icon":"message","href":"/settings/integrations/kafka"},{"title":"ArgoCD","icon":"code-branch","href":"/settings/integrations/argo-cd"}]},{"title":"Organization","icon":"building","href":"/settings/organization"}]}]},"basePath":"","title":"ReplicaSets - ShiftLabs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":[],"chunks":[]}