diff --git a/README.md b/README.md index 4084a5ccd..78e186238 100644 --- a/README.md +++ b/README.md @@ -6,32 +6,65 @@ Genestack — where Kubernetes and OpenStack tango in the cloud. Imagine a waltz what you need. -## Unveiling Genestack's Marvels - -* Kubernetes: - * Kube-OVN: The silent but reliable partner - * K-Dashboard: Always there to take the lead - * MetalLB: Adds the metallic charm - * CoreDNS: The system’s melodious voice - * Ingress-NGINX: Controls the flow, just like a boss - * Cert-Manager: The permit distributor - -* Operators: - * MariaDB: The data maestro - * RabbitMQ: Always 'hopping' around to deliver messages - * Rook (Optional): The magician handling storage tricks - * Memcached: Memory’s best friend - -* OpenStack: - * Cinder: Solid as a rock - * Glance: Giving you the perfect 'glance' to an image - * Heat: Adds the heat when things get chilly - * Horizon: The futuristic seer - * Keystone: The cornerstone of identity - * Neutron: Always attracting the right connections - * Nova: The cosmic powerhouse - * Placement: Ensuring everything finds its place - * Octavia: The younger +## Included/Required Components + +The following components are part of the initial product release +and largely deployed with Helm+Kustomize against the K8s API (v1.28 and up): + +| Group | Component | OpenStack Flex | OpenStack Enterprise | +|------------|----------------------|----------------|----------------------| +| Kubernetes | Kubernetes | Required | Required | +| Kubernetes | Kubernetes Dashboard | Required | Required | +| Kubernetes | Cert-Manager | Required | Required | +| Kubernetes | MetaLB (L2/L3) | Required | Required | +| Kubernetes | Core DNS | Required | Required | +| Kubernetes | Ingress Controller (Nginx) | Required | Required | +| Kubernetes | Kube-Proxy (IPVS) | Required | Required | +| Kubernetes | Calico | Optional | Required | +| Kubernetes | Kube-OVN | Required | Optional | +| Kubernetes | Helm | Required | Required | +| Kubernetes | Kustomize | Required | Required | +| OpenStack | openVswitch (Helm) | Optional | Required | +| OpenStack | Galera (Operator) | Required | Required | +| OpenStack | rabbitMQ (Operator) | Required | Required | +| OpenStack | memcacheD (Operator) | Required | Required | +| OpenStack | Ceph Rook | Optional | Required | +| OpenStack | iscsi/tgtd | Required | Optional | +| OpenStack | Keystone (Helm) | Required | Required | +| OpenStack | Glance (Helm) | Required | Required | +| OpenStack | Cinder (Helm) | Required | Required | +| OpenStack | Nova (Helm) | Required | Required | +| OpenStack | Neutron (Helm) | Required | Required | +| OpenStack | Placement (Helm) | Required | Required | +| OpenStack | Horizon (Helm) | Required | Required | +| OpenStack | Skyline (Helm) | Optional | Optional | +| OpenStack | Heat (Helm) | Required | Required | +| OpenStack | Designate (Helm) | Optional | Required | +| OpenStack | Barbican (Helm) | Required | Required | +| OpenStack | Octavia (Helm) | Required | Required | +| OpenStack | Ironic (Helm) | Optional | Required | +| OpenStack | metal3.io | Optional | Required | + +Initial monitoring componets consists of the following projects + +| Group | Component | OpenStack Flex | OpenStack Enterprise | +|------------|----------------------|----------------|----------------------| +| Kubernetes | Prometheus | Required | Required | +| Kubernetes | Thanos | Required | Required | +| Kubernetes | Alertmanager | Required | Required | +| Kubernetes | Grafana | Required | Required | +| Kubernetes | Node Exporter | Required | Required | +| Kubernetes | redfish Exporter | Required | Required | +| OpenStack | OpenStack Exporter | Required | Required | + +At a later stage these components will be added + +| Group | Component | OpenStack Flex | OpenStack Enterprise | +|-----------|----------------------|----------------|----------------------| +| OpenStack | MongoDB | Optional | Required | +| OpenStack | Aodh (Helm) | Optional | Required | +| OpenStack | Ceilometer (Helm) | Optional | Required | +| OpenStack | Masakari (Helm) | Optional | Required | ### Symphony of Simplicity @@ -76,7 +109,7 @@ architecture of the Genestack ecosystem. They say a picture is worth 1000 words, so here's a picture. -![Genestack Architecture Diagram](assets/images/diagram-genestack.svg) +![Genestack Architecture Diagram](assets/images/diagram-genestack.png) ## Get Deploying diff --git a/assets/images/diagram-genestack.png b/assets/images/diagram-genestack.png new file mode 100644 index 000000000..286bd71a2 Binary files /dev/null and b/assets/images/diagram-genestack.png differ diff --git a/assets/images/diagram-genestack.svg b/assets/images/diagram-genestack.svg deleted file mode 100644 index 0310c9602..000000000 --- a/assets/images/diagram-genestack.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/images/genstack-local-arch-k8s-ent.svg b/assets/images/genstack-local-arch-k8s-ent.svg new file mode 100644 index 000000000..232fd2eb7 --- /dev/null +++ b/assets/images/genstack-local-arch-k8s-ent.svg @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + Enterprise K8s Components + + + Layer 1 + + + + + Operating System + + + + + + + CNI: Calico + + + + + + + containerd + + + + + + + kubelet + + + + + + + Exposed + Kubernetes API + + + + + + + LoadBalancer / MetalLB + + + + + + + etcd + + + + + + + CNCF Kubernetes and Operators + + + + + + + Local Path + Provisioner + + + + + + + Dell 4th Gen AMD (R7615/R7625) + + + + + + + Dell 16th Gen Intel (R740xd) + + + + + + + CSI: Ceph + + + + + + + + Kubernetes API components + + + + + + + Prometheus + Thanos + + + + + + + Ingress + + + + + + + coredns + + + + + + + kube + proxy + + + + + + + kube + apiserver + + + + + + + Helm + + + + + + + Metal3.io + CRD + + + + + + + Calico + Controller + + + + + + + + registry + + + + + + + Cert- + Manager + + + + + diff --git a/assets/images/genstack-local-arch-k8s-flex.svg b/assets/images/genstack-local-arch-k8s-flex.svg new file mode 100644 index 000000000..a779178fb --- /dev/null +++ b/assets/images/genstack-local-arch-k8s-flex.svg @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + + + Flex K8s Components + + + Layer 1 + + + + + Operating System + + + + + + + OVS + + + + + + + containerd + + + + + + + kubelet + + + + + + + Exposed + Kubernetes API + + + + + + + LoadBalancer / MetalLB + + + + + + + etcd + + + + + + + CNCF Kubernetes and Operators + + + + + + + Local Path + Provisioner + + + + + + + Dell 4th Gen AMD (R7615/R7625) + + + + + + + Dell Intel (R740xd) + + + + + + + + Kubernetes API components + + + + + + + Prometheus + Thanos + + + + + + + Ingress + + + + + + + coredns + + + + + + + kube + proxy + + + + + + + kube + apiserver + + + + + + + Helm + + + + + + + Metal3.io + CRD + + + + + + + OVN + Controller + + + + + + + + registry + + + + + + + Cert- + Manager + + + + + diff --git a/assets/images/source/Logical-Architecture.graffle b/assets/images/source/Logical-Architecture.graffle new file mode 100644 index 000000000..0bea319a0 Binary files /dev/null and b/assets/images/source/Logical-Architecture.graffle differ