Which role is attached to instance

No need to look for AWS CLI installed your Machine, Just machine should have internet and no block from metadata. You can curl the metadata from EC2:

curl -s http://169.254.169.254/latest/meta-data/iam/info |grep InstanceProfileArn  | awk '{print $3}'

Yes. If you look at the response generated by aws ec2 describe-instances command, you'll notice that the resulting JSON data has

IamInstanceProfile -> (structure)

The IAM instance profile associated with the instance, if applicable.

Arn -> (string)

The Amazon Resource Name (ARN) of the instance profile.

Id -> (string)

The ID of the instance profile.

And later, you can use the iam cli interface to fetch policy/role details.

aws iam get-instance-profile --instance-profile-name <name here>

Please run describe-instances command (OSX/Linux/UNIX) to determine whether the selected instance has any IAM Roles/Instance Profiles assigned:

  aws ec2 describe-instances
    --region us-east-1
    --instance-ids i-07a2ad8872fb3226b
    --query 'Reservations[*].Instances[*].IamInstanceProfile'