Skip to content

[Question] - Support for custom fields (extra_config) in nodes.yaml - Storage in SMD and exposure via cloud-init #84

@Katakam-Rakesh

Description

@Katakam-Rakesh

Problem Statement

We want to pass custom metadata (like Slurm configuration, node roles, ownership info) to nodes during boot. We're using the extra_config field in nodes.yaml, but it's unclear if this data is stored in SMD and accessible to nodes via cloud-init.

Current Situation

We define custom fields in nodes.yaml:

nodes:
- name: slurmcontrol
  xname: x1000c0s0b0n0
  nid: 1
  group: slurm_control_node_x86_64
  extra_config:
    slurm:
      debug_partition: true
      partition_name: debug
    custom:
      owner: hpc-team
      rack: rack01
  interfaces:
  - mac_addr: c4:cb:e1:cb:26:f2
    ip_addrs:
    - name: management
      ip_addr: 172.16.255.10

- name: testnode01
  xname: x1000c0s0b4n0
  nid: 5
  group: slurm_node_x86_64
  tags:
    - role:compute
    - rack:rack02
    - gpu:false
  extra_config:
    slurm:
      debug_partition: true
    custom:
      owner: test-team
  interfaces:
  - mac_addr: aa:bb:cc:dd:ee:01
    ip_addrs:
    - name: management
      ip_addr: 172.16.255.55

Questions for Maintainers

  1. Is extra_config currently supported in nodes.yaml?

    • Does ochami discover parse and store it?
  2. Where is it stored?

    • SMD Component ExtraProperties field?
    • Separate database table?
    • Not stored at all?
  3. How to retrieve it?

    • Via ochami smd component get?
    • Via direct SMD API call?
    • Not currently retrievable?
  4. Is it exposed to nodes?

    • Via cloud-init metadata?
    • Via cloud-init groups?
    • Not currently exposed?
  5. What about the tags field?

    • Same questions as above
  6. If not currently supported, is this a planned feature?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions