[multi-asic][vs]: Add context_config.json files for multi-asic vs hwskus#7697
Conversation
hwskus. Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
|
you can have only 1 context_config witch will have all those configurations, and a different guid value, then you can choose for each syncd that specific guid |
My understanding was that different guid is for single swss and multiple syncd scenario, for multiple swss and multiple syncd, we could have same guid. Is that right? |
|
depends what your configuration is, but if you want to run multiple syncds, even if each is in separate docker, you can still use single cotext_confg.json file, but then you must select right guid for pari OA-syncd, so hardcoding "- 0" in scripts would not be possible then, but your choice |
Reasoning for this separate context_config.json and same guid is:
|
…nic-net#7697) hwskus. Why I did it For multi-asic platforms, orchagent process in swss docker is started by passing device_ids(or asic_ids). Each swss docker starts orchagent with a different device_id. This device_id is passed as Hardware info to syncd. For syncd to start with the right hwinfo, context_config.json is passed as an argument. context_config.json file is looked up to get the hwinfo information. sonic-sairedis PRs required for this diff to be used to bring up multi-asic VS: sonic-net/sonic-sairedis#830 sonic-net/sonic-sairedis#832 How I did it Add context_config.json for each asic in the same structure as provided here: https://github.com/Azure/sonic-sairedis/blob/master/lib/src/context_config.json Each asic context_config.json will have different hwinfo string. hwinfo string will be same as device id retrieved from asic.conf file. Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
…c vs (sonic-net#7697)" (sonic-net#8147) This reverts commit a557dbd. Reverting this PR as it is not required currently for multi-asic VS. multi-asic VS will come up with multiple instances of swss and syncd. syncd will use default hwinfo string, same as in single asic VS.
Signed-off-by: Suvarna Meenakshi sumeenak@microsoft.com
Why I did it
For multi-asic platforms, orchagent process in swss docker is started by passing device_ids(or asic_ids).
Each swss docker starts orchagent with a different device_id. This device_id is passed as Hardware info to syncd. For syncd to start with the right hwinfo, context_config.json is passed as an argument. context_config.json file is looked up to get the hwinfo information.
sonic-sairedis PRs required for this diff to be used to bring up multi-asic VS:
sonic-net/sonic-sairedis#830
sonic-net/sonic-sairedis#832
How I did it
Add context_config.json for each asic in the same structure as provided here: https://github.com/Azure/sonic-sairedis/blob/master/lib/src/context_config.json
Each asic context_config.json will have different hwinfo string.
hwinfo string will be same as device id retrieved from asic.conf file.
How to verify it
With the sonic-sairedis changes mentioned above, bring up multi-asic vs image:
./testbed-cli.sh -t vtestbed.csv -m veos_vtb -k ceos add-topo vms-kvm-four-asic-t1-lag password.txt
./testbed-cli.sh -t vtestbed.csv -m veos_vtb deploy-mg vms-kvm-four-asic-t1-lag lab password.txt
Ensure that interfaces and BGP sessions are coming up:
Total number of neighbors 14
Which release branch to backport (provide reason below if selected)
Description for the changelog
A picture of a cute animal (not mandatory but encouraged)