-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Description:
We are trying to add BMCSimulator in ODIM as a server 3 out of 5 time we are receiving 503 response which is blocking to use BMCSimulator in ODIM github action to perform basic sanity test
Steps to reproduce:-
step 1:- Start the BMCSimulator with below comaand after modifying the Simulator.json file with required changes
simulator file content:
{
"binding": {
"ip": "<VM_IP>",
"port": 45000,
"odimUrl": ""
},
"security": {
"server": {
"useTLS" : true,
"basicCredentials": "admin:admin",
"externalKeyStoreLocation": "/home/odim/BMCSimulator/bmc.keystore.jks",
"externalKeyStorePassword": "Bm@_store1",
"useServerMTLS": "false"
},
"trustStore": {
"externalTrustStoreLocation": "/home/odim/BMCSimulator/bmc.truststore.jks",
"externalTrustStorePassword": "Bm@_store1"
},
"httpClient": {
"withBasic": true,
"basicCredentials": "admin:admin",
"useTLS" : true,
"serverCertificateVerificationEnabled": true
}
},
"cache": {
"etags": false
},
"resourcesConfig": {}
}
Cmd to start BMCSimulator:-
nohup java -jar simulator-runner-1.0-SNAPSHOT.jar run BMC -c /home/odim/BMCSimulator/src/main/resources/simulator-config.json >> /home/odim/simulator.log 2>&1 &
log after executing above command:-
02:59:50.321 [main] INFO c.o.s.commandline.RunSimulatorsCmd - Running simulator with name: 'BMC' on port null
02:59:50.714 [main] DEBUG c.o.simulator.SimulatorConfig$Config - Loaded external config: {
"binding" : {
"ip" : "<VM_IP>",
"port" : 45000,
"odimUrl" : ""
},
"security" : {
"server" : {
"useTLS" : true,
"basicCredentials" : "admin:admin",
"externalKeyStoreLocation" : "/home/odim/BMCSimulator/bmc.keystore.jks",
"externalKeyStorePassword" : "Bm@_store1",
"useServerMTLS" : "false"
},
"trustStore" : {
"externalTrustStoreLocation" : "/home/odim/BMCSimulator/bmc.truststore.jks",
"externalTrustStorePassword" : "Bm@_store1"
},
"httpClient" : {
"withBasic" : true,
"basicCredentials" : "admin:admin",
"useTLS" : true,
"serverCertificateVerificationEnabled" : true
}
},
"cache" : {
"etags" : false
},
"resourcesConfig" : { }
}
02:59:52.131 [main] DEBUG c.o.o.security.TrustManagerFactory - Using external truststore: /home/odim/BMCSimulator/bmc.truststore.jks
02:59:53.707 [main] DEBUG com.odim.utils.Timing - Simulator init time: 2157 ms
02:59:53.825 [main] DEBUG c.odim.simulator.http.ServerFactory - Using external keystore: /home/odim/BMCSimulator/bmc.keystore.jks
02:59:53.894 [main] DEBUG c.o.simulator.ResourcesConfigurator - Configuring resources
02:59:53.895 [main] DEBUG c.o.simulator.ResourcesConfigurator - Configuring resources time: 2 ms
02:59:53.897 [main] INFO io.javalin.Javalin - Starting Javalin ...
02:59:54.545 [main] INFO io.javalin.Javalin - Listening on https://<VM_IP>:45000/
02:59:54.546 [main] INFO io.javalin.Javalin - Javalin started in 650ms \o/
02:59:54.548 [main] INFO com.odim.simulator.http.Deployment - BMCSimulator started at: https://<VM_IP>:45000/redfish/v1
odim-controller:~$ netstat -tulnp
tcp6 0 0 <VM_IP>:45000 :::* LISTEN 2507/java
Step 2:- Add the the BMCSimulator to ODIm using the below POST command
curl -i -s -k -X POST -H "Authorization:Basic YWRtaW46T2QhbTEyJDQ=" -H "Content-Type:application/json" -d '{"HostName":"<VM_IP>:45000", "UserName":"admin", "Password":"admin", "Links":{"ConnectionMethod": {"@odata.id": "/redfish/v1/AggregationService/ConnectionMethods/'$grfConnectionMethodID'" }}}' 'https://'<VM_IP>':30080/redfish/v1/AggregationService/AggregationSources/'
Step 3:- Do a get on the task id to and check for 201 response for successful server addition with below command
curl -o /dev/null -s -w "%{http_code}\n" -s -k -X GET -H "Authorization:Basic YWRtaW46T2QhbTEyJDQ=" 'https://'<VM_IP>':30080'$bmctaskid''