

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon Keyspaces의 연결 오류 문제 해결
<a name="troubleshooting.connecting"></a>

연결에 문제가 있으신가요? 다음에서는 몇 가지 일반적인 문제와 이에 대한 해결 방법에 대해 설명합니다.

## Amazon Keyspaces 엔드포인트에 연결하는 오류
<a name="troubleshooting-connecting"></a>

연결 실패 및 연결 오류로 인해 다른 오류 메시지가 표시될 수 있습니다. 다음 섹션에서는 가장 일반적인 시나리오를 다룹니다.

**Topics**
+ [cqlsh를 사용하여 Amazon Keyspaces에 연결할 수 없음](#troubleshooting.connection.cqlsh)
+ [Cassandra 클라이언트 드라이버를 사용하여 Amazon Keyspaces에 연결할 수 없음](#troubleshooting.connection.driver)

### cqlsh를 사용하여 Amazon Keyspaces에 연결할 수 없음
<a name="troubleshooting.connection.cqlsh"></a>

**cqlsh를 사용하여 Amazon Keyspaces 엔드포인트에 연결하려고 하는데 `Connection error`와 함께 연결이 실패합니다.**

Amazon Keyspaces 테이블에 연결하려고 하는데 cqlsh가 제대로 구성되지 않은 경우 연결이 실패합니다. 다음 섹션에서는 cqlsh를 사용하여 연결을 설정하려고 할 때 연결 오류가 발생하는 가장 일반적인 구성 문제의 예를 제공합니다.

**참고**  
VPC에서 Amazon Keyspaces에 연결하려는 경우 추가 권한이 필요합니다. VPC 엔드포인트를 사용하여 연결을 성공적으로 구성하려면 [자습서: 인터페이스 VPC 엔드포인트를 사용하여 Amazon Keyspaces에 연결](vpc-endpoints-tutorial.md)의 단계를 따르세요.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하는데 연결 `timed out` 오류가 발생합니다.**

올바른 포트를 제공하지 않은 경우 다음과 같은 오류가 발생할 수 있습니다.

```
#  cqlsh cassandra.us-east-1.amazonaws.com 9140 -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.199': error(None, "Tried connecting to [('3.234.248.199', 9140)]. Last error: timed out")})
```

이 문제를 해결하려면 연결에 포트 9142를 사용하고 있는지 확인합니다.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하는데 `Name or service not known` 오류가 발생합니다.**

철자가 틀렸거나 존재하지 않는 엔드포인트를 사용한 경우가 이에 해당할 수 있습니다. 다음 예에서는 엔드포인트 이름의 철자가 틀립니다.

```
#  cqlsh cassandra.us-east-1.amazon.com 9142 -u "USERNAME" -p "PASSWORD" --ssl
Traceback (most recent call last):
  File "/usr/bin/cqlsh.py", line 2458, in >module>
    main(*read_options(sys.argv[1:], os.environ))
  File "/usr/bin/cqlsh.py", line 2436, in main
    encoding=options.encoding)
  File "/usr/bin/cqlsh.py", line 484, in __init__
    load_balancing_policy=WhiteListRoundRobinPolicy([self.hostname]),
  File "/usr/share/cassandra/lib/cassandra-driver-internal-only-3.11.0-bb96859b.zip/cassandra-driver-3.11.0-bb96859b/cassandra/policies.py", line 417, in __init__
socket.gaierror: [Errno -2] Name or service not known
```

퍼블릭 엔드포인트를 사용하여 연결할 때 이 문제를 해결하려면 [Amazon Keyspaces의 서비스 엔드포인트](programmatic.endpoints.md)에서 사용 가능한 엔드포인트를 선택하고 엔드포인트 이름에 오류가 없는지 확인합니다. VPC 엔드포인트를 사용하여 연결하는 경우 cqlsh 구성에서 VPC 엔드포인트 정보가 올바른지 확인합니다.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `OperationTimedOut` 오류를 수신합니다.**

Amazon Keyspaces에서는 강력한 보안을 보장하기 위해 연결에 SSL을 활성화해야 합니다. 다음 오류를 받는 경우 SSL 매개 변수가 누락될 수 있습니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD"
Connection error: ('Unable to connect to any servers', {'3.234.248.192': OperationTimedOut('errors=Timed out creating connection (5 seconds), last_host=None',)})
#
```

이 문제를 해결하려면 cqlsh 연결 명령에 다음 플래그를 추가합니다.

```
--ssl
```

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하는데 `SSL transport factory requires a valid certfile to be specified` 오류를 수신합니다.**

이 경우 SSL/TLS 인증서 경로가 누락되어 다음 오류가 발생합니다.

```
# cat .cassandra/cqlshrc
[connection]
port = 9142
factory = cqlshlib.ssl.ssl_transport_factory
#


# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Validation is enabled; SSL transport factory requires a valid certfile to be specified. Please provide path to the certfile in [ssl] section as 'certfile' option in /root/.cassandra/cqlshrc (or use [certfiles] section) or set SSL_CERTFILE environment variable.
#
```

이 문제를 해결하려면 컴퓨터에 있는 certfile에 경로를 추가합니다. 자세한 내용은 [TLS에 대한 `cqlsh` 연결을 수동으로 구성하는 방법](programmatic.cqlsh.md#encrypt_using_tls) 단원을 참조하십시오.

```
certfile =  path_to_file/keyspaces-bundle.pem
```

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `No such file or directory` 오류를 수신합니다.**

컴퓨터에 있는 인증서 파일의 경로가 잘못되어 다음과 같은 오류가 발생할 수 있습니다.

```
# cat .cassandra/cqlshrc
[connection]
port = 9142
factory = cqlshlib.ssl.ssl_transport_factory

[ssl]
validate = true
certfile = /root/wrong_path/keyspaces-bundle.pem
#



# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.192': IOError(2, 'No such file or directory')})
#
```

이 문제를 해결하려면 컴퓨터에 있는 certfile에 대한 경로가 올바른지 확인합니다. 자세한 내용은 [TLS에 대한 `cqlsh` 연결을 수동으로 구성하는 방법](programmatic.cqlsh.md#encrypt_using_tls) 단원을 참조하십시오.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `[X509] PEM lib` 오류를 수신합니다.**

SSL/TLS 인증서 `pem` 파일이 유효하지 않아 다음 오류가 발생할 수 있습니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.241': error(185090057, u"Tried connecting to [('3.234.248.241', 9142)]. Last error: [X509] PEM lib (_ssl.c:3063)")})
#
```

이 문제를 해결하려면 필요한 디지털 인증서를 다운로드했는지 확인합니다. 자세한 내용은 [TLS에 대한 `cqlsh` 연결을 수동으로 구성하는 방법](programmatic.cqlsh.md#encrypt_using_tls) 단원을 참조하십시오.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `unknown` SSL 오류를 수신합니다.**

SSL/TLS 인증서 `pem` 파일이 비어 있는 경우 다음과 같은 오류가 발생할 수 있습니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.220': error(0, u"Tried connecting to [('3.234.248.220', 9142)]. Last error: unknown error (_ssl.c:3063)")})
#
```

이 문제를 해결하려면 필요한 디지털 인증서를 다운로드했는지 확인합니다. 다음 주제의 단계를 사용하여 이를 확인할 수 있습니다[TLS에 대한 `cqlsh` 연결을 수동으로 구성하는 방법](programmatic.cqlsh.md#encrypt_using_tls).

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `SSL: CERTIFICATE_VERIFY_FAILED` 오류를 수신합니다.**

SSL/TLS 인증서 파일을 확인할 수 없어 다음 오류가 발생하는 경우가 이에 해당할 수 있습니다.

```
Connection error: ('Unable to connect to any servers', {'3.234.248.223': error(1, u"Tried connecting to [('3.234.248.223', 9142)]. Last error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)")})
```

이 문제를 해결하려면 필요한 디지털 인증서를 다운로드했는지 확인합니다. 다음 주제의 단계를 사용하여 이를 확인할 수 있습니다[TLS에 대한 `cqlsh` 연결을 수동으로 구성하는 방법](programmatic.cqlsh.md#encrypt_using_tls).

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `Last error: timed out` 오류를 수신합니다.**

Amazon EC2 보안 그룹에서 Amazon Keyspaces에 대한 아웃바운드 규칙을 구성하지 않은 경우일 수 있으며 그 결과 다음 오류가 발생합니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.206': error(None, "Tried connecting to [('3.234.248.206', 9142)]. Last error: timed out")})
#
```

이 문제가가 아닌 Amazon EC2 인스턴스의 구성으로 인해 발생하는`cqlsh`지 확인하려면 AWS CLI예를 들어 다음 명령을 사용하여를 사용하여 키스페이스에 연결해 볼 수 있습니다.

```
aws keyspaces list-tables --keyspace-name 'my_keyspace'
```

이 명령도 시간 초과되면 Amazon EC2 인스턴스가 올바르게 구성되지 않은 것입니다.

Amazon Keyspaces에 액세스할 수 있는 충분한 권한이 있는지 확인하려면 AWS CloudShell 를 사용하여에 연결할 수 있습니다`cqlsh`. 해당 연결이 설정되면 Amazon EC2 인스턴스를 구성해야 합니다.

이 문제를 해결하려면 Amazon EC2 인스턴스에 Amazon Keyspaces로의 트래픽을 허용하는 아웃바운드 규칙이 있는지 확인하세요. 이 경우가 아니라면 EC2 인스턴스의 새 보안 그룹을 생성하고 Amazon Keyspaces 리소스로의 아웃바운드 트래픽을 허용하는 규칙을 추가해야 합니다. Amazon Keyspaces에 대한 트래픽을 허용하도록 아웃바운드 규칙을 업데이트하려면 **유형** 드롭다운 메뉴에서 **CQLSH/CASSANDRA**를 선택합니다.

아웃바운드 트래픽 규칙으로 새 보안 그룹을 생성한 후 인스턴스에 추가해야 합니다. 인스턴스를 선택한 다음 **작업**, **보안**, **보안 그룹 변경**을 차례로 선택합니다. 아웃바운드 규칙으로 새 보안 그룹을 추가하되 기본 그룹도 계속 사용할 수 있는지 확인합니다.

EC2 아웃바운드 규칙을 보고 편집하는 방법에 대한 자세한 내용은 [Amazon EC2 사용 설명서의 보안 그룹에 규칙 추가](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-security-groups.html#adding-security-group-rule)를 참조하세요.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `Unauthorized` 오류를 수신합니다.**

이는 IAM 사용자 정책에서 Amazon Keyspaces 권한이 누락되어 다음 오류가 발생하는 경우일 수 있습니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "testuser-at-12345678910" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.241': AuthenticationFailed('Failed to authenticate to 3.234.248.241: Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::12345678910:user/testuser has no permissions."',)})
#
```

이 문제를 해결하려면 IAM 사용자 `testuser-at-12345678910`에게 Amazon Keyspaces에 액세스할 권한이 있는지 확인합니다. Amazon Keyspaces에 액세스 권한을 부여하는 IAM 정책의 예는 [Amazon Keyspaces ID 기반 정책 예제](security_iam_id-based-policy-examples.md) 섹션을 참조하세요.

IAM 액세스 관련 문제 해결 지침은 [Amazon Keyspaces ID 및 액세스 문제 해결](security_iam_troubleshoot.md) 섹션을 참조하세요.

**cqlsh를 사용하여 Amazon Keyspaces에 연결하려고 하지만 `Bad credentials` 오류를 수신합니다.**

사용자 이름이나 암호가 잘못되어 다음 오류가 발생하는 경우가 이에 해당할 수 있습니다.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.248': AuthenticationFailed('Failed to authenticate to 3.234.248.248: Error from server: code=0100 [Bad credentials] message="Provided username USERNAME and/or password are incorrect"',)})
#
```

이 문제를 해결하려면 코드의 *사용자 이름* 및 *암호*가 [서비스별 보안 인증](programmatic.credentials.ssc.md)을 생성할 때 얻은 사용자 이름 및 암호와 일치하는지 확인합니다.

**중요**  
cqlsh로 연결하려고 할 때 오류가 계속 표시되면 `--debug` 옵션을 사용하여 명령을 다시 실행하고 지원에 문의할 때 자세한 출력을 포함합니다.

### Cassandra 클라이언트 드라이버를 사용하여 Amazon Keyspaces에 연결할 수 없음
<a name="troubleshooting.connection.driver"></a>

다음 섹션에서는 Cassandra 클라이언트 드라이버로 연결할 때 발생하는 가장 일반적인 오류를 보여 줍니다.

**DataStax Java 드라이버를 사용하여 Amazon Keyspaces 테이블에 연결하려고 하지만 `NodeUnavailableException` 오류를 수신합니다.**

요청을 시도하는 연결이 끊어지면 다음과 같은 오류가 발생합니다.

```
[com.datastax.oss.driver.api.core.NodeUnavailableException: No connection was available to Node(endPoint=vpce-22ff22f2f22222fff-aa1bb234.cassandra.us-west-2.vpce.amazonaws.com/11.1.1111.222:9142, hostId=1a23456b-c77d-8888-9d99-146cb22d6ef6, hashCode=123ca4567)]
```

이 문제를 해결하려면 하트비트 값을 확인하여 더 높으면 30초로 낮춥니다.

```
advanced.heartbeat.interval = 30 seconds
```

그런 다음 관련 제한 시간을 찾아 값이 5초 이상으로 설정되어 있는지 확인합니다.

```
advanced.connection.init-query-timeout = 5 seconds
```

**드라이버 및 SigV4 플러그인을 사용하여 Amazon Keyspaces 테이블에 연결하려고 하지만 `AttributeError` 오류를 수신합니다.**

보안 인증이 올바르게 구성되지 않은 경우 다음 오류가 발생합니다.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’,
 {‘44.234.22.154:9142’: AttributeError(“‘NoneType’ object has no attribute ‘access_key’“)})
```

이 문제를 해결하려면 SigV4 플러그인을 사용할 때 IAM 사용자 또는 역할과 관련된 보안 인증을 전달하고 있는지 확인합니다. SigV4 플러그인에는 다음 보안 인증이 필요합니다.
+ `AWS_ACCESS_KEY_ID` - IAM 사용자 또는 역할과 연결된 AWS 액세스 키를 지정합니다.
+ `AWS_SECRET_ACCESS_KEY` - 액세스 키와 연결된 보안 키를 지정합니다. 이는 액세스 키에 대한 기본적인 "암호"입니다.

액세스 키와 SigV4 플러그인에 대한 자세한 내용은 [Amazon Keyspaces에 대한 AWS 자격 증명 생성 및 구성](access.credentials.md) 섹션을 참조하세요.

**드라이버를 사용하여 Amazon Keyspaces 테이블에 연결하려고 하지만 `PartialCredentialsError` 오류를 수신합니다.**

`AWS_SECRET_ACCESS_KEY`가 누락된 경우 다음 오류가 발생할 수 있습니다.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘44.234.22.153:9142’: 
 PartialCredentialsError(‘Partial credentials found in config-file, missing: aws_secret_access_key’)})
```

이 문제를 해결하려면 SigV4 플러그인을 사용할 때 `AWS_ACCESS_KEY_ID` 및 `AWS_SECRET_ACCESS_KEY`를 모두 전달하고 있는지 확인합니다. 액세스 키와 SigV4 플러그인에 대한 자세한 내용은 [Amazon Keyspaces에 대한 AWS 자격 증명 생성 및 구성](access.credentials.md) 섹션을 참조하세요.

**드라이버를 사용하여 Amazon Keyspaces 테이블에 연결하려고 하지만 `Invalid signature` 오류를 수신합니다.**

이는 서명에 필요한 구성 요소가 잘못되었거나 세션에 올바르게 정의되지 않았기 때문일 수 있습니다.
+ `AWS_ACCESS_KEY_ID`
+ `AWS_SECRET_ACCESS_KEY`
+ `AWS_DEFAULT_REGION`

다음 오류는 잘못된 액세스 키의 예입니다.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘11.234.11.234:9142’: 
 AuthenticationFailed(‘Failed to authenticate to 11.234.11.234:9142: Error from server: code=0100 
 [Bad credentials] message=“Authentication failure: Invalid signature”’)})
```

이 문제를 해결하려면 SigV4 플러그인이 Amazon Keyspaces에 액세스하도록 액세스 키와가 올바르게 구성 AWS 리전 되었는지 확인합니다. 액세스 키와 SigV4 플러그인에 대한 자세한 내용은 [Amazon Keyspaces에 대한 AWS 자격 증명 생성 및 구성](access.credentials.md) 섹션을 참조하세요.

#### VPC 엔드포인트 연결이 제대로 작동하지 않음
<a name="troubleshooting.connection.vpce"></a>

**VPC 엔드포인트를 사용하여 Amazon Keyspaces에 연결하려고 하는데 토큰 맵 오류가 발생하거나 처리량이 낮습니다.**

VPC 엔드포인트 연결이 올바르게 구성되지 않은 경우가 이에 해당할 수 있습니다.

이러한 문제를 해결하려면 다음 구성 세부 정보를 확인합니다. 단계별 자습서를 따라 Amazon Keyspaces의 인터페이스 VPC 엔드포인트를 통한 연결을 구성하는 방법을 알아보려면 [자습서: 인터페이스 VPC 엔드포인트를 사용하여 Amazon Keyspaces에 연결](vpc-endpoints-tutorial.md) 섹션을 참조하세요.

1. Amazon Keyspaces에 연결하는 데 사용되는 IAM 엔티티가 다음 예와 같이 사용자 테이블에 대한 읽기/쓰기 액세스 권한과 시스템 테이블에 대한 읽기 권한을 가지고 있는지 확인합니다.

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Action":[
               "cassandra:Select",
               "cassandra:Modify"
            ],
            "Resource":[
               "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
               "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
            ]
         }
      ]
   }
   ```

1. 다음 예와 같이 Amazon Keyspaces에 연결하는 데 사용되는 IAM 엔티티에 Amazon EC2 인스턴스의 VPC 엔드포인트 정보에 액세스하는 데 필요한 읽기 권한이 있는지 확인합니다.

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Sid":"ListVPCEndpoints",
            "Effect":"Allow",
            "Action":[
               "ec2:DescribeNetworkInterfaces",
               "ec2:DescribeVpcEndpoints"
            ],
            "Resource":"*"
         }
      ]
   }
   ```
**참고**  
관리형 정책 `AmazonKeyspacesReadOnlyAccess_v2` 및 `AmazonKeyspacesFullAccess`에는 Amazon Keyspaces가 Amazon EC2 인스턴스에 액세스하여 사용 가능한 인터페이스 VPC 엔드포인트에 대한 정보를 읽을 수 있도록 하는 데 필요한 권한이 포함되어 있습니다.

   VPC 엔드포인트에 대한 자세한 내용은 [Amazon Keyspaces에 인터페이스 VPC 엔드포인트 사용](vpc-endpoints.md#using-interface-vpc-endpoints) 섹션을 참조하세요.

1. 이 예와 같이 Java 드라이버의 SSL 구성이 호스트 이름 검증을 false로 설정하는지 확인합니다.

   ```
   hostname-validation = false
   ```

   드라이버 구성에 대한 자세한 내용은 [2단계: 드라이버 구성](using_java_driver.md#java_tutorial.driverconfiguration) 섹션을 참조하세요.

1. VPC 엔드포인트가 올바르게 구성되었는지 확인하기 위해 VPC *내에서* 다음 문을 실행할 수 있습니다.
**참고**  
로컬 개발자 환경 또는 Amazon Keyspaces CQL 편집기는 퍼블릭 엔드포인트를 사용하기 때문에 이 구성을 확인하기 위해 사용할 수 없습니다.

   ```
   SELECT peer FROM system.peers;
   ```

   출력은이 예제와 비슷해야 하며 VPC 설정 및 AWS 리전에 따라 IPv4 네트워크에서 연결할 때 프라이빗 IPv4 주소가 있는 2\$16개의 노드를 반환해야 합니다.

   ```
   peer
   ---------------
    192.0.2.0.15
    192.0.2.0.24
    192.0.2.0.13
    192.0.2.0.7
    192.0.2.0.8
   
   (5 rows)
   ```

#### `cassandra-stress`를 사용하여 연결할 수 없음
<a name="troubleshooting.connection.cassandra-stress"></a>

**`cassandra-stress` 명령을 사용하여 Amazon Keyspaces에 연결하려고 하지만 `SSL context` 오류를 수신합니다.**

이 문제는 Amazon Keyspaces에 연결하려고 하지만 trustStore가 제대로 설정되지 않은 경우 발생합니다. Amazon Keyspaces에서는 클라이언트와의 연결을 보호하는 데 도움이 되는 전송 계층 보안(TLS)을 사용해야 합니다.

이 경우 다음 오류가 표시됩니다.

```
Error creating the initializing the SSL Context
```

이 문제를 해결하려면 이 주제 [시작하기 전 준비 사항](using_java_driver.md#using_java_driver.BeforeYouBegin)에 나와 있는 대로 trustStore를 설정하는 지침을 따르세요.

trustStore가 설정되면 다음 명령을 사용하여 연결할 수 있어야 합니다.

```
./cassandra-stress user profile=./profile.yaml n=100 "ops(insert=1,select=1)" cl=LOCAL_QUORUM -node "cassandra.eu-north-1.amazonaws.com" -port native=9142 -transport ssl-alg="PKIX" truststore="./cassandra_truststore.jks" truststore-password="trustStore_pw" -mode native cql3 user="user_name" password="password"
```

#### IAM ID를 사용하여 연결할 수 없음
<a name="troubleshooting.connection.IAM"></a>

**IAM ID를 사용하여 Amazon Keyspaces 테이블에 연결하려고 하지만 `Unauthorized` 오류를 수신합니다.**

정책을 구현하고 사용자에게 필요한 권한을 먼저 부여하지 않고 IAM ID(예: IAM 사용자)를 사용하여 Amazon Keyspaces 테이블에 연결하려고 하면 이 오류가 발생합니다.

이 경우 다음 오류가 표시됩니다.

```
Connection error: ('Unable to connect to any servers', {'3.234.248.202': AuthenticationFailed('Failed to authenticate to 3.234.248.202: 
Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::1234567890123:user/testuser has no permissions."',)})
```

이 문제를 해결하려면 IAM 사용자의 권한을 확인합니다. 표준 드라이버를 사용하여 연결하려면 사용자는 최소한 시스템 테이블에 대한 `SELECT` 액세스 권한을 가지고 있어야 합니다. 이는 대부분의 드라이버가 연결 시 시스템 키스페이스/테이블을 읽기 때문입니다.

Amazon Keyspaces 시스템 및 사용자 테이블에 액세스 권한을 부여하는 IAM 정책의 예는 [Amazon Keyspaces 테이블에 액세스](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-one-table) 섹션을 참조하세요.

IAM과 관련된 문제 해결 섹션을 검토하려면 [Amazon Keyspaces ID 및 액세스 문제 해결](security_iam_troubleshoot.md) 섹션을 참조하세요.

#### cqlsh를 사용하여 데이터를 가져오려고 하는데 Amazon Keyspaces 테이블에 대한 연결이 끊어졌습니다.
<a name="troubleshooting.connection.import"></a>

**cqlsh를 사용하여 Amazon Keyspaces에 데이터를 업로드하려고 하지만 연결 오류를 수신합니다.**

cqlsh 클라이언트가 서버로부터 유형에 상관없이 연속으로 세 개의 오류를 수신한 후 Amazon Keyspaces에 대한 연결이 실패합니다. cqlsh 클라이언트가 실패하고 다음 메시지가 표시됩니다.

```
Failed to import 1 rows: NoHostAvailable - , will retry later, attempt 3 of 100
```

이 오류를 해결하려면 가져올 데이터가 Amazon Keyspaces의 테이블 스키마와 일치하는지 확인해야 합니다. 가져오기 파일에 구문 분석 오류가 있는지 검토합니다. 오류를 격리하는 INSERT 문을 사용하여 단일 데이터 행을 사용해 볼 수 있습니다.

클라이언트는 자동으로 연결 재설정을 시도합니다.