1"use strict";(self.webpackChunkspectro_cloud_docs=self.webpackChunkspectro_cloud_docs||[]).push([["12974"],{361294:function(e,t,s){s.r(t),s.d(t,{frontMatter:()=>o,toc:()=>c,default:()=>d,metadata:()=>r,assets:()=>i,contentTitle:()=>l});var r=JSON.parse('{"id":"automation/crossplane/crossplane","title":"Crossplane","description":"Learn how to use Crossplane with Palette and Palette VerteX.","source":"@site/docs/docs-content/automation/crossplane/crossplane.md","sourceDirName":"automation/crossplane","slug":"/automation/crossplane/","permalink":"/automation/crossplane/","draft":false,"unlisted":false,"editUrl":"https://github.com/spectrocloud/librarium/blob/master/docs/docs-content/automation/crossplane/crossplane.md","tags":[{"inline":true,"label":"crossplane","permalink":"/tags/crossplane"},{"inline":true,"label":"iac","permalink":"/tags/iac"},{"inline":true,"label":"automation","permalink":"/tags/automation"},{"inline":true,"label":"infrastructure as code","permalink":"/tags/infrastructure-as-code"}],"version":"current","lastUpdatedAt":1777826507000,"sidebarPosition":0,"frontMatter":{"sidebar_label":"Crossplane","title":"Crossplane","description":"Learn how to use Crossplane with Palette and Palette VerteX.","hide_table_of_contents":false,"sidebar_position":0,"tags":["crossplane","iac","automation","infrastructure as code"]},"sidebar":"docSidebar","previous":{"title":"Terraform","permalink":"/automation/terraform/"},"next":{"title":"Deploy an AWS IaaS Cluster with Crossplane","permalink":"/automation/crossplane/deploy-cluster-aws-crossplane"}}'),n=s(474848),a=s(884429);let o={sidebar_label:"Crossplane",title:"Crossplane",description:"Learn how to use Crossplane with Palette and Palette VerteX.",hide_table_of_contents:!1,sidebar_position:0,tags:["crossplane","iac","automation","infrastructure as code"]},l,i={},c=[{value:"Palette Provider",id:"palette-provider",level:2},{value:"Get Started",id:"get-started",level:2},{value:"Resources",id:"resources",level:2}];function u(e){let t={a:"a",code:"code",h2:"h2",li:"li",p:"p",ul:"ul",...(0,a.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(t.p,{children:["Palette supports the open source Cloud Native Computing Foundation (CNCF) project\n",(0,n.jsx)(t.a,{href:"https://www.crossplane.io/",children:"Crossplane"}),". Crossplane transforms Kubernetes clusters into universal control planes,\nextending the Kubernetes API and enabling infrastructure resource provisioning and management across major\ninfrastructure providers."]}),"\n",(0,n.jsxs)(t.p,{children:["These resources, called\n",(0,n.jsx)(t.a,{href:"https://docs.crossplane.io/v2.0/managed-resources/managed-resources/#managed-resource-fields",children:"Managed Resources (MR)"}),"\nwithin the Crossplane environment, are essentially Kubernetes Custom Resource Definitions (CRDs) that represent\ninfrastructure resources as native Kubernetes objects. Because they are Kubernetes objects, you can interact with them\nusing standard commands like ",(0,n.jsx)(t.code,{children:"kubectl describe"}),". When users create a managed resource, Crossplane interacts with the\ninfrastructure provider API to request the creation of the resource within the provider's environment."]}),"\n",(0,n.jsx)(t.h2,{id:"palette-provider",children:"Palette Provider"}),"\n",(0,n.jsx)(t.p,{children:"You can use the Palette Crossplane provider to interact with the Palette API and create resources declaratively."}),"\n",(0,n.jsxs)(t.p,{children:["Refer to the ",(0,n.jsx)(t.a,{href:"https://marketplace.upbound.io/providers/crossplane-contrib/provider-palette/latest",children:"Palette Provider"}),"\npage for a complete list of managed resources and examples."]}),"\n",(0,n.jsx)(t.h2,{id:"get-started",children:"Get Started"}),"\n",(0,n.jsx)(t.p,{children:"You can use the Palette Crossplane Provider to deploy Kubernetes clusters on supported public cloud, data center, and\nbare metal infrastructures. For examples of end-to-end cluster provisioning with Crossplane, review the following\nguides:"}),"\n",(0,n.jsxs)(t.ul,{children:["\n",(0,n.jsx)(t.li,{children:(0,n.jsx)(t.a,{href:"/automation/crossplane/deploy-cluster-aws-crossplane",children:"Deploy an AWS IaaS Cluster with Crossplane"})}),"\n",(0,n.jsx)(t.li,{children:(0,n.jsx)(t.a,{href:"/automation/crossplane/deploy-cluster-azure-crossplane",children:"Deploy an Azure IaaS Cluster with Crossplane"})}),"\n",(0,n.jsx)(t.li,{children:(0,n.jsx)(t.a,{href:"/automation/crossplane/deploy-cluster-gcp-crossplane",children:"Deploy a GCP IaaS Cluster with Crossplane"})}),"\n"]}),"\n",(0,n.jsx)(t.h2,{id:"resources",children:"Resources"}),"\n",(0,n.jsxs)(t.ul,{children:["\n",(0,n.jsx)(t.li,{children:(0,n.jsx)(t.a,{href:"https://docs.crossplane.io/latest/",children:"Crossplane Documentation"})}),"\n"]})]})}function d(e={}){let{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u(e)}},884429:function(e,t,s){s.d(t,{R:()=>o,x:()=>l});var r=s(296540);let n={},a=r.createContext(n);function o(e){let t=r.useContext(a);return r.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:o(e.components),r.createElement(a.Provider,{value:t},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.