-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[multi-asic][vs]: Add context_config.json files for multi-asic vs hwskus #7697
[multi-asic][vs]: Add context_config.json files for multi-asic vs hwskus #7697
Conversation
hwskus. Signed-off-by: Suvarna Meenakshi <[email protected]>
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 <[email protected]>
…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 [email protected]
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)