서비스 관리하기

Snowpark Container Services를 사용하면 컨테이너화된 애플리케이션을 쉽게 배포, 관리, 확장할 수 있습니다. 애플리케이션 이미지를 계정의 리포지토리에 업로드한 후 애플리케이션 컨테이너를 서비스 또는 작업으로 실행합니다. 이 항목에서는 서비스 작업에 대해 설명합니다.

서비스는 웹 서비스처럼 장기간 실행되며, 저절로 종료되지 않습니다. Snowflake는 실행 중인 서비스를 관리합니다. 예를 들어, 어떤 이유로든 서비스 컨테이너가 종료되면 Snowflake가 해당 컨테이너를 다시 시작하여 서비스가 중단 없이 실행되도록 합니다. 더 많은 컴퓨팅 성능과 같이, 서비스에 더 많은 리소스가 필요한 경우 Snowflake는 컴퓨팅 풀에 노드를 추가로 프로비저닝합니다.

컨테이너 서비스 작업에 대한 자세한 내용은 Snowpark Container Services: 서비스 사용하기 섹션을 참조하십시오.

이 항목에서는 서비스를 사용하여 다음 작업을 수행하는 방법을 보여줍니다.

나열 또는 삭제와 같은 일반적인 작업의 경우 Snowflake 오브젝트 관리하기 의 설명과 같이 Snowflake CLI 는 snow object 명령을 사용합니다.

Snowpark Container Services 서비스 만들기

Snowpark 컨테이너 서비스에는 다음이 필요합니다.

  • 컴퓨팅 풀: Snowflake는 지정된 컴퓨팅 풀에서 서비스를 실행합니다.

  • 서비스 사양 파일: 이 사양은 Snowflake에 서비스를 구성하고 실행하는 데 필요한 정보를 제공합니다.

서비스를 생성하려면 다음과 유사한 명령을 입력합니다.

snow spcs service create "job_1" --compute-pool "pool_1" --spec-path "/some-dir/spec_file.yaml"
Copy

자세한 내용은 Snowflake 오브젝트 관리하기 섹션을 참조하십시오.

서비스 일시 중단 및 재개

명명된 서비스를 일시 중단하려면 다음과 유사한 명령을 입력합니다.

snow spcs service suspend echo_service
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

중단된 서비스를 다시 시작하려면 다음과 유사한 명령을 입력합니다.

snow spcs service resume echo_service
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

서비스에 대한 상태 정보 가져오기

참고

현재 역할의 상태를 가져오려면 서비스에 대한 MONITOR 권한이 있어야 합니다.

모든 서비스 나열하기

snow spcs service list 명령은 PENDING 또는 RUNNING 등 서비스의 런타임 상태와 업그레이드 상태를 포함한 모든 서비스에 대한 개요를 반환합니다. 모든 서비스의 상태를 확인하려면 다음과 유사한 명령을 입력합니다.

snow spcs service list
Copy
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|        |        |        |        |        |        |        |        |        |        |        |         | extern |         |        |         |        |         |        |        |         |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         | al_acc |         |        |         |        |         |        |        |         |        | managin | managi |
|        |        | databa |        |        |        |        | curren | target | min_in | max_in |         | ess_in |         |        |         |        | owner_r | query_ |        |         |        | g_objec | ng_obj |
|        |        | se_nam | schema |        | comput | dns_na | t_inst | _insta | stance | stance | auto_re | tegrat | created | update | resumed | commen | ole_typ | wareho |        | spec_di | is_upg | t_domai | ect_na |
| name   | status | e      | _name  | owner  | e_pool | me     | ances  | nces   | s      | s      | sume    | ions   | _on     | d_on   | _on     | t      | e       | use    | is_job | gest    | rading | n       | me     |
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+---------+--------+---------+--------+---------+--------+---------+--------+--------+---------+--------+---------+--------|
| ECHO_S | RUNNIN | TEST00 | TEST_S | SYSADM | TUTORI | echo-s | 1      | 1      | 1      | 1      | true    | None   | 2024-10 | 2024-1 | None    | This   | ROLE    | COMPUT | false  | 52e62d1 | false  | None    | None   |
| ERVICE | G      | _DB    | CHEMA  | IN     | AL_COM | ervice |        |        |        |        |         |        | -16     | 0-16   |         | is a   |         | E_WH   |        | f19c720 |        |         |        |
|        |        |        |        |        | PUTE_P | .imhd. |        |        |        |        |         |        | 15:09:3 | 15:09: |         | test   |         |        |        | 6b5f4ef |        |         |        |
|        |        |        |        |        | OOL    | svc.sp |        |        |        |        |         |        | 0.49300 | 31.905 |         | servic |         |        |        | c069557 |        |         |        |
|        |        |        |        |        |        | cs.int |        |        |        |        |         |        | 0-07:00 | 000-07 |         | e      |         |        |        | 8b6c2b3 |        |         |        |
|        |        |        |        |        |        | ernal  |        |        |        |        |         |        |         | :00    |         |        |         |        |        | 806ad76 |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 67d78cc |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | ce8b6ed |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 6501a8a |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 3       |        |         |        |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

명명된 서비스의 상태 가져오기

개별 서비스의 상태를 확인하려면 다음과 유사한 snow spcs service describe 명령을 입력합니다.

snow spcs service describe echo_service
Copy
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|        |        |        |        |        |        |        |        |        |        |        |         | extern |         |        |         |        |         |        |        |         |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         | al_acc |         |        |         |        |         |        |        |         |        | managin | managi |
|        |        | databa |        |        |        |        | curren | target | min_in | max_in |         | ess_in |         |        |         |        | owner_r | query_ |        |         |        | g_objec | ng_obj |
|        |        | se_nam | schema |        | comput | dns_na | t_inst | _insta | stance | stance | auto_re | tegrat | created | update | resumed | commen | ole_typ | wareho |        | spec_di | is_upg | t_domai | ect_na |
| name   | status | e      | _name  | owner  | e_pool | me     | ances  | nces   | s      | s      | sume    | ions   | _on     | d_on   | _on     | t      | e       | use    | is_job | gest    | rading | n       | me     |
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+---------+--------+---------+--------+---------+--------+---------+--------+--------+---------+--------+---------+--------|
| ECHO_S | RUNNIN | TEST00 | TEST_S | SYSADM | TUTORI | echo-s | 1      | 1      | 1      | 1      | true    | None   | 2024-10 | 2024-1 | None    | This   | ROLE    | COMPUT | false  | 52e62d1 | false  | None    | None   |
| ERVICE | G      | _DB    | CHEMA  | IN     | AL_COM | ervice |        |        |        |        |         |        | -16     | 0-16   |         | is a   |         | E_WH   |        | f19c720 |        |         |        |
|        |        |        |        |        | PUTE_P | .imhd. |        |        |        |        |         |        | 15:09:3 | 15:09: |         | test   |         |        |        | 6b5f4ef |        |         |        |
|        |        |        |        |        | OOL    | svc.sp |        |        |        |        |         |        | 0.49300 | 31.905 |         | servic |         |        |        | c069557 |        |         |        |
|        |        |        |        |        |        | cs.int |        |        |        |        |         |        | 0-07:00 | 000-07 |         | e      |         |        |        | 8b6c2b3 |        |         |        |
|        |        |        |        |        |        | ernal  |        |        |        |        |         |        |         | :00    |         |        |         |        |        | 806ad76 |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 67d78cc |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | ce8b6ed |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 6501a8a |        |         |        |
|        |        |        |        |        |        |        |        |        |        |        |         |        |         |        |         |        |         |        |        | 3       |        |         |        |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

인스턴스 및 컨테이너 나열

서비스의 인스턴스와 컨테이너를 나열하려면 각각 snow spcs service list-instancessnow spcs service list-containers 명령을 사용합니다.

echo_service 서비스에서 인스턴스 목록을 가져오려면 다음 명령을 입력합니다.

snow spcs service list-instances echo_service
Copy
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| database_name | schema_name | service_name | instance_id | status | spec_digest                                                      | creation_time        | start_time           |
|---------------+-------------+--------------+-------------+--------+------------------------------------------------------------------+----------------------+----------------------|
| TEST00_DB     | TEST_SCHEMA | ECHO_SERVICE | 0           | READY  | 336c065739dd2b96e770f01804affdc7810e6df68a23b23052d851627abfbdf9 | 2024-10-10T06:06:30Z | 2024-10-10T06:06:30Z |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

echo_service 서비스에서 컨테이너 목록을 가져오려면 다음 명령을 입력합니다.

snow spcs service list-containers echo_service
Copy
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| database_name | schema_name | service_name | instance_id | container_name | status | message | image_name                                | image_digest                              | restart_count | start_time           |
|---------------+-------------+--------------+-------------+----------------+--------+---------+-------------------------------------------+-------------------------------------------+---------------+----------------------|
| TEST00_DB     | TEST_SCHEMA | ECHO_SERVICE | 0           | main           | READY  | Running | org-test-account-00.registry.registry.sno | sha256:06c3d54edc24925abe398eda70d37eb6b8 | 0             | 2024-10-16T22:09:35Z |
|               |             |              |             |                |        |         | wflakecomputing.com/test00_db/test_schema | 7b1c4dd6211317592764e1e7d94498            |               |                      |
|               |             |              |             |                |        |         | /test00_repo/echo_service:latest          |                                           |               |                      |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

서비스의 엔드포인트 나열

명명된 서비스의 엔드포인트를 나열하려면 다음과 유사한 명령을 입력합니다.

snow spcs service list-endpoints echo_service
Copy
+--------------+------+----------+-----------------+-----------------------------------------+
| name         | port | protocol | ingress_enabled | ingress_url                             |
|--------------+------+----------+-----------------+-----------------------------------------|
| echoendpoint | 8000 | TCP      | true            | org-id-acct-id.snowflakecomputing.app   |
+--------------+------+----------+-----------------+-----------------------------------------+

서비스와 연관된 서비스 역할을 나열합니다.

서비스 사양에서 서비스 역할 및 권한을 정의하여 서비스에 의해 노출된 개별 엔드포인트에 대한 액세스를 관리할 수 있습니다. 서비스 역할을 사용하는 방법에 대한 자세한 내용은 GRANT SERVICE ROLE 섹션을 참조하십시오.

서비스에 대해 생성된 서비스 역할 목록을 가져오려면 다음과 같이 snow spcs service list-roles 명령을 사용합니다.

snow spcs service list-roles my_service
Copy
+------------------------------------------------------------------+
| created_on                       | name                | comment |
|----------------------------------+---------------------+---------|
| 2024-10-09 16:48:52.980000-07:00 | ALL_ENDPOINTS_USAGE | None    |
+------------------------------------------------------------------+

서비스의 속성 또는 매개 변수 설정 및 설정 취소

참고

속성을 설정하려면 현재 역할에 서비스에 대한 OPERATE 권한이 있어야 합니다.

서비스의 속성 또는 매개 변수를 설정하려면 다음과 유사한 명령을 입력합니다.

snow spcs service set echo_service --min-instances 2 --max-instances 4
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

서비스의 속성 또는 매개 변수를 기본값으로 재설정하려면 다음과 유사한 명령을 입력합니다.

snow spcs compute-pool unset tutorial_compute_pool --auto-resume
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+

명명된 서비스에 대한 로그 표시

참고

로그를 표시하려면 현재 역할에 서비스에 대한 MONITOR 권한이 있어야 합니다.

명명된 서비스에 대한 로컬 로그를 표시하려면 다음과 유사한 명령을 입력합니다.

snow spcs service logs "service_1" --container-name "container_1" --instance-id "0"
Copy

명명된 서비스 업그레이드

참고

현재 역할은 서비스에 대한 OPERATE 권한이 있어야 업그레이드할 수 있습니다.

명명된 서비스를 업그레이드하려면 다음과 유사한 명령을 입력합니다.

snow spcs service upgrade echo_service --spec-path spec.yml
Copy
+-------------------------------------------+
| key    | value                            |
|--------+----------------------------------|
| status | Statement executed successfully. |
+-------------------------------------------+