Storage Transfer Service ์์ด์ ํธ๋ Open Container Initiative (OCI) ์ปจํ ์ด๋ ๋ด์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก, ํ์ผ ์์คํ ์ด๋ S3 ํธํ ์คํ ๋ฆฌ์ง์ ๊ด๋ จ๋ ์ ์ก์ ์ํด Storage Transfer Service์ ์กฐ์จ๋ฉ๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก Storage Transfer Service๋ Docker๋ฅผ ์ฌ์ฉํ์ฌ OCI ์ปจํ
์ด๋๋ฅผ ๋น๋ํ๊ณ ์คํํฉ๋๋ค.
Storage Transfer Service๋ ์ปจํ
์ด๋ ๊ด๋ฆฌ๋ฅผ ์ํด Podman๋ ์ง์ํฉ๋๋ค. Podman์ ์ฌ์ฉํ๋ ค๋ฉด podman run
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
์ ์ก์ด ํ์ผ ์์คํ ์ด๋ S3 ํธํ ์คํ ๋ฆฌ์ง์ ๊ด๋ จ๋์ง ์์ผ๋ฉด ์์ด์ ํธ๋ฅผ ์ค์ ํ ํ์๊ฐ ์์ต๋๋ค.
์ด ๋ฌธ์์์๋ ์๋ฒ์์ ์ ์ก ์์ด์ ํธ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
๊ฐ์
์์ด์ ํธ ํ๋ก์ธ์ค๋ ๋์ ์ ๋๋ค. ์ ์ก์ ์คํํ๋ ๋์ ์์ด์ ํธ๋ฅผ ์ถ๊ฐํ์ฌ ์ฑ๋ฅ์ ํฅ์ํ ์ ์์ต๋๋ค. ์๋ก ์์๋ ์์ด์ ํธ๋ ํ ๋น๋ ์์ด์ ํธ ํ์ ์ฐธ์ฌํ์ฌ ๊ธฐ์กด ์ ์ก์์ ์์ ์ ์ํํฉ๋๋ค. ์ด๋ฅผ ํตํด ์คํ ์ค์ธ ์์ด์ ํธ ์๋ฅผ ์กฐ์ ํ๊ฑฐ๋ ์ ์ก ์ฑ๋ฅ์ ๋ง์ถฐ ์ ์ก ์์๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์์ด์ ํธ ํ๋ก์ธ์ค๋ ๋ด๊ฒฐํจ์ฑ ์ง๋จ์ ๋๋ค. ํ ์์ด์ ํธ์ ์คํ์ด ์ค์ง๋๋ฉด ๋๋จธ์ง ์์ด์ ํธ๋ ๊ณ์ ์๋ํฉ๋๋ค. ๋ชจ๋ ์์ด์ ํธ๊ฐ ์ค์ง๋๋ฉด ์ ์์ด์ ํธ๋ฅผ ์ถ๊ฐํ ๋ ์์ด์ ํธ๊ฐ ์ค์ง๋ ๊ณณ์์ ์ ์ก์ด ๋ค์ ์์๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์์ด์ ํธ ๋ชจ๋ํฐ๋ง, ์ ์ก ์ฌ์๋, ๋ณต๊ตฌ ๋ก์ง ๊ตฌํ์ ํผํ ์ ์์ต๋๋ค. Google Kubernetes Engine๊ณผ ์์ด์ ํธ๋ฅผ ์กฐ์ ํ์ฌ ์ ์ก ๋ค์ดํ์ ์์ด ์์ด์ ํธ ํ์ ํจ์น, ์ด์ , ๋์ ํ์ฅํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด ๋ ์์ด์ ํธ๊ฐ ์คํ๋๋ ๋์ ๋ ๊ฐ์ ์ ์ก์ ์ ์ถํฉ๋๋ค. ๋จธ์ ์ฌ๋ถํ ๋๋ ์ด์์ฒด์ ํจ์น๋ก ์ธํด ์์ด์ ํธ ์ค ํ๋๊ฐ ์ค์ง๋๋ฉด ๋๋จธ์ง ์์ด์ ํธ๋ ๊ณ์ ์๋ํฉ๋๋ค. ๋ ์ ์ก์ ๊ณ์ ์คํ ์ค์ด์ง๋ง ๋จ์ผ ์์ด์ ํธ์์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ํ๋ฏ๋ก ์๋๊ฐ ๋๋ฆฝ๋๋ค. ๋๋จธ์ง ์์ด์ ํธ๋ ์ค์ง๋ ๊ฒฝ์ฐ ์คํ ์ค์ธ ์์ด์ ํธ๊ฐ ์์ผ๋ฏ๋ก ๋ชจ๋ ์ ์ก์ด ์ค์ง๋ฉ๋๋ค. ์์ด์ ํธ ํ๋ก์ธ์ค๋ฅผ ๋ค์ ์์ํ๋ฉด ์ค๋จ๋ ์ง์ ๋ถํฐ ์ ์ก์ด ๋ค์ ์์๋ฉ๋๋ค.
์์ด์ ํธ ํ๋ก์ธ์ค๋ ํ์ ์ํฉ๋๋ค. ์ ์ฒด์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณ๋ ฌ๋ก ์ด๋ํฉ๋๋ค. ๋ฐ๋ผ์ ํ์ ์๋ ๋ชจ๋ ์์ด์ ํธ๋ ์ ์กํ๋ ค๋ ๋ชจ๋ ๋ฐ์ดํฐ ์์ค์ ๋ํด ๋์ผํ ์ก์ธ์ค ๊ถํ์ ๊ฐ์ง๊ณ ์์ด์ผ ํฉ๋๋ค.
์๋ฅผ ๋ค์ด ํน์ ํ์ผ ์์คํ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ค๋ฉด ์์ด์ ํธ ํ์์ ์์ด์ ํธ๋ฅผ ํธ์คํ ํ๋ ๋ชจ๋ ๋จธ์ ์ ํ์ผ ์์คํ ์ ๋ง์ดํธํด์ผ ํฉ๋๋ค. ํ์ ์ผ๋ถ ์์ด์ ํธ๋ ๋ฐ์ดํฐ ์์ค์ ์ฐ๊ฒฐํ ์ ์์ง๋ง ๋ค๋ฅธ ์์ด์ ํธ๋ ์ฐ๊ฒฐํ ์ ์๋ ๊ฒฝ์ฐ ํด๋น ๋ฐ์ดํฐ ์์ค์์ ์ ์กํ ์ ์์ต๋๋ค.
์์ํ๊ธฐ ์ ์
์ ์ก์ ๊ตฌ์ฑํ๊ธฐ ์ ์ ์ฌ์ฉ์ ๋ฐ ์๋น์ค ๊ณ์ ์ ๋ํ ์ก์ธ์ค๋ฅผ ๊ตฌ์ฑํ๋์ง ํ์ธํฉ๋๋ค.
gcloud
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ ค๋ ๊ฒฝ์ฐ gcloud CLI๋ฅผ ์ค์นํฉ๋๋ค.
์ ์ก ์์ด์ ํธ ์ค์น ๋ฐ ์คํ
์์ด์ ํธ ํ๋ณ๋ก ์ต์ 3๊ฐ์ ์์ด์ ํธ๋ฅผ ์ค์นํ๋ ๊ฒ์ด ์ข์ต๋๋ค(๋ณ๋์ ๋จธ์ ์ ์ค์นํ๋ ๊ฒ์ด ์ด์์ ์). ์คํํ ์์ด์ ํธ ์ ๊ฒฐ์ ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ ์ก ์์ด์ ํธ ์ฑ๋ฅ ๊ทน๋ํ๋ฅผ ์ฐธ์กฐํ์ธ์.
์์ด์ ํธ ID ํ๋ฆฌํฝ์ค์ ๊ฐ์ธ ์๋ณ ์ ๋ณด(PII) ๋๋ ๋ณด์ ๋ฐ์ดํฐ์ ๊ฐ์ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ํฌํจํ์ง ๋ง์ธ์. ๋ฆฌ์์ค ์ด๋ฆ์ ๋ค๋ฅธ Google Cloud ๋ฆฌ์์ค ์ด๋ฆ์ผ๋ก ์ ํ๋ ์ ์์ผ๋ฉฐ ํ๋ก์ ํธ ์ธ๋ถ์ Google ๋ด๋ถ ์์คํ ์ ๋ ธ์ถ๋ ์ ์์ต๋๋ค.์ ์ก ์์ด์ ํธ๋ฅผ ์ค์นํ๊ณ ์คํํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์
Google Cloud ์ฝ์์์ ์์ด์ ํธ ํ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์ ์์ด์ ํธ๋ฅผ ์ถ๊ฐํ ์์ด์ ํธ ํ์ ์ ํํฉ๋๋ค.
์์ด์ ํธ ์ค์น๋ฅผ ํด๋ฆญํฉ๋๋ค.
์๋ด๋ฅผ ๋ฐ๋ผ ์์ด์ ํธ๋ฅผ ์ค์น ๋ฐ ์คํํฉ๋๋ค.
์์ด์ ํธ์ ๋ช ๋ น์ค ์ต์ ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์์ด์ ํธ ๋ช ๋ น์ค ์ต์ ์ ์ฐธ์กฐํ์ธ์.
gcloud CLI
gcloud CLI๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ ์ด์์ ์์ด์ ํธ๋ฅผ ์ค์นํ๋ ค๋ฉด gcloud transfer agents install
์ ์คํํฉ๋๋ค.
gcloud transfer agents install --pool=POOL_NAME --count=NUM_AGENTS \
--mount-directories=MOUNT_DIRECTORIES
์ด ๋๊ตฌ๋ ์์ด์ ํธ๋ฅผ ์ค์นํ๋ ๋ฐ ํ์ํ ๋จ๊ณ๋ฅผ ์๋ดํฉ๋๋ค. ์ด ๋ช
๋ น์ด๋ POOL_NAME์ผ๋ก ์ง์ ๋ ํ ์ด๋ฆ์ ๋งคํ๋ NUM_AGENTS ์์ด์ ํธ๋ฅผ ๋จธ์ ์ ์ค์นํ๊ณ gcloud
์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ธ์ฆํฉ๋๋ค. ํ ์ด๋ฆ์ ์์ด์ผ ํ๋ฉฐ, ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐํ๋ฉ๋๋ค.
--mount-directories
ํ๋๊ทธ๋ ์ ํ์ฌํญ์ด์ง๋ง ์ ๊ทน ๊ถ์ฅ๋ฉ๋๋ค. ๊ฐ์ ์์ด์ ํธ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ ํ์ผ ์์คํ
์ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋๋ ํฐ๋ฆฌ ๋ชฉ๋ก์
๋๋ค.
์ด ํ๋๊ทธ๋ฅผ ์๋ตํ๋ฉด ์ ์ฒด ํ์ผ ์์คํ
์ด ์์ด์ ํธ ์ปจํ
์ด๋์ ๋ง์ดํธ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ gcloud
์ฐธ์กฐ๋ฅผ ์ฝ์ด๋ณด์ธ์.
S3 ํธํ ์์ค
S3 ํธํ ์์ค์ ์ฌ์ฉํ๋๋ก ์์ด์ ํธ๋ฅผ ์ค์นํ ๋๋ AWS_ACCESS_KEY_ID
๋ฐ AWS_SECRET_ACCESS_KEY
์ ๊ฐ๊ณผ ๊ฐ์ ํ๊ฒฝ ๋ณ์๋ก AWS ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ ๊ณตํ๊ฑฐ๋ ์์คํ
๊ตฌ์ฑ ํ์ผ์ ์ ์ฅ๋ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
export AWS_ACCESS_KEY_ID=ID
export AWS_SECRET_ACCESS_KEY=SECRET
gcloud transfer agents install --pool=POOL_NAME \
--creds-file=/relative/path/to/service-account-key.json
์๋น์ค ๊ณ์ ํค ์ฌ์ฉ
์๋น์ค ๊ณ์ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ๋ง๋ค๋ ค๋ฉด --creds-file
์ต์
์ ์ฌ์ฉํฉ๋๋ค.
gcloud transfer agents install --pool=POOL_NAME --count=NUM_AGENTS \
--creds-file=/relative/path/to/service-account-key.json
์ถ๊ฐ ์ ๋ณด
์ ํ์ ์ธ ํ๋๊ทธ์ ์ ์ฒด ๋ชฉ๋ก์ ๋ณด๋ ค๋ฉด gcloud transfer agents install --help
๋ฅผ ์คํํ๊ฑฐ๋ gcloud transfer
์ฐธ์กฐ๋ฅผ ์ฝ์ผ์ธ์.
Docker
Docker๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ค์นํ๊ธฐ ์ ์ ์๋ด์ ๋ฐ๋ผ Docker๋ฅผ ์ค์นํฉ๋๋ค.
docker run
๋ช
๋ น์ด๋ ์์ด์ ํธ ํ๋๋ฅผ ์ค์นํฉ๋๋ค. ํ์ ์์ด์ ํธ ์๋ฅผ ๋๋ฆฌ๋ ค๋ฉด ์ด ๋ช
๋ น์ด๋ฅผ ํ์ํ ํ์๋งํผ ๋ค์ ์คํํฉ๋๋ค.
์์ด์ ํธ๋ฅผ ์ค์นํ ๋ gcloud
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ ์๋น์ค ๊ณ์ ์ ์ฌ์ฉํ์ฌ ์ธ์ฆํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด
Docker ์ปจํ
์ด๋์์ gcloud
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ก ์ธ์ฆํ๋๋ก ํ๋ ค๋ฉด ๋ค์ ๋ช
๋ น์ด๋ฅผ ์คํํด ์ ํ๋ฆฌ์ผ์ด์
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๊ฐ ์๋ ํ์ผ์ ํฌํจํ Docker ๋ณผ๋ฅจ์ ๋ง๋์ธ์.
sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login
๊ทธ๋ฐ ํ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ค์นํ๊ณ --volumes-from
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ gcloud-config
์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ณผ๋ฅจ์ ๋ง์ดํธํฉ๋๋ค.
sudo docker run --ulimit memlock=64000000 -d --rm \ --volumes-from gcloud-config \ -v HOST_DIRECTORY:CONTAINER_DIRECTORY \ gcr.io/cloud-ingest/tsop-agent:latest \ --project-id=PROJECT_ID \ --hostname=$(hostname) \ --agent-pool=POOL_NAME
์๋น์ค ๊ณ์ ์ธ์ฆ
์๋น์ค ๊ณ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ก ์์ด์ ํธ docker run
์ ์ค์นํ๊ณ ์คํํ๋ ค๋ฉด --creds-file
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ JSON ํ์์ ์๋น์ค ๊ณ์ ํค ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค.
๊ฒฝ๋ก์๋ /transfer_root
๋ฌธ์์ด์ด ํ๋ฆฌํฝ์ค๋ก ์ถ๊ฐ๋์ด์ผ ํฉ๋๋ค.
์๋น์ค ๊ณ์ ํค์ ๋ํ ์์ธํ ๋ด์ฉ์ ์๋น์ค ๊ณ์ ํค ์์ฑ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ฐธ์กฐํ์ธ์.
sudo docker run --ulimit memlock=64000000 -d --rm \ -v HOST_DIRECTORY:CONTAINER_DIRECTORY \ -v PATH/TO/KEY.JSON:/etc/gcloud/key.json:ro \ gcr.io/cloud-ingest/tsop-agent:latest \ --project-id=PROJECT_ID \ --creds-file=/etc/gcloud/key.json \ --hostname=$(hostname) \ --agent-pool=POOL_NAME
์ต์ ๋ฐ ํ๋๊ทธ
์ ์์์ ๋ณ์๋ฅผ ๋ค์ ์ ๋ณด๋ก ๋ฐ๊ฟ๋๋ค.
HOST_DIRECTORY
๋ ๋ณต์ฌํ๋ ค๋ ํธ์คํธ ๋จธ์ ์ ๋๋ ํฐ๋ฆฌ์ ๋๋ค.-v
ํ๋๊ทธ๋ฅผ ๋ ๊ฐ ์ด์ ์ฌ์ฉํ์ฌ ๋ณต์ฌํ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ถ๊ฐ ์ง์ ํ ์ ์์ต๋๋ค.CONTAINER_DIRECTORY
๋ ์์ด์ ํธ ์ปจํ ์ด๋ ๋ด์์ ๋งคํ๋ ๋๋ ํฐ๋ฆฌ์ ๋๋ค.HOST_DIRECTORY
์ ๊ฐ์์ผ ํฉ๋๋ค.PROJECT_ID
๋ ์ ์ก์ ํธ์คํ ํ๋ ํ๋ก์ ํธ ID์ ๋๋ค.POOL_NAME
์ ์ด ์์ด์ ํธ๋ฅผ ์ค์นํ ์์ด์ ํธ ํ์ ์ด๋ฆ์ ๋๋ค. ์ด ํ๋๊ทธ๋ฅผ ์๋ตํ๋ฉด ์์ด์ ํธ๊ฐ ํ๋ก์ ํธ์transfer_service_default
ํ์ ์ค์น๋ฉ๋๋ค.
docker run
๋ช
๋ น์ด๋ ์ถ๊ฐ ํ๋๊ทธ๋ฅผ ์ง์ํฉ๋๋ค.
--enable-mount-directory
๋ ์ ์ฒด ํ์ผ ์์คํ ์ ์ปจํ ์ด๋์/transfer_root
๋๋ ํฐ๋ฆฌ ์๋์ ๋ง์ดํธํฉ๋๋ค.--enable-mount-directory
๊ฐ ์ง์ ๋๋ฉด-v
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๋ ๋๋ ํฐ๋ฆฌ ์ ํ์ฌํญ์ด ์ ์ฉ๋์ง ์์ต๋๋ค.--creds-file=/etc/gcloud/key.json
์ ์ปจํ ์ด๋์ JSON ํ์ ์๋น์ค ๊ณ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ํ์ผ๋ก ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค. ์ด ํ์ผ์ ๋ช ๋ น์ด์-v <var>HOST_PATH/TO/KEY.JSON</var>:/etc/gcloud/key.json:ro
ํ๋๊ทธ๋ก ๋ง์ดํธ๋ฉ๋๋ค.--enable-s3
์ ์ด ์์ด์ ํธ๊ฐ S3 ํธํ ์คํ ๋ฆฌ์ง์ ์ ์ก์ ์ฌ์ฉ๋๋๋ก ์ง์ ํฉ๋๋ค. ์ด ์ต์ ์ผ๋ก ์ค์น๋ ์์ด์ ํธ๋ POSIX ํ์ผ ์์คํ ์ ์ ์ก์ ์ฌ์ฉํ ์ ์์ต๋๋ค.์ ์ก์ด AWS S3 ๋๋ S3 ํธํ ์คํ ๋ฆฌ์ง์์ ์จ ๊ฒฝ์ฐ ํ๊ฒฝ ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ก์ธ์ค ํค ID์ ๋ณด์ ๋น๋ฐํค๋ฅผ ์ ๋ฌํฉ๋๋ค.
-e AWS_ACCESS_KEY_ID=AWS_ACCESS_KEY_ID \ -e AWS_SECRET_ACCESS_KEY=AWS_SECRET_ACCESS_KEY
--gcs-api-endpoint=storage.LOCATION.rep.googleapis.com
์ Cloud Storage ๋ฆฌ์ ์๋ํฌ์ธํธ๋ฅผ ์ง์ ํฉ๋๋ค. Cloud Storage ๋ฆฌ์ ์๋ํฌ์ธํธ๊ฐ ์ง์ ๋๋ฉด ์์ด์ ํธ๋ฅผ ํตํ ๋ชจ๋ ๋ฐ์ดํฐ ์ ์ก ํธ๋ํฝ์ด ํด๋น Google Cloud ๋ฆฌ์ ๋ด์ ์ ์ง๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ฆฌ์ ์๋ํฌ์ธํธ๋ฅผ ์ฐธ๊ณ ํ์ธ์.--env HTTPS_PROXY=PROXY
๋ ๋คํธ์ํฌ์์ ์ ๋ฌ ํ๋ก์๋ฅผ ์ง์ ํฉ๋๋ค.PROXY
๊ฐ์ ํ๋ก์ ์๋ฒ์ HTTP URL ๋ฐ ํฌํธ์ ๋๋ค. TLS ์ํธํ์์ ์ด์ค ๋ํ ์์ฒญ์ด ๋ฐ์ํ์ง ์๋๋ก HTTPS URL์ด ์๋ HTTP URL์ ์ง์ ํด์ผ ํฉ๋๋ค. ์ด์ค ๋ํ ์์ฒญ์ ํ๋ก์ ์๋ฒ๊ฐ ์ ํจํ ์์๋ฐ์ด๋ ์์ฒญ์ ๋ณด๋ด์ง ๋ชปํ๊ฒ ํฉ๋๋ค.--agent-id-prefix=ID_PREFIX
๋ Google Cloud ์ฝ์์์ ์์ด์ ํธ ๋๋ ๋จธ์ ์ ์๋ณํ๋ ๋ฐ ์ ์ฉํ๋๋ก ์์ด์ ํธ ID ์์ ์ถ๊ฐ๋๋ ์ ํ์ ํ๋ฆฌํฝ์ค๋ฅผ ์ง์ ํฉ๋๋ค. ํ๋ฆฌํฝ์ค๊ฐ ์ฌ์ฉ๋๋ฉด ์์ด์ ํธ ID ํ์์prefix + hostname + Docker container ID
๋ก ์ง์ ๋ฉ๋๋ค.--log-dir=LOGS_DIRECTORY
๋ ์์ด์ ํธ์์ ๋ก๊ทธ๋ฅผ ์ฐ๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ์์ ํฉ๋๋ค. ๊ธฐ๋ณธ ๋๋ ํฐ๋ฆฌ๋/tmp/
์ ๋๋ค.--enable_mount_directory
๋ฅผ ์ง์ ํ์ง ์์์ผ๋ฉด ์ด ๊ฒฝ๋ก์/transfer_root
๋ฅผ ํ๋ฆฌํฝ์ค๋ก ์ถ๊ฐํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด/transfer_root/logs
์ ๋๋ค.--max-physical-mem=MAX_MEMORY
: ์์ด์ ํธ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ต๋ 8GiB ์์คํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ด ์ฌ์ฉ์ ํ๊ฒฝ์ ๋ง์ง ์์ผ๋ฉด ๋ค์ ํ์์ผ๋ก ๊ด๋ จ ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ์ง์ ํ ์ ์์ต๋๋ค.max-physical-mem
๊ฐ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ค์ 6g
6GB 6gb
6GB 6GiB
6GB --network=DOCKER_NETWORK
: ์ด ์ปจํ ์ด๋์ docker network๋ฅผ ์ง์ ํฉ๋๋ค.--network=host
๋ฅผ ์ง์ ํ๋ฉด ๋คํธ์ํฌ ์ค๋ฒํค๋๋ฅผ ์ค์ฌ ์ฑ๋ฅ์ ๊ฐ์ ํ ์ ์์ง๋ง ์ปจํ ์ด๋๊ฐ ํธ์คํธ์ ๋คํธ์ํฌ์ ๋ํ ์ ์ฒด ์ก์ธ์ค ๊ถํ์ ๊ฐ๊ฒ ๋ฉ๋๋ค.
Podman
Podman์ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ค์นํ๊ธฐ ์ ์ Podman์ ์ค์นํฉ๋๋ค.
sudo apt-get update
sudo apt-get -y install podman
์์ด์ ํธ๋ฅผ ์ค์นํ ๋ gcloud
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ ์๋น์ค ๊ณ์ ์ ์ฌ์ฉํ์ฌ ์ธ์ฆํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด
์์ด์ ํธ ์ปจํ ์ด๋์์ Google Cloud CLI ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ก ์ธ์ฆํ๋๋ก ํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๊ฐ ์๋ ํ์ผ์ ํฌํจํ ๋ณผ๋ฅจ์ ๋ง๋์ธ์.
gcloud auth print-access-token | podman login -u oauth2accesstoken --password-stdin gcr.io sudo podman pull gcr.io/google.com/cloudsdktool/google-cloud-cli:stable sudo podman run -ti --replace --name gcloud-config gcr.io/google.com/cloudsdktool/google-cloud-cli:stable gcloud auth application-default login
๊ทธ๋ฐ ํ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ด์ ํธ๋ฅผ ์ค์นํ๊ณ --volumes-from
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ gcloud-config
์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ณผ๋ฅจ์ ๋ง์ดํธํฉ๋๋ค.
์ด ๋ช
๋ น์ด๋ ์์ด์ ํธ ํ๋๋ฅผ ์ค์นํฉ๋๋ค. ํ์ ์์ด์ ํธ ์๋ฅผ ๋๋ฆฌ๋ ค๋ฉด ์ด ๋ช
๋ น์ด๋ฅผ ํ์ํ ํ์๋งํผ ๋ค์ ์คํํฉ๋๋ค.
sudo podman run --ulimit memlock=64000000 -d --rm \ --volumes-from gcloud-config \ -v HOST_DIRECTORY:CONTAINER_DIRECTORY \ gcr.io/cloud-ingest/tsop-agent:latest \ --project-id=PROJECT_ID \ --hostname=$(hostname) \ --agent-pool=POOL_NAME
์๋น์ค ๊ณ์ ์ธ์ฆ
์๋น์ค ๊ณ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ก ์์ด์ ํธ๋ฅผ ์ค์นํ๊ณ ์คํํ๋ ค๋ฉด JSON ํ์์ ์๋น์ค ๊ณ์ ํค๋ฅผ ์ปจํ ์ด๋์์ ์ฌ์ฉํ ์ ์๋๋ก ํด์ผ ํฉ๋๋ค. ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ํค์ ํธ์คํธ ์์น๋ฅผ ์ปจํ
์ด๋์ ๋ชจ๋ ๊ฒฝ๋ก์ ๋ง์ดํธํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
-v $HOME/.config/gcloud/credentials.json:/key.json:ro
์ด๋ ํค๊ฐ ํธ์คํธ ๋จธ์ ์$HOME/.config/gcloud/credentials.json
์ ์๊ณ ์ปจํ ์ด๋์/key.json
๋ก ๋ง์ดํธ๋์ด์ผ ํจ์ ์ง์ ํฉ๋๋ค.ro
๋ ํ์ผ์ด ์ปจํ ์ด๋์ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ ๊ณต๋จ์ ๋ํ๋ ๋๋ค. - ํค์ ์ปจํ
์ด๋ ๊ฒฝ๋ก๋ฅผ
--creds-file
์ ๊ฐ์ผ๋ก ์ง์ ํฉ๋๋ค. ์ด์ ๋จ๊ณ์ ์์์์--creds-file=/key.json
๋ฅผ ์ง์ ํฉ๋๋ค.
์๋น์ค ๊ณ์ ํค์ ๋ํ ์์ธํ ๋ด์ฉ์ ์๋น์ค ๊ณ์ ํค ์์ฑ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ฐธ์กฐํ์ธ์.
sudo podman run --ulimit memlock=64000000 -d --rm \ -v HOST_DIRECTORY:CONTAINER_DIRECTORY \ -v HOST_PATH/TO/KEY.JSON:/etc/gcloud/key.json:ro \ gcr.io/cloud-ingest/tsop-agent:latest \ --project-id=PROJECT_ID \ --creds-file=/etc/gcloud/key.json \ --hostname=$(hostname) \ --agent-pool=POOL_NAME
์ต์ ๋ฐ ํ๋๊ทธ
์ ์์์ ๋ณ์๋ฅผ ๋ค์ ์ ๋ณด๋ก ๋ฐ๊ฟ๋๋ค.
HOST_DIRECTORY
๋ ๋ณต์ฌํ๋ ค๋ ํธ์คํธ ๋จธ์ ์ ๋๋ ํฐ๋ฆฌ์ ๋๋ค.-v
ํ๋๊ทธ๋ฅผ ๋ ๊ฐ ์ด์ ์ฌ์ฉํ์ฌ ๋ณต์ฌํ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ถ๊ฐ ์ง์ ํ ์ ์์ต๋๋ค.CONTAINER_DIRECTORY
๋ ์์ด์ ํธ ์ปจํ ์ด๋ ๋ด์์ ๋งคํ๋ ๋๋ ํฐ๋ฆฌ์ ๋๋ค.HOST_DIRECTORY
์ ๊ฐ์์ผ ํฉ๋๋ค.PROJECT_ID
๋ ์ ์ก์ ํธ์คํ ํ๋ ํ๋ก์ ํธ ID์ ๋๋ค.POOL_NAME
์ ์ด ์์ด์ ํธ๋ฅผ ์ค์นํ ์์ด์ ํธ ํ์ ์ด๋ฆ์ ๋๋ค. ์ด ํ๋๊ทธ๋ฅผ ์๋ตํ๋ฉด ์์ด์ ํธ๊ฐ ํ๋ก์ ํธ์transfer_service_default
ํ์ ์ค์น๋ฉ๋๋ค.
podman run
๋ช
๋ น์ด๋ ์ถ๊ฐ ํ๋๊ทธ๋ฅผ ์ง์ํฉ๋๋ค.
--enable-mount-directory
๋ ์ ์ฒด ํ์ผ ์์คํ ์ ์ปจํ ์ด๋์/transfer_root
๋๋ ํฐ๋ฆฌ ์๋์ ๋ง์ดํธํฉ๋๋ค.--enable-mount-directory
๊ฐ ์ง์ ๋๋ฉด-v
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๋ ๋๋ ํฐ๋ฆฌ ์ ํ์ฌํญ์ด ์ ์ฉ๋์ง ์์ต๋๋ค.--creds-file=/etc/gcloud/key.json
์ ์ปจํ ์ด๋์ JSON ํ์ ์๋น์ค ๊ณ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ํ์ผ๋ก ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค. ์ด ํ์ผ์ ๋ช ๋ น์ด์-v <var>HOST_PATH/TO/KEY.JSON</var>:/etc/gcloud/key.json:ro
ํ๋๊ทธ๋ก ๋ง์ดํธ๋ฉ๋๋ค.--enable-s3
์ ์ด ์์ด์ ํธ๊ฐ S3 ํธํ ์คํ ๋ฆฌ์ง์ ์ ์ก์ ์ฌ์ฉ๋๋๋ก ์ง์ ํฉ๋๋ค. ์ด ์ต์ ์ผ๋ก ์ค์น๋ ์์ด์ ํธ๋ POSIX ํ์ผ ์์คํ ์ ์ ์ก์ ์ฌ์ฉํ ์ ์์ต๋๋ค.์ ์ก์ด AWS S3 ๋๋ S3 ํธํ ์คํ ๋ฆฌ์ง์์ ์จ ๊ฒฝ์ฐ ํ๊ฒฝ ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ก์ธ์ค ํค ID์ ๋ณด์ ๋น๋ฐํค๋ฅผ ์ ๋ฌํฉ๋๋ค.
-e AWS_ACCESS_KEY_ID=AWS_ACCESS_KEY_ID \ -e AWS_SECRET_ACCESS_KEY=AWS_SECRET_ACCESS_KEY ```
--env HTTPS_PROXY=PROXY
๋ ๋คํธ์ํฌ์์ ์ ๋ฌ ํ๋ก์๋ฅผ ์ง์ ํฉ๋๋ค.PROXY
๊ฐ์ ํ๋ก์ ์๋ฒ์ HTTP URL ๋ฐ ํฌํธ์ ๋๋ค. TLS ์ํธํ์์ ์ด์ค ๋ํ ์์ฒญ์ด ๋ฐ์ํ์ง ์๋๋ก HTTPS URL์ด ์๋ HTTP URL์ ์ง์ ํด์ผ ํฉ๋๋ค. ์ด์ค ๋ํ ์์ฒญ์ ํ๋ก์ ์๋ฒ๊ฐ ์ ํจํ ์์๋ฐ์ด๋ ์์ฒญ์ ๋ณด๋ด์ง ๋ชปํ๊ฒ ํฉ๋๋ค.--agent-id-prefix=ID_PREFIX
๋ Google Cloud ์ฝ์์์ ์์ด์ ํธ ๋๋ ๋จธ์ ์ ์๋ณํ๋ ๋ฐ ์ ์ฉํ๋๋ก ์์ด์ ํธ ID ์์ ์ถ๊ฐ๋๋ ์ ํ์ ํ๋ฆฌํฝ์ค๋ฅผ ์ง์ ํฉ๋๋ค. ํ๋ฆฌํฝ์ค๊ฐ ์ฌ์ฉ๋๋ฉด ์์ด์ ํธ ID ํ์์prefix + hostname + OCI container ID
๋ก ์ง์ ๋ฉ๋๋ค.--log-dir=LOGS_DIRECTORY
๋ ์์ด์ ํธ์์ ๋ก๊ทธ๋ฅผ ์ฐ๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ์์ ํฉ๋๋ค. ๊ธฐ๋ณธ ๋๋ ํฐ๋ฆฌ๋/tmp/
์ ๋๋ค.--enable_mount_directory
๋ฅผ ์ง์ ํ์ง ์์์ผ๋ฉด ์ด ๊ฒฝ๋ก์/transfer_root
๋ฅผ ํ๋ฆฌํฝ์ค๋ก ์ถ๊ฐํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด/transfer_root/logs
์ ๋๋ค.--max-physical-mem=MAX_MEMORY
: ์์ด์ ํธ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ต๋ 8GiB ์์คํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ด ์ฌ์ฉ์ ํ๊ฒฝ์ ๋ง์ง ์์ผ๋ฉด ๋ค์ ํ์์ผ๋ก ๊ด๋ จ ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ์ง์ ํ ์ ์์ต๋๋ค.max-physical-mem
๊ฐ์ต๋ ๋ฉ๋ชจ๋ฆฌ ์ค์ 6g
6GB 6gb
6GB 6GiB
6GB --network=DOCKER_NETWORK
: ์ด ์ปจํ ์ด๋์ docker network๋ฅผ ์ง์ ํฉ๋๋ค.--network=host
๋ฅผ ์ง์ ํ๋ฉด ๋คํธ์ํฌ ์ค๋ฒํค๋๋ฅผ ์ค์ฌ ์ฑ๋ฅ์ ๊ฐ์ ํ ์ ์์ง๋ง ์ปจํ ์ด๋๊ฐ ํธ์คํธ์ ๋คํธ์ํฌ์ ๋ํ ์ ์ฒด ์ก์ธ์ค ๊ถํ์ ๊ฐ๊ฒ ๋ฉ๋๋ค.
๋ฌธ์ ํด๊ฒฐ
SELinux ๊ตฌ์ฑ์์ ์ปจํ
์ด๋์ ๋ง์ดํธ๋ ๋ณผ๋ฅจ ์ฝํ
์ธ ์ ๋ผ๋ฒจ์ ๋ฐฐ์นํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ณผ๋ฅจ์ :Z
ํ๋๊ทธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
sudo podman run --ulimit memlock=64000000 -d --rm \
-v HOST_DIRECTORY:CONTAINER_DIRECTORY:Z \
-v HOST_PATH/TO/KEY.JSON:/etc/gcloud/key.json:ro \
gcr.io/cloud-ingest/tsop-agent:latest \
--project-id=PROJECT_ID \
--creds-file=/etc/gcloud/key.json:ro \
--hostname=$(hostname) \
--agent-pool=POOL_NAME
๋ผ๋ฒจ์ด ์์ผ๋ฉด ๋ณด์ ์์คํ ์์ ์ปจํ ์ด๋ ๋ด๋ถ์์ ์คํ๋๋ ํ๋ก์ธ์ค๊ฐ ์ฝํ ์ธ ๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๋๋ก ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Podman์ OS์์ ์ค์ ํ ๋ผ๋ฒจ์ ๋ณ๊ฒฝํ์ง ์์ต๋๋ค.
์์ด์ ํธ ์ฐ๊ฒฐ ํ์ธ
์์ด์ ํธ๊ฐ ์ฐ๊ฒฐ๋์๋์ง ํ์ธํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ ์์ด์ ํธ ํ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์์ด์ ํธ ํ์ด ์ฐ๊ฒฐ๋ ์์ด์ ํธ ์์ ํจ๊ป ํ์๋ฉ๋๋ค.
์ฐ๊ฒฐ๋ ์์ด์ ํธ์ ๋ํ ์ธ๋ถ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ์์ด์ ํธ ํ์ ์ ํํ์ธ์.
์์ด์ ํธ ์์ฑ ํ 10๋ถ ๋ด์ ์ ์์ด์ ํธ๊ฐ ์์ด์ ํธ ํ ํ์ด์ง์ ํ์๋์ง ์์ผ๋ฉด ์์ด์ ํธ๊ฐ ์ฐ๊ฒฐ๋์ง ์์์ ์ฐธ์กฐํ์ธ์.
์์ด์ ํธ ํ๋ ๋ชจ๋ํฐ๋ง
Cloud Monitoring์ ์ฌ์ฉํ์ฌ ์์ด์ ํธ ํ๋์ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค.
project
, agent_pool
, agent_id
์ธก์ ๊ธฐ์ค๊ณผ ํจ๊ป Monitoring์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด ๋ชจ๋ํฐ๋ง ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ก๊ณผ ๊ด๋ จ๋ ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์๋ฆฌ๋๋ก ์๋ฆผ์ ์ค์ ํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ ค๋ฉด ๋ค์ Google Cloud ์ธก์ ํญ๋ชฉ ์ค ํ๋์ ๋ํ ์๋ฆผ์ ๋ง๋์ธ์.
์ธก์ ํญ๋ชฉ ์ด๋ฆ | ์ค๋ช ๋ด์ฉ | ์ถ์ฒ ์ฉ๋ |
---|---|---|
storagetransfer.googleapis.com/agent/transferred_bytes_count | ํน์ ์์ด์ ํธ๊ฐ ํน์ ์์ ์ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๋ชจ๋ ์์ ์ฌ์ด์์ ๋ฐ์ดํฐ๊ฐ ์ด๋ํ๋ ์๋๋ฅผ ์ธก์ ํฉ๋๋ค. | ์ฑ๋ฅ ํ๋ฝ ์๋ฆผ |
storagetransfer.googleapis.com/agent/connected | Google Cloud์์ ์ต๊ทผ ํํธ๋นํธ ๋ฉ์์ง๋ฅผ ์์ ํ ๊ฐ ์์ด์ ํธ์ ๋ํด True์ธ ๋ถ์ธ์ ๋๋ค. |
|
์์ด์ ํธ ์ค์ง
์์ด์ ํธ๋ฅผ ์ค์งํ๋ ค๋ฉด ์์ด์ ํธ์ Docker ์ปจํ
์ด๋ ID์์ docker stop
์ ์คํํฉ๋๋ค. ID๋ฅผ ์ฐพ๊ณ ์์ด์ ํธ๋ฅผ ์ค์งํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ ์์ด์ ํธ ํ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์ค์งํ ์์ด์ ํธ๊ฐ ํฌํจ๋ ์์ด์ ํธ ํ์ ์ ํํฉ๋๋ค.
๋ชฉ๋ก์์ ์์ด์ ํธ๋ฅผ ์ ํํฉ๋๋ค. ํํฐ ํ๋๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ฆฌํฝ์ค, ์์ด์ ํธ ์ํ, ์์ด์ ํธ ์ฐ๋ น ๋ฑ์ ๊ฒ์ํฉ๋๋ค.
์์ด์ ํธ ์ค์ง๋ฅผ ํด๋ฆญํฉ๋๋ค. ํน์ ์ปจํ ์ด๋ ID๊ฐ ํ์๋
docker stop
๋ช ๋ น์ด๊ฐ ํ์๋ฉ๋๋ค.์์ด์ ํธ๊ฐ ์คํ ์ค์ธ ๋จธ์ ์์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
docker stop
๋ช ๋ น์ด๊ฐ ์ฑ๊ณตํ๋ฉด ์ปจํ ์ด๋ ID๊ฐ ๋ฐํ๋ฉ๋๋ค.
์ค์ง๋๋ฉด ์์ด์ ํธ๊ฐ ์์ด์ ํธ ํ ๋ชฉ๋ก์ ์ฐ๊ฒฐ ํด์ ๋จ์ผ๋ก ํ์๋ฉ๋๋ค.
์์ด์ ํธ ๋ค์ ์์
์ค์ง๋ ์์ด์ ํธ๋ ๋ค์ ์์ํ ์ ์์ต๋๋ค. ๋์ ์์ด์ ํธ ํ์ ์ ์์ด์ ํธ๋ฅผ ์ค์นํ์ธ์.
์์ด์ ํธ ์ญ์
ํน์ ์์ด์ ํธ๋ฅผ ์ญ์ ํ๋ ค๋ฉด ๋จธ์ ์์ ์คํ ์ค์ธ ์์ด์ ํธ๋ฅผ ๋์ดํฉ๋๋ค.
docker container list --all --filter ancestor=gcr.io/cloud-ingest/tsop-agent
๊ทธ๋ฐ ๋ค์ ์์ด์ ํธ ID๋ฅผ transfer agents delete
์ ์ ๋ฌํฉ๋๋ค.
gcloud transfer agents delete --ids=id1,id2,โฆ
๋จธ์ ์์ ์คํ๋๋ ๋ชจ๋ ์์ด์ ํธ๋ฅผ ์ญ์ ํ๋ ค๋ฉด --all
ํ๋๊ทธ๋ --uninstall
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ ํ๋๊ทธ ๋ชจ๋ ๋จธ์ ์ ๋ชจ๋ ์์ด์ ํธ๋ฅผ ์ญ์ ํฉ๋๋ค. --uninstall
ํ๋๊ทธ๋ ์์ด์ ํธ Docker ์ด๋ฏธ์ง๋ฅผ ์ถ๊ฐ๋ก ์ ๊ฑฐํฉ๋๋ค.
gcloud transfer agents delete --all
gcloud transfer agents delete --uninstall
ํ์ผ ์์คํ ์ ์ก ์ธ๋ถ์ ๋ณด
์ฆ๋ถ ์ ์ก
Storage Transfer Service๋ ์์ค ๋ฐ ๋์์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฐ์ฐํ์ฌ ๋ชจ๋ ์ ์ก์ ์์ํ์ฌ ๋ง์ง๋ง ์ ์ก ์ดํ ์๋ก์ด ์์ค ํ์ผ, ์ ๋ฐ์ดํธ ๋๋ ์ญ์ ๋ ์์ค ํ์ผ์ ํ์ธํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋จธ์ ์์ ์ ์กํ๋ ๋ฐ์ดํฐ์ ์์ ์ค์ด๊ณ , ๋์ญํญ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ฉฐ, ์ ์ก ์๊ฐ์ ๋จ์ถ์ํต๋๋ค.
ํ์ผ์ด ๋ณ๊ฒฝ๋์๋์ง ์ฌ๋ถ๋ฅผ ๊ฐ์งํ๊ธฐ ์ํด Google์์๋ ์์ค ํ์ผ์ ์ต์ข ์์ ์๊ฐ๊ณผ ํฌ๊ธฐ๋ฅผ ํ์ธํ๊ณ ํ์ผ์ ๋ง์ง๋ง์ผ๋ก ๋ณต์ฌํ ์์ ์ ๊ธฐ๋ก๋ ์ต์ข ์์ ์๊ฐ ๋ฐ ํฌ๊ธฐ์ ๋น๊ตํฉ๋๋ค. ์ ํ์ผ์ด๋ ๋ณ๊ฒฝ๋ ํ์ผ์ด ๊ฐ์ง๋๋ฉด ์ ์ฒด ํ์ผ์ด ๋์์ ๋ณต์ฌ๋ฉ๋๋ค. ํ์ผ ์ต์ ์ํ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ ์ธ๋ถ์ ๋ณด๋ฅผ ์ฐธ์กฐํ์ธ์.
๊ธฐ๋ณธ์ ์ผ๋ก Google์ ์์ค์์ ์ญ์ ๋ ํ์ผ์ ๊ฐ์งํ์ง๋ง ์กฐ์น๋ฅผ ์ทจํ์ง ์์ต๋๋ค. ๋ง๋ค๊ธฐ ๋๋ ์์ ์ ์์ค์๋ ์๋ ๋์ ํ์ผ ์ญ์ ๋๊ธฐํ ์ต์ ์ ์ ํํ๋ฉด ์ ์ก ์ ๋์์์ ํด๋น ๊ฐ์ฒด๊ฐ ์ญ์ ๋ฉ๋๋ค.
์์ค์๋ ์๋ ๋์ ํ์ผ ์ญ์ ๋๊ธฐํ ์ต์ ์ ์ ํํ๋ฉด ์์ค์์ ์ค์๋ก ์ญ์ ๋ ํ์ผ๋ ๋์์์ ์ญ์ ๋ฉ๋๋ค. ์ด ์ต์ ์ ์ฌ์ฉํ ๊ฒฝ์ฐ ์ค์๋ก ์ธํ ๋ฐ์ดํฐ ์์ค์ ๋ฐฉ์งํ๋ ค๋ฉด ๋์ ๋ฒํท์์ ๊ฐ์ฒด ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ฌ์ฉ ์ค์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์ค์๋ก ์ธํด ํ์ผ์ด ์ญ์ ๋์ด๋ Cloud Storage์ ๊ฐ์ฒด๋ฅผ ์ด์ ๋ฒ์ ์ผ๋ก ๋ณต์ํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ์ผ๊ด์ฑ ์ธ๋ถ์ ๋ณด
์ฑ๊ณต์ ์ธ ์ ์ก ์์ ์ ์์ ์ ์ ์ฒด ์คํ ์๊ฐ ๋์ ์กด์ฌํ๊ณ ์์ ๋์ง ์์ ๋ชจ๋ ์์ค ํ์ผ์ ์ ์กํฉ๋๋ค. ์ ์ก ์ค์ ์์ฑ, ์ ๋ฐ์ดํธ ๋๋ ์ญ์ ๋ ์์ค ํ์ผ์ ๊ฒฝ์ฐ ๋์ ๋ฐ์ดํฐ ์ธํธ์ ๋ณ๊ฒฝ์ฌํญ์ด ๋ฐ์ ๋๋ ๋ฐ์๋์ง ์์ ์ ์์ต๋๋ค.
Storage Transfer Service๋ ํ์ผ์ ๋ง์ง๋ง ์์ ์๊ฐ๊ณผ ํฌ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ๊ฒฝ์ฌํญ์ด ์๋์ง ํ์ธํฉ๋๋ค. ๋ง์ง๋ง ์์ ์๊ฐ ๋๋ ํฌ๊ธฐ๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ํ์ผ์ด ์
๋ฐ์ดํธ๋ ๊ฒฝ์ฐ delete-objects-from-source
์ต์
์ ์ฌ์ฉ ์ค์ ํ๋ฉด ์ด๋ฌํ ๋ณ๊ฒฝ์ฌํญ์์ ๋ฐ์ดํฐ๊ฐ ์์ค๋ ์ ์์ต๋๋ค.
delete-objects-from-source
๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋๋ ๋ฐ์ดํฐ ์์ค ๋ฐฉ์ง๋ฅผ ์ํด ์ ์ก ๊ธฐ๊ฐ ๋์ ์์ค์ ๋ํ ์ฐ๊ธฐ๋ฅผ ๊ณ ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
์์ค์ ๋ํ ์ฐ๊ธฐ๋ฅผ ๊ณ ์ ํ๋ ค๋ฉด ๋ค์ ์ค ํ๋๋ฅผ ์ํํฉ๋๋ค.
- ์ ์กํ๋ ค๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ํด๋ก ํ ํ ํด๋ก ๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ ์ก ์์ค๋ก ์ฌ์ฉํฉ๋๋ค.
- ์์ค ๋๋ ํฐ๋ฆฌ์ ์ฐ๊ธฐ๋ฅผ ์ํํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์งํฉ๋๋ค.
์ ์ก ์ค์ ๋ฐ์ํ ๋ณ๊ฒฝ์ฌํญ์ ๋ฐ์ํด์ผ ํ๋ฉด ์ ์ก์ ๋ค์ ์คํํ๊ฑฐ๋ ์์ ์ด ์คํ๋๋ ๋์ ์์ค ํ์ผ ์์คํ ์ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ค์ ํ๋ฉด ๋ฉ๋๋ค.
Cloud Storage์๋ ๋๋ ํฐ๋ฆฌ ๊ฐ๋ ์ด ์์ผ๋ฏ๋ก ๋น ์์ค ๋๋ ํฐ๋ฆฌ๊ฐ ์ ์ก๋์ง ์์ต๋๋ค.