Preparing for adding kubevirt samples#44
Conversation
No need to repeat the directory name in the resource names. This makes it harder to work with the source. Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Instead of repeating the same label everywhere, use commonLabels in the kustomization. Signed-off-by: Nir Soffer <nsoffer@redhat.com>
- Improve names (logger container writing to /var/log/ramen.log) - Make "name" property first for consistency - Improve indentation Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Log START, UPDATE, and STOP events to make it easier to verify failover and relocate. Based on ramen logger for the cirros image: RamenDR/ramen#1105 Signed-off-by: Nir Soffer <nsoffer@redhat.com>
- Fix indentation to the default yamllint style Signed-off-by: Nir Soffer <nsoffer@redhat.com>
ShyamsundarR
left a comment
There was a problem hiding this comment.
A few questions:
- Why is there a
coresubdirectory withindrandsubscriptiondirectories? - My understanding of
coreunder root, anddeploymentunder the same is to have another higher level directory likekubevirtwith its variants within. This reduces some clutter (so that we avoid deployment/sts/daemonset within core). The issue I see is with the namecoreor just stashing away 3 workload types from the clutter (we will still need kubevirt at the root with it's sub-directories in there). It would be preferable to be more explicit and have deployment at the root. We can add aworkloadsor similar directory at the root and move all workloads within it (avoid clutter at root of the repo).
The second is more key than the first, as it impacts product documentation.
We need different drpc for busybox and kubevirt, mainly because we use different pvc selector, based on appname label. We use the same drpc if we use the same appname for all samples, maybe For subscription I assumed we will have few differences between core and kubvrit, but I managed to share the same files in #45. If we remove core and use the layout bellow, we have something like: And same for dr/
We already discussed this structure last week - grouping the standard resources (deployment, statefulset, daemonset under core, and 3 vm samples under kubevirt. For kubvirt grouping the VMs makes sense since we want to have a kubvirt specific README.md. For core samples, I don't think we need any specific README.md. Do you prefer this layout? From OpenShift console, adding user will need to choose paths like:
|
Ack, looks related to the pvcSelector comment that I made, if not possible yet we can look at this later.
Ack!
2 things I see here, looks cleaner so that at the higher level we do not have more directories, also
|
|
Conclusions after discussion:
|
Improve README, preparing for additional samples. - Minor text cleanups - Improve formatting of code examples - Consistent commands arguments order - Simplify commands for inspecting installed resources Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Change to directory layout to support additional applications that can
be deployed on multiple clusters types and storage.
The workloads directory keep all samples applications. Currently we have
only a deployment sample, but we want to add kubevirt virtual machines,
statefulset and daemonset samples..
A sample have a base directory and overlays for deploying it on
different clusters (odr, k8s) DR topology (retional, metro) and storage
(rbd, cephfs).
workloads/
└── deployment
├── base
│ ├── deployment.yaml
│ ├── kustomization.yaml
│ └── pvc.yaml
├── k8s-regional-rbd
│ └── kustomization.yaml
├── odr-metro-rbd
│ └── kustomization.yaml
├── odr-regional-cephfs
│ └── kustomization.yaml
└── odr-regional-rbd
└── kustomization.yaml
The subscription directory changed to similar structure to make it easy
to add overlays for new applications, and cover more cluster types and
storage options.
subscription/
├── base
│ ├── binding.yaml
│ ├── kustomization.yaml
│ ├── namespace.yaml
│ ├── placement.yaml
│ └── subscription.yaml
└── deployment-k8s-regional-rbd
└── kustomization.yaml
The dr directory changed to similar layout for same reason:
dr/
├── base
│ ├── drpc.yaml
│ └── kustomization.yaml
└── deployment-k8s-regional-rbd
└── kustomization.yaml
The README.md was updated to reflect the new layout, showing how to
use the busybox deployment.
Fixes RamenDR#43
Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Preparing for adding kubevirt samples, clean up the current samples, and change the directory layout to make it easy to add new applications and allow automated testing on all cluster and storage types.
Status:
Fixes #43