I tried get a single node ECS running in AWS.
I launched a CentOS 7 instance and cloned the ECS repository from Github.
Unfortunately the step1_ecs_singlenode:install Python script failed with the following error message:
The command I executed looks like:
The /etc/ hosts and /etc/sysconfig/network on my CentOS instance looks like
Any idea what I've to change to get my container configured and running?
Thanks
Undine
Solved! Go to Solution.
Hello Undine,
The issue is the hostname. What is the result when you run command hostname and hostname -i ?
i will recommend to update hostname to be ecs-single-node. update hosts file to reflect the new hostname and pass ecs-single-node as parameter value.
Hello Undine,
The issue is the hostname. What is the result when you run command hostname and hostname -i ?
i will recommend to update hostname to be ecs-single-node. update hosts file to reflect the new hostname and pass ecs-single-node as parameter value.
Thanks fir the hint. My first problem is solved.
The single node docker image is running on my CentOS EC2 instance.
I assume you could help me for my next problem as well.
What exactly do I have to do to get my ECS GUI started?
Could I connect from a web browser running on my MAC to the dockerized ECS running on EC2?
Thanks
Best regards
Undine
Hello Undine,
To access ECS GUI you need to know the AWS instance public IP address. Make sure port 443 is open then from your Mac machine go to https://<AWS Public IP Address>
Magdy
Hi Magdy,
thanks, it helped, I finally got connect to the GUI.
Sorry for this stupid question ... I totally ignored the public IP, these are my first steps with docker and EC2
Unfortunately I've the next question now.
I am running in the following error running the step2_object_provisioning.
I still could dial-in to the GUI, the ova1 is there. But the status tays partially ready for ever.
Do you have any idea what I could do?
Thanks
Undine
[centos@ip-172-31-20-71 ecs-single-node]$ sudo python step2_object_provisioning.py --ECSNodes=172.31.20.71 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=
Executing getAuthToken: curl -i -k https://172.31.20.71:4443/login -u root:ChangeMe
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 93 100 93 0 0 67 0 0:00:01 0:00:01 --:--:-- 67
Auth Token BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=
ECSNodes: 172.31.20.71
Namespace: ns1
ObjectVArray: ova1
ObjectVPool: ovp1
UserName: emccode
DataStoreName: ds1
VDCName: vdc1
MethodName:
Executing REST API command: curl -s -k -X POST -H 'Content-Type:application/xml' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/xml' -T license.xml https://172.31.20.71:9011/license
0
Create Object Varray ova1
Executing REST API command: curl -s -k -X POST -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' -d @request_body.tmp https://172.31.20.71:9011/vdc/data-services/varrays
{"id":"urn:storageos:VirtualArray:b5054a2e-53f3-4510-8e02-161abfd3fe10","name":"ova1","isProtected":false}Object Varray ova1 is created
Executing REST API command: curl -s -k -X GET -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' https://172.31.20.71:9011/vdc/data-services/varrays
{"varray":[{"id":"urn:storageos:VirtualArray:b5054a2e-53f3-4510-8e02-161abfd3fe10","name":"ova1","isProtected":false}]}Virtual Array: urn:storageos:VirtualArray:b5054a2e-53f3-4510-8e02-161abfd3fe10
Executing REST API command: curl -s -k -X GET -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' https://172.31.20.71:9011/vdc/data-services/varrays
{"varray":[{"id":"urn:storageos:VirtualArray:b5054a2e-53f3-4510-8e02-161abfd3fe10","name":"ova1","isProtected":false}]}Executing REST API command: curl -s -k -X POST -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' -d @request_body.tmp https://172.31.20.71:9011/vdc/data-stores/commodity
{"task":[{"name":"CREATE","link":{"rel":"self","href":"/vdc/data-stores/172.31.20.71/tasks/CREATE"},"global":null,"remote":null,"vdc":null,"tags":[],"resource":{"id":"172.31.20.71","name":"172.31.20.71","link":{"rel":"self","href":"/vdc/object-pools/172.31.20.71"}},"state":"pending","restLink":null,"op_id":"CREATE","associated_resources":[]}]}0
Executing REST API command: curl -s -k -X PUT -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' -d @request_body.tmp https://172.31.20.71:9011/object/vdcs/vdc/vdc1
{"code":7000,"retryable":false,"description":"An error occurred in the API Service","details":"An error occurred in the API service. Cause: error insertVdcInfo."}0
Executing REST API command: curl -s -k -X GET -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAcT1M4UEhoUXFRbmhFM2hQQ1l5cEpaSXNiNm84PQMAQQIADTE0Mzg3OTQ4MzU1MTkDAC51cm46VG9rZW46NmEzNWE1MmUtMWRhMy00ZWI2LTk2YzYtZTNiNGE4NTFiMjM0AgAC0A8=' -H 'ACCEPT:application/json' https://172.31.20.71:9011/object/vdcs/vdc/vdc1
{"code":2000,"retryable":false,"description":"Unable to find entity in request URL","details":"Unable to find entity specified in URL with the given id vdc1"}Traceback (most recent call last):
File "step2_object_provisioning.py", line 298, in <module>
main(sys.argv[1:])
File "step2_object_provisioning.py", line 284, in main
InsertVDC(ECSNode, VDCName)
File "step2_object_provisioning.py", line 132, in InsertVDC
return getVDCID(ECSNode,VDCName)
File "step2_object_provisioning.py", line 59, in getVDCID
return executeRestAPI(url, 'GET','.id', "", ECSNode,checkOutput=1)["id"]
KeyError: 'id'
Hello Undine,
We have challenge with step 2. I know our Engineering team is looking into it. You can use GUI steps section to finalize ECS preparation.
Magdy