1. Sanjana Das

Sanjana Das

Forum Replies Created

Viewing 15 posts - 1 through 15 (of 21 total)
  • Author
    Posts
  • in reply to: Fabfed examples not working #6804
    Sanjana Das
    Participant

      Thank you so much for your help! I am excited to look into it today.

      Also, can we set up a Zoom meeting to figure out the chameleon issue?

      in reply to: Fabfed examples not working #6794
      Sanjana Das
      Participant

        Is there a way to change that in the yaml file? If I want to make a scenario where a node on one site is using L2STS or fabnetv4 to connect to a node on another site?

        in reply to: Fabfed examples not working #6793
        Sanjana Das
        Participant

          Hi. I am using the chi@uc. My project ID is CH 817567. I have created nodes on this as well as the tacc site through the portal so that seems to be working. I would appreciate it if we could have a zoom meeting!

          in reply to: Fabfed examples not working #6786
          Sanjana Das
          Participant

            Hi. I had another question about the fabric example. In the .fab file under resources, we just have one field for nic_model. But the slice that is created contains two NICs, one connected to fabnetv4 and one to fabnetv6. How does this get configured since we are not specifying this in the configuration?

            in reply to: Fabfed examples not working #6729
            Sanjana Das
            Participant

              For the chameleon, I followed all your instructions but I am still getting the same error. Is there something else that I need to take care of?
              /fabfed/fabfed/examples/chi$ fabfed workflow -s chi_example_1 -apply
              2024-03-05 14:31:26,968 [controller.py:40] [INFO] loaded local stitching policy.
              2024-03-05 14:31:26,974 [controller.py:123] [INFO] Starting PLAN_PHASE: Calling ADD … for 1 resource(s)
              2024-03-05 14:31:27,588 [controller.py:143] [INFO] Starting CREATE_PHASE: Calling CREATE … for 1 resource(s)
              Now using CHI@UC:
              URL: https://chi.uc.chameleoncloud.org
              Location: Argonne National Laboratory, Lemont, Illinois, USA
              Support contact: help@chameleoncloud.org
              2024-03-05 14:31:28,440 [chi_util.py:36] [ERROR] Error checking for lease chi_example_1-chi_node0-lease The request you have made requires authentication. (HTTP 401) (Request-ID: req-54641916-758a-4e1d-a5a3-31556c0a44a5)
              2024-03-05 14:31:28,440 [controller.py:158] [ERROR] The request you have made requires authentication. (HTTP 401) (Request-ID: req-54641916-758a-4e1d-a5a3-31556c0a44a5)
              Traceback (most recent call last):
              File “/home/sanjana/fabfed/fabfed/fabfed/controller/controller.py”, line 155, in create
              provider.create_resource(resource=resource.attributes)
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/api/provider.py”, line 160, in create_resource
              raise e
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/api/provider.py”, line 157, in create_resource
              self.do_create_resource(resource=resource)
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/chi/chi_provider.py”, line 142, in do_create_resource
              node.create()
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/chi/chi_node.py”, line 99, in create
              self._lease_helper.create_lease_if_needed(reservations=self.reservations, retry=self._retry)
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/chi/chi_util.py”, line 37, in create_lease_if_needed
              raise e
              File “/home/sanjana/fabfed/fabfed/fabfed/provider/chi/chi_util.py”, line 31, in create_lease_if_needed
              self.lease = chi.lease.get_lease(self.lease_name)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/chi/lease.py”, line 710, in get_lease
              return blazar().lease.get(ref)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/blazarclient/v1/leases.py”, line 39, in get
              resp, body = self.request_manager.get(‘/leases/%s’ % lease_id)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/adapter.py”, line 393, in get
              return self.request(url, ‘GET’, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/blazarclient/base.py”, line 125, in request
              resp, body = super(SessionClient, self).request(
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/adapter.py”, line 552, in request
              resp = super(LegacyJsonAdapter, self).request(*args, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/adapter.py”, line 255, in request
              return self.session.request(url, method, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/adapter.py”, line 255, in request
              return self.session.request(url, method, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/session.py”, line 789, in request
              auth_headers = self.get_auth_headers(auth)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/session.py”, line 1214, in get_auth_headers
              return auth.get_headers(self, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/plugin.py”, line 106, in get_headers
              token = self.get_token(session)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/identity/base.py”, line 85, in get_token
              return self.get_access(session).auth_token
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/identity/base.py”, line 131, in get_access
              self.auth_ref = self.get_auth_ref(session)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/identity/v3/federation.py”, line 70, in get_auth_ref
              auth_ref = token_plugin.get_auth_ref(session)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/identity/v3/base.py”, line 185, in get_auth_ref
              resp = session.post(token_url, json=body, headers=headers,
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/session.py”, line 1162, in post
              return self.request(url, ‘POST’, **kwargs)
              File “/home/sanjana/fabfed_venv/lib/python3.9/site-packages/keystoneauth1/session.py”, line 985, in request
              raise exceptions.from_response(resp, method, url)
              keystoneauth1.exceptions.http.Unauthorized: The request you have made requires authentication. (HTTP 401) (Request-ID: req-54641916-758a-4e1d-a5a3-31556c0a44a5)
              2024-03-05 14:31:28,442 [fabfed.py:78] [ERROR] Exceptions while creating resources … Number Of Exceptions=1:[
              msg=The request you have made requires authentication. (HTTP 401) (Request-ID: req-54641916-758a-4e1d-a5a3-31556c0a44a5)
              ]
              2024-03-05 14:31:28,442 [fabfed.py:95] [INFO] nodes=0, networks=0, services=0, pending=0, failed=1

              in reply to: Fabfed examples not working #6728
              Sanjana Das
              Participant

                Hi. Thanks so much for this!! It works perfectly now!

                in reply to: Fabfed examples not working #6683
                Sanjana Das
                Participant

                  Hi, I have set the credentials files from the template and everything seems fine. Just for clarification, what should go in the key_pair field? just the key name?

                  Moreover, the fabfed version is 1.7a0 and  fabrictestbed-extensions version is 1.5.4

                  Sanjana Das
                  Participant

                    Thank you so much for all your help! Really appreciate it.

                    Sanjana Das
                    Participant

                      Hi,

                      What did you do for the Chameleon server reservation ID? Since in the notebook, there aren’t steps to reserve a server. That is where I tried reserving a server using the chi api and got the reservation id.

                      Sanjana Das
                      Participant

                        Hi,

                        Thanks for that! Would it be possible for you to share the code snippet of how you set up the server? This is how I did it and I can see it up and running on the Chameleon GUI. I can also see that it was successfully assigned the ip address from the fabnetv4 pool of ip addresses. Also, I pinged the fabric gateway (10.30.162.1) from a node in psc and that worked but it failed for the chameleon gateway (10.130.162.2).

                         

                        Create the lease

                        BLAZAR_TIME_FORMAT = ‘%Y-%m-%d %H:%M’

                        # Set start/end date for lease
                        # Start one minute into future to avoid Blazar thinking lease is in past
                        # due to rounding to closest minute.
                        start_date = (datetime.now(tz=tz.tzutc()) + timedelta(minutes=1)).strftime(BLAZAR_TIME_FORMAT)
                        end_date = (datetime.now(tz=tz.tzutc()) + timedelta(days=1)).strftime(BLAZAR_TIME_FORMAT)

                        # Build list of reservations (in this case there is only one reservation)
                        reservation_list = [
                        {
                        “resource_type”: “network”,
                        “network_name”: chameleon_network_name,
                        “network_properties”: “”,
                        “resource_properties”: json.dumps(
                        [“==”, “$stitch_provider”, ‘fabric’]
                        ),
                        },

                        {‘resource_type’: ‘physical:host’,
                        ‘resource_properties’: ‘[“==”, “$node_type”, “compute_skylake”]’,
                        ‘hypervisor_properties’: ”, ‘min’: 1, ‘max’: 1}]

                        chameleon_lease = chi.lease.create_lease(chameleon_lease_name,
                        reservations=reservation_list,
                        start_date=start_date,
                        end_date=end_date)

                        #Print the lease info
                        chameleon_network_reservation_id = [reservation for reservation in chameleon_lease[‘reservations’] if reservation[‘resource_type’] == ‘network’][0][‘id’]
                        print(f”chameleon_network_reservation_id: {chameleon_network_reservation_id}”)
                        chameleon_server_reservation_id = [reservation for reservation in chameleon_lease[‘reservations’] if reservation[‘resource_type’] == ‘physical:host’][0][‘id’]
                        print(f”chameleon_node_reservation_id: {chameleon_server_reservation_id}”)

                        Configure chameleon network and routes

                        chameleon_subnet = chi.network.create_subnet(chameleon_subnet_name, chameleon_network_id,
                        cidr=str(subnet),
                        allocation_pool_start=chameleon_allocation_pool_start,
                        allocation_pool_end=chameleon_allocation_pool_end,
                        gateway_ip=chameleon_gateway_ip)

                        chi.neutron().update_subnet(subnet=chameleon_subnet[‘id’] ,
                        body={
                        “subnet”: {
                        “host_routes”: [
                        {
                        “destination”: f”{fablib.FABNETV4_SUBNET}”,
                        “nexthop”: f”{fabric_gateway_ip}”
                        }
                        ]
                        }
                        })

                        print(f”subnet name : {chameleon_subnet[‘name’]}”)
                        print(f”subnet : {chameleon_subnet[‘cidr’]}”)
                        print(f”gateway_ip : {chameleon_subnet[‘gateway_ip’]}”)

                        for starting server

                        import chi.server

                        servers = []

                        for i in range(chameleon_server_count):
                        server_name=f”{chameleon_server_name}_{i+1}”

                        # Create the server
                        servers.append(chi.server.create_server(server_name,
                        reservation_id= chameleon_server_reservation_id,
                        network_name=chameleon_network_name,
                        image_name=chameleon_image_name,
                        key_name=chameleon_key_name
                        ))

                        # Wait until the server is active
                        for server in servers:
                        print(f’Waiting for server: {server.name}’)
                        chi.server.wait_for_active(server.id)
                        print(‘Done!’)

                        Sanjana Das
                        Participant

                          Hi,

                          I am still facing the same issue on the other sites as well. Do we need to explicitly add routes from the nodes of those sites so that they can reach the fabnetv4 subnet created at tacc?

                          Sanjana Das
                          Participant

                            Hello, I just realized the lease of those slices ended. I created new ones and their slice ids are: f43ae1fb-459f-4947-b41d-2c859ed81ffc and ae103574-56cf-4859-a75b-54308ff94570

                            MScreenshot-2024-02-27-at-10.35.17 PM

                            Moreover, this is the output of pinging the chameleon server:

                            Sanjana Das
                            Participant

                              Hello. There are two slices being created in that notebook so I will send both of them! The first one is “tacc_stitch” with the id 2ff552d5-2965-4c1f-bac5-7b4221869cc5 and the second one is “MyFabricNodes” with the id 5f9a95b6-b933-4582-a650-5ac28af8ef9e. In the Chameleon facility port l3fabnetv4 notebook, the node from “MyFabricNodes”  is pinging the Chameleon server with the ip 10.130.164.13.

                              I think the interfaces and routes are correctly set up since I did not change anything in the notebook. Moreover, I was successfully able to create the server from the notebook itself so that issue was also resolved.

                              Sanjana Das
                              Participant

                                I am still having this issue so I manually created a server in Chameleon, go its ip, and went on to run the notebook but at the final step the fabric node was not able to ping the Chameleon server.

                                 

                                Moreover, I have another question. From the fabric portal, I know that we can create a chameleon facility port and connect it to a fabric slice but can we replicate this exact experiment (creating a node(s) in chameleon and also in fabric and connecting them) using the fabric portal?

                                in reply to: Cannot SSH to VMs on newy-w2.fabric-testbed.net #6545
                                Sanjana Das
                                Participant

                                  Hello! i was finally able to login. But I went to the portal where the slice got created and copy pasted this command to ssh to the node : ssh -F <path to SSH config file> -i <path to private sliver key> rocky@2001:400:a100:3050:f816:3eff:fe6f:ff75

                                  earlier I was using the command ssh -F ~/work/fabric_config/ssh_config -i <private *sliver* key file> ubuntu@11.22.33.44 which was mentioned in this link.

                                Viewing 15 posts - 1 through 15 (of 21 total)