ArmoniK Infrastructure redesign #1281
jdongo-aneo
started this conversation in
Ideas
Replies: 1 comment
-
I would say that Component outputs should be something like that: # optional
output "env" {
value = {
VARIABLE_NAME = "value"
}
}
# optional
output "env_configmap" {
value = [
"component-cm",
]
}
# env_secret like env_configmap
# optional
output "env_from_configmap" {
value = {
VARIABLE_NAME = {
configmap = "component-cm"
field = "field-within-cm"
}
}
}
# env_from_secret like env_from_configmap
# optional
output "mount_configmap" {
value = {
"mount-name" = {
configmap = "component-cm"
path = "/path/within/pod"
subpath = "subpath/in/cm" # optional
mode = "600" # optional
items = { # optional
"file" = {
mode = "600" # optional
field = "field-within-cm"
}
}
}
}
}
# mount_secret like mount_configmap
# optional
output "mount_volume" {
value = ToBeDefined
}
# optional
output "mount_volume_claim" {
value = ToBeDefined
} And then, the modules are passed as-is to the ArmoniK module: module "armonik" {
source = "path/to/armonik"
control_plane = {
...
conf = [ module.activemq, module.s3, module.mongodb ]
}
metrics_exporter = {
...
conf = [ module.mongodb ]
}
...
} |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Current status
ArmoniK infrastructure is built using a modular approach in mind, but the management and information passing (environment variables, configMaps, volumes) to the various pods are complex.
Issues
Lots of parameters are hardcoded.
Adding a now component is challenging. For example, adding a NFS as an alternative object storage in place of redis or minio is not trivial and requires many changes in various places in an non unified way. The same applies for other components.
Proposal
Define and format the input variables expected by ArmoniK.
Standardize the output for the components to match what is expected by ArmoniK.
AEP
aneoconsulting/ArmoniK.Community#44
Beta Was this translation helpful? Give feedback.
All reactions