IBM Cloud Schematics CLI
다음 명령을 실행하여 IBM Cloud Schematics 작업공간, 조치, 프로비저닝된 리소스에 대해 작업하고 Schematics를 구성하십시오.
Schematics CLI 명령은 지역에 따라 다릅니다. 이는 IBM Cloud CLI가 작동하도록 구성된 지역/위치에서만 작동합니다. CLI location
및 url
엔드포인트가 작업공간 및 조치를 작성하거나 업데이트할 지역을 가리키는지 확인하십시오. 위치 및 엔드포인트에 대한 자세한 정보는 내 정보가 저장되는 위치 를 참조하십시오.
Schematics 명령을 실행하려면 ibmcloud schematics
또는 ibmcloud sch
를 사용하십시오.
전제조건
- CLI 를 설정하십시오.
- Schematics 플러그인을 설치하십시오.
현재 릴리스된 명령어와 해당 옵션을 사용할 수 있도록 CLI를 최신 상태로 유지해야 합니다. 현재의 커맨드 라인 버전 릴리스에 대한 자세한 정보는 커맨드 라인 버전 기록을 참고하세요.
조치 명령
Schematics 작업을 만들고, 업데이트하고, 나열하고, 삭제하고, 작업하는 명령을 검토하세요.
ibmcloud schematics action create
단일 대상 호스트 또는 대상 호스트 그룹에서 Ansible 플레이북을 실행하는 작업을 만듭니다. Ansible 플레이북을 사용하면 클라우드 오퍼레이션을 수행하거나 클라우드 리소스에 소프트웨어를 설치할 수 있습니다. 이 기능을 시험해 보거나 시작하려면 IBM 에서 제공하는 Ansible 플레이북 중 하나를 사용하세요. 조치는 페이로드 파일 또는 명령의 대화식 모드를 사용하여 작성할 수 있습니다.
작업 공간과 작업을 만들거나 업데이트할 때 location
및 url
엔드포인트가 같은 지역을 가리키고 있는지 확인하세요. 위치 및 엔드포인트에 대한 자세한 정보는 내 정보가 저장되는 위치 를 참조하십시오.
구문
ibmcloud schematics action create --name ACTION_NAME [--description DESCRIPTION] --location GEOGRAPHY --resource-group RESOURCE_GROUP [--template GIT_TEMPLATE_REPO] [--playbook-name PLAYBOOK_NAME] [--credential CREDENTIAL_FILE] [--credential-json CREDENTIAL_JSON_FILE] [--bastion BASTION_HOST_IP_ADDRESS] [--bastion-credential-json BASTION_CREDENTIAL_JSON_FILE] [--inventory INVENTORY_ID] [—-inventory-connection-type INVENTORY_CONNECTION_TYPE] [--input INPUT_VARIABLES_LIST] [--input-file INPUT_VARIABLES_FILE_PATH] [--env ENV_VARIABLES_LIST] [--env-file ENV_VARIABLES_FILE_PATH] [--github-token GITHUB_ACCESS_TOKEN] [--output OUTPUT] [--file FILE_NAME ] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--name 또는 -n |
필수 | 고유한 조치 이름입니다. |
--description 또는 -d |
선택사항 | 조치에 대한 간단한 설명입니다. |
--location 또는 -l |
필수 | 조치를 작성할 지역 또는 위치입니다(예: us-south , us-east , eu-de 또는 eu-gb ). 이 지역 또는 위치에 따라 조치가 실행되고 조치 데이터가 저장되는 위치가 결정됩니다. 자세한 정보는 내 정보는 어디에 저장됩니까?를
참조하십시오. 조치가 작성된 후에는 위치를 변경할 수 없으므로 이 위치에 데이터를 저장할 수 있는지 확인하십시오. |
--resource-group 또는 -r |
필수 | 조치를 작성할 리소스 그룹의 이름입니다. |
--template 또는 -tr |
선택사항 | Ansible 플레이북이 저장되어 있는 Git 저장소에 대한 URL입니다. |
--playbook-name 또는 --pn |
선택사항 | Ansible 플레이북의 이름입니다. |
--credentials 또는 -C |
선택사항 | 대상 호스트에 액세스할 때 사용할 개인용 SSH 키의 파일 경로입니다(예: ~/.ssh/id_rsa ). 명령행 또는 API 호출의 경우 SSH 키의 키 세부사항의 끝에 이(가) 포함되어야 합니다. |
--credential-json 또는 --cj |
선택사항 | 대상 호스트에 액세스하기 위한 인증 정보 JSON 페이로드를 포함하는 JSON 파일의 경로를 제공합니다. |
--bastion 또는 -b |
선택사항 | 배스천 호스트의 IP 주소입니다. |
--bastion-credential-json 또는 --bj |
선택사항 | 배스천 호스트에 액세스하기 위한 배스천 인증 정보 JSON 페이로드가 포함된 JSON 파일의 경로를 제공합니다. |
--inventory 또는 -y |
선택사항 | 사용자의 위치에서 사용할 리소스 인벤토리의 ID입니다. 기존 인벤토리를 나열하려면 ibmcloud schematics inventory list 를 실행하십시오. |
--inventory-connection-type 또는 --it |
선택사항 | 인벤토리 연결의 유형입니다. 지원되는 값은 ssh 또는 winrm 입니다. 현재 WinRM 는 공개 IPs 를 사용하는 Windows 시스템만 지원하며 Bastion 호스트는 지원하지 않습니다. |
--input 또는 --in |
선택사항 | 조치에 대한 입력 변수입니다. 입력 변수는 키-값 쌍으로 입력해야 합니다(예: --input mykey=myvalue ). 입력 변수를 여러 개 지정하려면 명령에 --input 플래그를 여러 개 사용하십시오. 입력 변수를 파일에 저장한 후 --input-file 명령 옵션을 사용하여 이 파일을 참조할 수도 있습니다. |
--input-file 또는 --if |
선택사항 | 모든 입력 변수가 지정된 파일의 경로입니다. 입력 변수는 JSON 형식의 키-값 쌍으로 지정해야 합니다. |
--env 또는 -e |
선택사항 | 조치에 대한 환경 변수입니다. 환경 변수는 키-값 쌍으로 입력해야 합니다(예: --env mykey=myvalue ). 환경 변수를 여러 개 제공하려면 명령에 --env 플래그를 여러 개 사용하십시오. |
--env-file 또는 -E |
선택사항 | 조치에 대한 모든 환경 변수가 지정된 파일의 경로입니다. 환경 변수는 JSON 형식의 키-값 쌍으로 지정해야 합니다. |
--github-token 또는 -g |
선택사항 | 개인용 GitHub 저장소에 연결할 때 사용할 GitHub의 개인 액세스 토큰입니다. Git 저장소에서 복제하려는 경우 복제를 위한 허용된 파일 확장자 및 차단된 파일 확장자를 참조하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--file 또는 -f |
선택사항 | 작성할 조치의 정의가 포함되어 있는 JSON 페이로드 파일의 경로입니다. 자세한 정보는 페이로드 파일 사용을 참조하십시오. |
--no-prompt |
선택사항 | 대화식 모드를 사용하지 않고 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics action create --name start-vsi --location us-south --resource-group default --template https://github.com/Cloud-Schematics/ansible-is-instance-actions --playbook-name stop-vsi-playbook.yml --input instance_ip=172.4.5.0
페이로드 파일 사용
작성할 조치에 대한 세부사항(예: ID, 이름, 설명)이 포함된 JSON 파일을 작성하십시오. 그런 다음 --file
명령 옵션을 사용하여 페이로드 파일에서 조치를 작성하십시오.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<ACTION_NAME>"
을(를) "testaction"
(으)로 바꾸십시오.
구문
{
"name": "<ACTION_NAME>",
"description": "<DESCRIPTION>",
"location": "<LOCATION>",
"resource_group": "<RESOURCE_GROUP>",
"bastion_connection_type": "ssh",
"inventory_connection_type": "winrm",
"source": {
"source_type" : "git",
"git" : {
"git_repo_url": "<YOUR_REPOSITORY>"
}
},
"command_parameter": "<PLAYBOOK_NAME>",
"bastion": {},
"bastion_credentials": {
"metadata": {}
},
"tags": [
"<ACTION_TAGS>"
],
"source_readme_url": "stringtype",
"source_type": "GitHub"
}
ibmcloud schematics action create --file <FILE_NAME>
예
ibmcloud schematics action create --file sample.json
대화식 모드 사용
명령 옵션을 입력하거나 페이로드 파일을 사용하는 대신 명령의 대화식 모드를 사용하여 조치를 작성할 수 있습니다. 기본적으로 조치는 최소한의 사용자 입력으로 작성됩니다. 조치에 더 많은 정보를 추가하려면 나중에 조치를 업데이트하면 됩니다.
- 명령 옵션 없이 명령을 실행하여 대화식 모드를 시작하십시오.
ibmcloud schematics action create
- 조치 이름을 입력하고 리턴 키를 누르십시오.
- 조치를 작성할 리소스 그룹을 입력하고 리턴 키를 누르십시오.
- 조치를 작성할 위치를 입력하십시오(예:
us-south
,us-east
,eu-de
또는eu-gb
). 그런 다음 리턴 키를 누르십시오. 이 위치에 따라 조치가 실행되고 조치 데이터가 저장되는 위치가 결정됩니다. 자세한 정보는 내 정보는 어디에 저장됩니까?를 참조하십시오. 조치가 작성된 후에는 위치를 변경할 수 없으므로 이 위치에 데이터를 저장할 수 있는지 확인하십시오. - Ansible 플레이북이 저장되어 있는 Git 저장소에 대한 URL을 입력하십시오. 그런 다음 리턴 키를 누르십시오.
- 해당하는 경우, GitHub 저장소에 액세스할 때 사용할 개인 액세스 토큰을 입력하십시오. 그런 다음 리턴 키를 누르십시오. Git 저장소에서 복제하려는 경우 복제를 위한 허용된 파일 확장자 및 차단된 파일 확장자를 참조하십시오.
- 실행할 Ansible 플레이북의 이름을 입력하고 리턴 키를 누르십시오.
- 작성된 조치의 세부사항을 검토하십시오.
ibmcloud schematics action update
action_id
를 사용하여 기존 조치의 정보를 업데이트하십시오. CLI location
및 url
엔드포인트가 작업공간 및 조치를 작성하거나 업데이트할 지역을 가리키는지 확인하십시오. 위치 및 엔드포인트에 대한 자세한 정보는 내 정보가 저장되는 위치 를 참조하십시오.
구문
ibmcloud schematics action update --id ACTION_ID --name ACTION_NAME [--description DESCRIPTION] --location GEOGRAPHY --resource-group RESOURCE_GROUP [--template GIT_TEMPLATE_REPO] [--playbook-name PLAYBOOK_NAME] [--github-token GITHUB_ACCESS_TOKEN] [--credential CREDENTIAL_FILE] [--credential-json CREDENTIAL_JSON_FILE] [--bastion BASTION_HOST_IP_ADDRESS] [--bastion-credential-json BASTION_CREDENTIAL_JSON_FILE] [--inventory INVENTORY_ID] [--inventory-connection-type INVENTORY_CONNECTION_TYPE] [--input INPUT_VARIABLES_LIST] [--input-file INPUT_VARIABLES_FILE_PATH] [--env ENV_VARIABLES_LIST] [--env-file ENV_VARIABLES_FILE_PATH] [--file FILE_NAME] [--no-prompt] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 업데이트할 조치의 ID입니다. |
--name 또는 -n |
선택사항 | 조치의 새 고유 이름입니다. |
--description 또는 -d |
선택사항 | 조치에 대한 간단한 설명입니다. |
--location 또는 -l |
필수 | IBM Cloud Schematics 서비스에서 지원하는 지리적 위치입니다(예: us-south , us-east , eu-de , eu-gb ). |
--resource-group 또는 -r |
필수 | 조치에 대한 리소스 그룹 이름입니다. |
--template 또는 -tr |
선택사항 | Ansible 플레이북이 저장되어 있는 Git 저장소에 대한 URL입니다. |
--playbook-name 또는 --pn |
선택사항 | 플레이북의 이름입니다. |
--github-token 또는 -g |
선택사항 | 개인용 GitHub 저장소에 연결할 때 사용할 GitHub의 개인 액세스 토큰입니다. Git 저장소에서 복제하려는 경우 복제를 위한 허용된 파일 확장자 및 차단된 파일 확장자를 참조하십시오. |
--credentials 또는 -C |
선택사항 | 대상 호스트에 액세스할 때 사용할 개인용 SSH 키의 파일 경로입니다(예: ~/.ssh/id_rsa ). 명령행 또는 API 호출의 경우 SSH 키의 키 세부사항의 끝에 이(가) 포함되어야 합니다. |
--credential-json 또는 --cj |
선택사항 | 대상 호스트에 액세스하기 위한 인증 정보 JSON 페이로드를 포함하는 JSON 파일의 경로를 제공합니다. |
--bastion 또는 -b |
선택사항 | 배스천 호스트의 IP 주소입니다. |
--bastion-credential-json 또는 --bj |
선택사항 | 배스천 호스트에 액세스하기 위한 배스천 인증 정보 JSON 페이로드가 포함된 JSON 파일의 경로를 제공합니다. |
--inventory 또는 -y |
선택사항 | 사용자의 위치에서 사용할 리소스 인벤토리의 ID입니다. 기존 인벤토리를 나열하려면 ibmcloud schematics inventory list 를 실행하십시오. |
--inventory-connection-type 또는 --it |
선택사항 | 인벤토리 연결의 유형입니다. 지원되는 값은 ssh 또는 winrm 입니다. 현재 WinRM 는 공개 IPs 를 사용하는 Windows 시스템만 지원하며 Bastion 호스트는 지원하지 않습니다. |
--input 또는 --in |
선택사항 | 조치에 대한 입력 변수입니다. 입력 변수는 키-값 쌍으로 입력해야 합니다(예: --input mykey=myvalue ). 입력 변수를 여러 개 지정하려면 명령에 --input 플래그를 여러 개 사용하십시오. 입력 변수를 파일에 저장한 후 --input-file 명령 옵션에서 이 파일을 참조할 수도 있습니다. |
--input-file 또는 --if |
선택사항 | 모든 입력 변수가 지정된 파일의 경로입니다. 입력 변수는 JSON 형식의 키-값 쌍으로 지정해야 합니다. |
--env 또는 -e |
선택사항 | 조치에 대한 환경 변수입니다. 환경 변수는 키-값 쌍으로 입력해야 합니다(예: --env mykey=myvalue ). 환경 변수를 여러 개 제공하려면 명령에 --env 플래그를 여러 개 사용하십시오. |
--env-file 또는 -E |
선택사항 | 조치에 대한 모든 환경 변수가 지정된 파일의 경로입니다. 환경 변수는 JSON 형식의 키-값 쌍으로 지정해야 합니다. |
--file 또는 -f |
선택사항 | 업데이트할 조치의 정의가 포함되어 있는 JSON 페이로드 파일의 경로입니다. 자세한 정보는 페이로드 파일 사용 을 참조하십시오. 조치가 작성된 후에는 위치 또는 리소스 그룹과 같은 매개변수를 업데이트할 수 없습니다. |
--no-prompt |
선택사항 | 사용자 프롬프트 없이 명령을 실행하려면 이 플래그를 설정하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics action update --id us-south.workspace.101010101 --description "This is my description"
ibmcloud schematics action get
기존 Schematics 의 세부 정보를 검색합니다. 작업 ID, 이름, 상태, 생성 시간, 암호화 상태, 암호화 CRN 등의 모든 입력 변수 값을 포함합니다.
구문
ibmcloud schematics action get --id ACTION_ID [--profile PROFILE] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 검색할 조치의 ID입니다. |
--profile 또는 -p |
선택사항 | 검색할 정보의 깊이입니다. 지원되는 값은 detailed 및 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 모드를 사용하지 않고 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics action get --id us-south.workspace.101010101 -p summary
ibmcloud schematics action list
계정의 현재 IBM Cloud 지역에 정의된 모든 조치의 목록을 검색합니다.
구문
ibmcloud schematics action list [--limit LIMIT] [--offset OFFSET] [--profile PROFILE] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--limit 또는 -l |
선택사항 | 나열할 최대 조치 수입니다. 이 숫자는 1과 200 사이의 양의 정수여야 합니다. 기본값은 -1 입니다. |
--offset 또는 -m |
선택사항 | 조치 나열을 시작할 조치 목록에서 조치 위치입니다. 예를 들어 계정과 지역에 3개의 작업이 있는 경우 이 명령은 이러한 작업을 세 가지 요소가 있는 목록으로 반환합니다. 모든 조치를 검색하려면 위치 번호 0을 입력해야 합니다. 이 목록에서 조치 번호 2 및 3을 검색하고 조치 번호 1을 생략하려면 위치 번호 1을 입력해야 합니다. 위치 번호 1은 조치 목록의 두 번째 위치를 나타냅니다. 음수는 지원되지 않으며 무시됩니다. |
--profile 또는 -p |
선택사항 | 리턴되는 정보의 깊이입니다. 지원되는 값은 ids 및 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics action list --profile ids
ibmcloud schematics action delete
Schematics 조치를 삭제합니다.
구문
ibmcloud schematics action delete --id ACTION_ID [--force][--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 삭제할 조치의 ID입니다. |
--force 또는 -f |
선택사항 | 사용자 확인 없이 강제로 삭제합니다. |
--no-prompt |
선택사항 | 사용자 프롬프트 없이 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics action delete --id us-south.workspace.101010101
ibmcloud schematics action upload
로컬 파일 시스템의 테이프 아카이브 파일(.tar
)을 IBM Cloud Schematics 조치로 업로드할 수 있습니다. .tar
파일이 저장된 로컬 시스템에 대한 전체 파일 경로를 입력하십시오. .tar
명령이 지정된 TAR
명령을 사용하여 템플리트 저장소의 tar -cvf mytestactionupload.tar $TEMPLATE_REPO_FOLDER
파일을 작성하십시오.
구문
ibmcloud schematics action upload --id ACTION_ID --file FILE_NAME [--no-prompt] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 업로드할 조치의 ID입니다. |
--file 또는 -f |
필수 | 조치를 위해 업로드할 TAR 파일의 경로입니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 중지하려면 이 플래그를 설정하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics action upload --id us.ACTION.testphase1.2eddf83a --file <FILE_PATH>/mytestactionupload.tar
조치 작업 명령
Schematics 조치에 대해 작업할 때 Schematics 작업을 작성, 업데이트, 나열 및 삭제하는 명령을 검토하십시오.
ibmcloud schematics job run
IBM Cloud Schematics 에서 작업을 작성하여 Schematics 조치에서 지정한 Ansible 플레이북을 실행하십시오. 작업은 페이로드 파일 또는 명령의 대화식 모드를 사용하여 작성할 수 있습니다.
구문
ibmcloud schematics job run --command-object COMMAND_OBJECT_TYPE --command-object-id COMMAND_OBJECT_ID --command-name COMMAND_NAME [--playbook-name PLAYBOOK_NAME] [--command-options COMMAND_OPTIONS] [--input INPUT_VARIABLES_LIST] [--input-file INPUT_VARIABLES_FILE_PATH] [--env ENV_VARIABLES_LIST] [--env-file ENV_VARIABLES_FILE_PATH] [--output OUTPUT] [--file FILE_NAME ] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--command-object 또는 -c |
필수 | Schematics 자동화 리소스의 이름입니다. 현재는 action 만 지원됩니다. |
--command-object-id 또는 -cid |
필수 | 작업을 실행하려는 Schematics 작업의 ID입니다. |
--command-name, 또는 -n |
필수 | 조치에 대해 실행할 명령입니다. 지원되는 값은 ansible_playbook_check 및 ansible_playbook_run 입니다. |
--playbook-name 또는 -pn |
선택사항 | 실행하려는 Ansible 플레이북의 이름입니다. |
--command-options 또는 -co |
선택사항 | 명령에 대한 명령행 옵션입니다. |
--input 또는 --in |
선택사항 | 조치에 대한 입력 변수입니다. 이 플래그는 여러 번 설정할 수 있으며 --inputs test=testvalue 형식이어야 합니다. |
--input-file 또는 --if |
선택사항 | 조치에 대한 입력 변수입니다. 입력 변수를 포함하는 JSON 파일 경로를 제공하십시오. |
--env 또는 -e |
선택사항 | 조치에 대한 환경 변수입니다. 이 플래그는 여러 번 설정할 수 있으며 --env-variables test=testvalue 형식이어야 합니다. |
--env-file 또는 -E |
선택사항 | 조치에 대한 환경 변수입니다. 환경 변수를 포함하는 JSON 파일 경로를 제공하십시오. |
--result-format 또는 -f |
선택사항 | JSON 형식의 결과 응답 출력입니다. |
--file 또는 -f |
선택사항 | 새 작업의 정의가 포함되어 있는 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
액션에 플레이북 이름이 포함된 경우, 액션 플레이북 이름이 우선하도록 플레이북 이름을 추가해야 합니다. 작업을 통해 플레이북 이름을 대체해야 하는 경우에는 새 플레이북 이름을 사용하여 조치를 작성해야 합니다.
페이로드 파일 사용
job run
명령에 대한 특정 매개변수를 지정하는 페이로드 파일을 제공할 수 있습니다. 그런 다음 --file
명령 옵션을 사용하여 파일 이름을 명령에 전달합니다.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어 "<COMMAND_OBJECT>"
은(는) "action"으로 바꾸십시오.
구문
{
"command_object": "<COMMAND_OBJECT>",
"command_object_id": "<COMMAND_OBJECT_ID>",
"command_name": "<COMMAND_NAME>",
"command_parameter": "<PLAYBOOK_NAME>"
}
예
{
"command_object": "action",
"command_object_id": "us-east.ACTION.Example-11110000011",
"command_name": "ansible_playbook_check",
"command_parameter": "site.yml"
}
ibmcloud schematics job run --file sample.json
대화식 모드 사용
명령 옵션 또는 페이로드 파일을 사용하여 작업 세부사항을 입력하는 대신, 명령에 대화식 모드를 사용할 수 있습니다. 이 모드는 Schematics에서 작업을 작성하기 위해 필요한 값을 입력하도록 프롬프트를 표시합니다.
- 명령 옵션 없이 작업을 작성하려면 다음 명령을 입력하십시오.
ibmcloud schematics job run
Enter command-object>
프롬프트가 표시되면action
을 입력하고 리턴 키를 누르십시오.Enter command-object-id>
프롬프트가 표시되면 조치 ID 세부사항을 입력하고 리턴 키를 누르십시오.Enter command-name>
프롬프트가 표시되면ansible_playbook_run
또는ansible_playbook_check
를 입력하고 리턴 키를 누르십시오.- 작성된 작업의 CLI 출력을 검토하십시오.
ibmcloud schematics job update
기존 작업의 설정을 복사하여 작업을 작성하고 IBM Cloud Schematics에서 작업을 실행합니다.
구문
ibmcloud schematics job update --id JOB_ID [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 복사하고 다시 실행할 기존 작업의 ID입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 작업을 작성하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics job update --id us-east.JOB.yourjob_ID_1231
ibmcloud schematics job get
작업 ID를 사용하여 작업의 세부 정보를 검색합니다.
구문
ibmcloud schematics job get --id JOB_ID [--profile PROFILE] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 검색할 작업의 ID입니다. |
--profile 또는 -p |
선택사항 | 검색할 정보의 깊이입니다. 지원되는 값은 detailed 및 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 작업 세부사항을 검색하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics job get --id us-east.JOB.yourjob_ID_1231 --profile detailed
ibmcloud schematics job list
Schematics 조치에 대해 실행된 모든 Schematics 작업의 목록을 검색합니다. 이 명령은 상태가 in_progress
, success
또는 failed
인 작업 목록을 표시합니다.
구문
ibmcloud schematics job list --resource-type RESOURCE_TYPE --id RESOURCE_ID [--limit LIMIT] [--offset OFFSET] [--profile PROFILE] [--output OUTPUT] [--all] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--resource-type 또는 -rt |
필수 | Schematics 리소스의 이름입니다. action 만 지원됩니다. |
--id 또는 -i |
필수 | 작업을 나열할 Schematics 작업의 ID입니다. |
--limit 또는 -l |
선택사항 | 나열할 최대 작업공간 수입니다. 이 숫자는 1과 200 사이의 양의 정수여야 합니다. 기본값은 -1 입니다. |
--offset 또는 -m |
선택사항 | 작업 나열을 시작할 작업 목록에서 작업 위치입니다. 예를 들어, 계정에 세 개의 작업이 있는 경우 이 명령은 이러한 작업을 세 개의 요소가 포함된 목록으로 리턴합니다. 모든 작업을 검색하려면 위치 번호 0을 입력해야 합니다. 이 목록에서 작업 번호 2 및 3을 검색하고 작업 번호 1을 생략하려면 위치 번호 1을 입력해야 합니다. 위치 번호 1은 작업 목록의 두 번째 위치를 나타냅니다. 음수는 지원되지 않으며 무시됩니다. |
--profile 또는 -p |
선택사항 | 리턴되는 정보의 깊이입니다. 지원되는 값은 ids 또는 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--all 또는 -A |
선택사항 | Schematics 내부 작업을 포함한 모든 작업을 나열합니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 작업을 작성하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics job list --resource-type action --id us-south.ACTION.interactive.aaa1a111 --profile ids --output json
ibmcloud schematics job logs
Schematics 조치 작업에 대한 로그를 검색합니다. 작업 로그 보기에 대한 자세한 정보는 Schematics 작업 세부사항 검토 를 참조하십시오.
구문
ibmcloud schematics job logs --id JOB_ID [log-prefix] [log-header] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 자세한 로그를 검색할 작업의 ID입니다. |
--log-prefix 또는 --lp |
선택사항 | 작업 로그에서 실행된 명령의 접두부를 추가합니다. |
--log-header 또는 --lh |
선택사항 | 작업 로그의 명령 헤더를 Schematics 형식으로 변환하는 데 사용됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics job logs --id us-east.JOB.yourjob_ID_1231
ibmcloud schematics job delete
Schematics 조치에 대한 작업을 삭제합니다.
실행 중인 작업은 삭제하거나 중지할 수 없습니다. 작업을 제거하려면 작업이 완료될 때까지 기다려야 합니다.
구문
ibmcloud schematics job delete --id JOB_ID [--force] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 삭제할 작업의 ID입니다. |
--force 또는 -f |
선택사항 | 사용자 확인 없이 강제로 삭제합니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics job delete --id us-east.JOB.yourjob_ID_1231
에이전트 명령
ibmcloud schematics agent create
현재 선택된 Schematics 리젼에서 에이전트 등록을 작성하십시오. 에이전트는 인프라에서 Terraform 또는 Ansible 작업을 실행하는 데 도움을 줍니다. create 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 배치 를 참조하십시오.
구문
ibmcloud schematics agent create --name AGENT_NAME --location LOCATION --agent-location AGENT_LOCATION --cluster-id CLUSTER_ID --cluster-resource-group CLUSTER_RESOURCE_GROUP --cos-instance-name COS_INSTANCE_NAME --cos-bucket COS_BUCKET --cos-location COS_LOCATION --resource-group RESOURCE_GROUP [--version VERSION] [--infra-type INFRA_TYPE] [--description DESCRIPTION] [--tags TAGS] [--metadata AGENT_METADATA] [--validate] [--deploy] [--file FILE] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--name 또는 -n |
필수 | 상담원의 고유 이름입니다. 에이전트 역할, 위치 및 사용법에 대해 설명해야 합니다. |
--location 또는 -l |
필수 | 에이전트가 정의된 Schematics 위치, us-south , us-east , eu-de , eu-gb . 실행을 위해 이 위치에서 작업을 선택합니다. |
--agent-location 또는 --al |
필수 | 사용자 환경에서 에이전트가 배치되는 위치를 식별하기 위한 설명적 사용자 정의 레이블입니다. 이는 클라우드 지역 또는 사용자 데이터 센터일 수 있습니다. 예를 들어, London MZR 입니다. |
--cluster-id 또는 -c |
필수 | 에이전트를 배포하기 위한 Kubernetes 클러스터의 ID입니다. |
--cluster-resource-group 또는 --cg |
필수 | 클러스터의 리소스 그룹 이름입니다. |
--cos-instance-name 또는 --on |
필수 | COS 인스턴스의 이름입니다. |
--cos-bucket 또는 -b |
필수 | COS 버킷의 ID 또는 이름입니다. |
--cos-location 또는 --ol |
필수 | COS 버킷 위치입니다. 지원되는 형식은 eu-gb , us-south 등입니다. |
--resource-group 또는 -g |
필수 | 에이전트가 연관된 자원 그룹 이름 또는 ID입니다. |
--version 또는 -v |
필수 | 에이전트의 버전을 지정하는 사용자 정의 레이블입니다. 예 v1.0.0 |
--infra-type 또는 -i |
필수 | 대상 상담원 인프라의 유형을 지정합니다. 지원되는 값은 ibm-kubernetes , ibm-openshift 또는 ibm-satellite 입니다. |
--description 또는 -d |
선택사항 | 에이전트 사용량, 에이전트가 액세스할 수 있는 네트워크 구역 및 자원을 식별하는 설명입니다. |
--tags 또는 -t |
선택사항 | 에이전트 태그입니다. 플래그를 여러 번 반복할 수 있습니다. 태그를 사용하면 에이전트 관련 자원을 더 빠르고 쉽게 검색할 수 있습니다. |
--metadata 또는 --md |
선택사항 | 에이전트의 메타데이터입니다. 플래그를 여러 번 사용할 수 있습니다. 예를 들어, git:private-git.github.com 또는 git:gitlab.com 입니다. 설정하지 않으면 기본값은 git:github.com 입니다. |
--validate |
선택사항 | 에이전트를 작성한 후 유효성 검증을 실행하십시오. |
--deploy |
선택사항 | 에이전트를 작성한 후 유효성 검증 없이 배치를 실행하십시오. |
--file 또는 f |
선택사항 | 상담원의 정의가 포함된 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent create --name agenttestcli10jan --location us-east --agent-location us-east --version 1.0.0-prega --infra-type ibm_kubernetes --cluster-id clbjrdml00cgremot1k0 --cluster-resource-group Default --cos-instance-name agent-test-cos-standard --cos-bucket agent-test-bucket --cos-location us-east --resource-group Default --description "This agent is created to test for the prod release and COS"
ibmcloud schematics agent delete
에이전트를 설치 제거합니다. 삭제 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 삭제 를 참조하십시오.
구문
ibmcloud schematics agent delete --id AGENT_ID [--force]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--force 또는 -f |
선택사항 | 확인 없이 강제 조치를 취합니다. 영구 삭제를 작업공간 영구 삭제 플로우와 병렬로 유지하기 위해 모든 에이전트 플로우를 삭제하려면 --force 매개변수를 true 로 설정하십시오. 기본적으로 이 매개변수는 false로 설정됩니다. |
예
ibmcloud schematics agent delete --id <AGENT_ID>
ibmcloud schematics agent deploy
에이전트를 배포하거나 업그레이드하여 강제 배포합니다. 배치 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 배치 를 참조하십시오.
구문
ibmcloud schematics agent deploy --id AGENT_ID [--force-redploy] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--force-redeploy 또는 -fd |
선택사항 | 에이전트를 강제로 재배치합니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent deploy --id <AGENT_ID>
ibmcloud schematics agent destroy
Schematics 에이전트를 삭제하면 에이전트 배포와 관련된 클라우드 리소스가 삭제됩니다.
구문
ibmcloud schematics agent destroy --id AGENT_ID [--force]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--force 또는 -f |
선택사항 | 확인 없이 강제 조치를 취합니다. |
예
ibmcloud schematics agent destroy --id <AGENT_ID>
ibmcloud schematics agent get
기존 에이전트의 세부 정보(에이전트 ID, 이름, 상태, 버전, 생성 시간, 암호화 상태, 암호화 CRN 등)와 모든 입력 변수의 값을 검색합니다. Get 명령어를 사용하는 방법에 대한 자세한 정보는 상담원 표시하기를 참고하세요
구문
ibmcloud schematics agent get --id AGENT_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent get --id <AGENT_ID>
ibmcloud schematics agent health
에이전트의 배치 후 유효성 검증을 수행합니다. 에이전트 상태 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 상태 모니터링 을 참조하십시오.
구문
ibmcloud schematics agent health --id AGENT_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent health --id <AGENT_ID>
ibmcloud schematics agent list
현재 Schematics 리젼에 정의된 에이전트를 나열합니다. list 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 표시 를 참조하십시오.
구문
ibmcloud schematics agent list [--location LOCATION] [--limit LIMIT] [--offset OFFSET] [--output OUTPUT_FORMAT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--location 또는 -l |
선택사항 | IBM Cloud Schematics 서비스에서 지원하는 지리적 위치입니다(예: us-south , us-east , eu-de , eu-gb ). |
--limit 또는 -lm |
선택사항 | 나열할 최대 에이전트 수입니다. 음수 값이 설정되면 무시됩니다. 최대 한도는 200개입니다(기본값은 -1). |
--offset 또는 -m |
선택사항 | 목록의 오프셋입니다. 음수로 설정된 경우 무시됩니다(기본값: -1)). |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent list --location us-south
ibmcloud schematics agent update
에이전트 구성을 업데이트합니다. 에이전트를 업데이트해도 에이전트의 유효성이 다시 검사되거나 다시 배포되지는 않습니다. 에이전트 업데이트 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 배치 를 참조하십시오.
구문
ibmcloud schematics agent update --id AGENT_ID [--description DESCRIPTION] [--tags TAGS] [--version VERSION] [--metadata AGENT_METADATA] [--file FILE] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--tags 또는 -t |
선택사항 | 에이전트 태그입니다. 이 플래그를 여러 번 사용하면 상담원 관련 리소스를 더 빠르게 검색할 수 있습니다. |
--description 또는 -d |
선택사항 | 상담원에 대한 간단한 설명입니다. |
--version value 또는 -v |
선택사항 | 상담원의 버전을 지정합니다. 기본값은 사용 가능한 최신 버전입니다. |
--metadata |
선택사항 | 에이전트의 메타데이터입니다. 플래그를 여러 번 사용할 수 있습니다. 예를 들어, git:private-git.github.com 또는 git:gitlab.com 입니다. 설정하지 않으면 기본값은 git:github.com 입니다. |
--file 또는 -f |
선택사항 | 상담원의 정의가 포함된 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 인벤토리를 업데이트하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics agent update --id <AGENT_ID>
ibmcloud schematics agent validate
배치하기 전에 에이전트 및 클러스터 구성을 분석하는 사전 설치 소프트웨어 스캔을 확인합니다. 유효성 검증 명령을 사용하는 단계에 대한 자세한 정보는 에이전트 배치 를 참조하십시오.
구문
ibmcloud schematics agent validate --id AGENT_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id |
필수 | 상담원의 ID입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics agent validate --id AGENT_ID
에이전트 정책 명령
Schematics (할당) 정책은 Schematics 특정 네트워크 영역에서 작업 공간 및 작업 작업을 실행하는 데 사용할 에이전트를 알려줍니다. 각 상담원에는 상담원의 위치에서 실행할 작업을 식별하기 위해 연결된 정책이 하나 이상 있습니다. 지정 정책 을 참조하십시오.
ibmcloud schematics policy create
Schematics 를 사용하여 대상 에이전트에서 실행할 하나 이상의 Schematics 오브젝트 (예: 작업공간 또는 조치) 를 선택하여 정책을 작성하십시오.
구문
ibmcloud schematics policy create --name POLICY_NAME --kind POLICY_KIND --location LOCATION --resource-group RESOURCE_GROUP --target-file TARGET_FILE [--description DESCRIPTION] [--tags TAGS] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--name 또는 -n |
필수 | 정책의 고유 이름입니다. |
--kind 또는 -K |
필수 | 정책 결정을 관리하고 도출하기 위한 정책 유형입니다. 지원되는 곳은 agent_assignment_policy 입니다. |
--location 또는 -l |
선택사항 | 에이전트가 정의된 Schematics 서비스의 지리적 위치입니다. 예를 들어, us-south , us-east , eu-de , eu-gb 입니다. 이 위치에서 처리할 작업을 픽업합니다. |
--resource-group 또는 -r |
필수 | 정책의 자원 그룹 이름 또는 ID입니다. |
--target-file 또는 tf |
선택사항 | 정책 정의를 포함하는 JSON 파일의 경로입니다. |
--description 또는 -d |
선택사항 | Schematics 정책에 대한 설명입니다. |
--tags 또는 -t |
선택사항 | 태그를 여러 번 사용하여 에이전트 정책을 더 빠르게 검색하고 찾을 수 있습니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
페이로드 파일 사용
policy create
명령에 대한 특정 매개변수를 지정하는 페이로드 파일을 제공할 수 있습니다. 그런 다음 --target-file
명령 옵션을 사용하여 파일 이름을 명령에 전달합니다.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<SELECTOR_KIND>"
을(를) "ids"
(으)로 바꾸십시오.
구문
{
"target": {
"selector_kind": "<SELECTOR_KIND>",
"selector_ids": [
"<SELECTOR_ID>"
]
},
"parameter": {
"agent_assignment_policy_parameter": {
"selector_kind": "<SELECTOR_KIND>",
"selector_scope": [{
"kind": "<WORKSPACE>",
"tags": [
"dev:<ENVIRONMENT>",
"demo"
],
"resource_groups": [
"<RESOURCE_GROUP>"
],
"locations": [
"<LOCATION>"
]
}]
}
}
}
예
{
"target": {
"selector_kind": "ids",
"selector_ids": [
"demo-agent-one"
]
},
"parameter": {
"agent_assignment_policy_parameter": {
"selector_kind": "scoped",
"selector_scope": [{
"kind": "workspace",
"tags": [
"dev:test",
"demo"
],
"resource_groups": [
"Default"
],
"locations": [
"us-south"
]
}]
}
}
}
예
ibmcloud schematics policy create --name policy-101 --kind agent_assignment_policy --location us-south --resource-group Default --target-file ./<PATH>/target.json
ibmcloud schematics policy delete
Schematics 정책을 삭제합니다.
구문
ibmcloud schematics policy delete --id POLICY_ID [--force]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 정책의 ID입니다. |
--force 또는 -f |
선택사항 | 확인 없이 강제 조치를 취합니다. |
예
ibmcloud schematics policy delete --id policy-101.soP.282e
ibmcloud schematics policy get
정책 ID를 사용하여 기존 Schematics 정책의 세부사항을 검색합니다.
구문
ibmcloud schematics policy get --id POLICY_ID [--profile PROFILE] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 정책의 ID입니다. |
--profile 또는 -p |
선택사항 | 리턴할 세부사항 레벨입니다. 유효한 값은 summary , detailed 또는 ids 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics policy get --id policy-101.soP.282e
ibmcloud schematics policy list
계정에 대한 IBM Cloud 지역에서 모든 정책의 목록을 검색합니다.
구문
ibmcloud schematics policy list [--profile PROFILE] [--limit LIMIT] [--offset OFFSET] [--output OUTPUT]
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--profile 또는 -r |
선택사항 | 반환할 세부 정보 수준입니다. 올바른 값은 summary , detailed , ids 입니다. 기본값은 summary 입니다. |
--limit 또는 -l |
선택사항 | 나열할 수 있는 최대 정책 수입니다. 음수 값이 설정되면 무시됩니다. 이 숫자는 1과 200 사이의 양의 정수여야 합니다. 기본값은 -1 입니다. |
--offset or -m |
선택사항 | 목록의 오프셋입니다. 음수 값이 설정되면 무시됩니다. 기본값은 -1 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics policy list --profile ids092030
ibmcloud schematics policy update
정책 ID를 사용하여 기존 정책을 업데이트합니다.
구문
ibmcloud schematics policy update --id POLICY_ID [--kind POLICY_KIND] [--description DESCRIPTION] [--resource-group RESOURCE_GROUP] [--tags TAGS] [--file FILE] [--output OUTPUT]
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 정책의 ID입니다. |
--kind 또는 -k |
선택사항 | 정책 결정을 관리하고 도출하기 위한 정책 유형입니다. 지원되는 곳은 agent_assignment_policy 입니다. |
--description 또는 -d |
선택사항 | Schematics 사용자 지정 정책에 대한 설명입니다. |
--resource-group 또는 -r |
선택사항 | 정책의 자원 그룹 이름 또는 ID입니다. |
--tags 또는 -t |
선택사항 | 정책 태그입니다. 이 플래그는 에이전트 정책을 검색하고 더 빨리 찾기 위해 여러 번 사용할 수 있습니다. |
--file 또는 -f |
선택사항 | 정책의 정의가 포함된 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하면 JSON 만 지원됩니다. |
예
ibmcloud schematics policy update --id <AGENT_ID> --description PolicyDescriptionUpdated
BYOK 또는 KYOK 명령 구성
IBM Cloud 키 관리 서비스(KMS), IBM Key Protect (BYOK), Hyper Protect Crypto Services (KYOK)의 암호화 키를 사용하여 Schematics 에 저장된 데이터를 암호화하고 보호할 수 있습니다. 민감한 데이터를 보호하는 방법에 대한 자세한 내용은 Schematics에서 민감한 데이터 보호하기, Schematics 에서 민감한 데이터 보호하기를 참조하세요.
전제조건
키 관리 시스템에는 특정 위치 및 지역에서 생성된 인스턴스가 나열됩니다. KMS 활동을 수행하려면 다음 전제조건을 따라야 합니다.
KYOK
또는BYOK
가 있어야 합니다. IBM Key Protect 키를 작성하려면 BYOK 작성 을 참조하십시오. IBM Cloud Hyper Protect Crypto Services 키를 작성하려면 KYOK 작성 을 참조하십시오.- Schematics 서비스에 루트 키를 추가 해야 합니다.
- Schematics 서비스의
BYOK
및KYOK
을(를) 통합하려면 서비스 대 서비스 권한을 구성해야 합니다.
KMS 설정은 일회성 설정입니다. KMS 설정을 업데이트하려면 지원 티켓을 열어야 합니다.
ibmcloud schematics kms instance ls
키가 작성되는 위치 및 암호화된 스키마(KYOK
또는 BYOK
)를 사용하여 IBM Cloud 또는 Key Protect를 찾으려면 Hyper Protect Crypto Services 계정의 모든 KMS 인스턴스를 나열하십시오.
구문
ibmcloud schematics kms instances ls --location LOCATION_NAME --scheme ENCRYPTION_SCHEME [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--location 또는 -l |
필수 | Schematics 위치 이름을 설정하십시오. 지원되는 값은 US 또는 EU 입니다. |
--scheme 또는 -s |
필수 | 암호화 스키마를 지정하십시오. 지원되는 값은 KYOK 또는 BYOK 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics kms instances ls -l US -s byok
ibmcloud schematics kms enable
KMS를 사용하여 특정 위치에서 데이터를 암호화할 수 있습니다. Schematics 에 대한 고객 관리 키를 사용 설정하는 방법에 대한 자세한 내용은 키 사용 설정을 참조하세요.
개인용 엔드포인트, CRN
, 기본 CRK
및 보조 CRK
를 사용하여 위치에 대한 KMS 설정을 업데이트하십시오. KMS 설정은 한 번만 업데이트할 수 있습니다. 예를 들어, 지역(예: North America
)에 API 엔드포인트를 사용하는 경우 us-south
또는 us-east
에서 작성되는
항목만 검색됩니다.
구문
ibmcloud schematics kms enable --location LOCATION_NAME --scheme ENCRYPTION_SCHEME --group RESOURCE_GROUP --primary_name PRIMARY_KMS_NAME --primary_crn PRIMARY_KEY_CRN --primary_endpoint PRIMARY_KMSPRIVATEENDPOINT [--secondary_name SECONDARY_KMS_NAME][--secondary_crn SECONDARY_KEY_CRN] [--secondary_endpoint SECONDARY_KMSPRIVATEENDPOINT] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--location 또는 -l |
필수 | Schematics 위치 이름을 설정하십시오. 지원되는 값은 US 또는 EU 입니다. |
--scheme 또는 -s |
필수 | 암호화 스키마를 지정하십시오. 지원되는 값은 KYOK 또는 BYOK 입니다. |
--group 또는 -g |
필수 | 리소스 그룹 이름을 지정하십시오. 기본값은 Default 입니다. |
--primary_name 또는 --pn |
필수 | 기본 KMS 이름을 지정하십시오. |
--primary_crn 또는 --pc |
필수 | 기본 키 CRN 이름을 지정하십시오. |
--primary_endpoint 또는 --pe |
필수 | 기본 KMS 개인용 엔드포인트를 지정하십시오. |
--secondary_name 또는 --sn |
선택사항 | 보조 KMS 이름을 지정하십시오. |
--secondary_crn 또는 --sc |
선택사항 | 보조 키 CRN을 지정하십시오. |
--secondary_endpoint 또는 --se |
선택사항 | 보조 KMS 개인용 엔드포인트를 지정하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics kms enable -l US -s byok -g Default -pn Key-Protect-south -pc crn:v1:bluemix:public:kms:us-south:lalalalal -pe https://private.us-south.kms.cloud.ibm.com
ibmcloud schematics kms info
KYOK
또는 BYOK
가 있는 API 엔드포인트에서 KMS를 검색하십시오. 예를 들어, 지역(예: North America
)에 API 엔드포인트를 사용하는 경우 us-south
또는 us-east
에서 작성되는 항목만 검색됩니다. info
명령줄을 실행하려면 계정에서 kms instances
을 활성화해야 합니다.
구문
ibmcloud schematics kms info --location LOCATION_NAME [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--location 또는 -l |
필수 | Schematics 위치 이름을 설정하십시오. 지원되는 값은 US 또는 EU 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics kms info -l US
일반 명령
IBM Cloud Schematics 명령행 플러그인에 대한 도움말 및 버전 정보를 찾으려면 다음과 같은 일반 명령을 사용하십시오.
ibmcloud schematics help
지원되는 IBM Cloud Schematics 명령행 명령을 표시합니다.
구문
ibmcloud schematics help [command]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--help 또는 -h |
필수 | 지원되는 명령을 나열합니다. |
command |
선택사항 | 명령 세부사항을 페치할 명령의 이름을 지정하십시오. |
예
ibmcloud schematics help
ibmcloud schematics version
클라우드 리소스에서 Schematics 작업을 실행하는 데 사용되는 IBM Cloud Provider Plug-in for Terraform, Ansible, Helm, Kubernetes 와 같은 지원되는 모든 오픈 소스 프로젝트의 버전을 Schematics 에 나열합니다.
구문
ibmcloud schematics version [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--output 또는 -o |
선택사항 | CLI 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics version --output json > "<filename.json>"
인벤토리 명령
Schematics 조치와 함께 사용되는 IBM Cloud Schematics 인벤토리를 작성, 업데이트, 나열, 삭제 및 작업하기 위한 명령을 검토하십시오.
ibmcloud schematics inventory create
Schematics 조치와 함께 사용할 수 있는 IBM Cloud Schematics 에서 자원 인벤토리 를 작성하십시오. 리소스 인벤토리에는 Ansible 플레이북을 실행할 모든 대상 호스트가 포함되어 있습니다. 인벤토리는 페이로드 파일 또는 대화식 모드를 사용하여 작성할 수 있습니다.
구문
ibmcloud schematics inventory create --name INVENTORY_NAME [--description DESCRIPTION] [--location GEOGRAPHY] [--resource-group RESOURCE_GROUP] [--inventories-ini INVENTORY_INI_FILE] [--resource-query RESOURCE_QUERY_ID] [--file FILE_NAME ] [--output OUTPUT] [--no-prompt]
대상 호스트 세부사항을 사용하려면 --inventories-ini
파일 경로 또는 인벤토리에 대한 --resource-query
ID를 전달해야 합니다.
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--name 또는 -n |
필수 | 고유한 리소스 인벤토리 이름입니다. |
--description 또는 -d |
선택사항 | 인벤토리에 대한 간략한 설명입니다. |
--location 또는 -l |
선택사항 | 리소스 인벤토리를 저장할 위치(예: us-south , us-east , eu-de , eu-gb ). Schematics의 데이터 저장에 대한 자세한 정보는 내 정보는 어디에 저장됩니까?를 참조하십시오. |
resource-group 또는 -r |
선택사항 | 조치를 작성할 리소스 그룹의 이름입니다. |
--inventories-ini 또는 -y |
선택사항 | 모든 대상 호스트가 지정된 리소스 인벤토리 파일의 파일 경로입니다. 리소스 인벤토리 파일은 INI 형식으로 제공해야 합니다. 정적 리소스 인벤토리 파일을 작성하는 방법에 대한 자세한 정보는 정적 인벤토리 파일 작성을 참조하십시오. |
--resource-query |
선택사항 | 작성한 리소스 조회의 ID를 입력하십시오. 리소스 쿼리는 Schematics 워크스페이스로 만든 클라우드 리소스를 사용하여 리소스 인벤토리를 동적으로 구축하는 데 도움이 됩니다. 리소스 조회를 작성하려면 ibmcloud schematics resource-query create 명령을
참조하십시오. 리소스 조회 ID를 여러 개 입력하려면 --resource-query id1 --resource-query id2 를 사용하십시오. |
--file 또는 -f |
선택사항 | 작성할 리소스 인벤토리가 지정된 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 인벤토리를 작성하려면 이 플래그를 설정하십시오. |
페이로드 파일 사용
inventory create
명령에 대한 특정 매개변수를 지정하는 페이로드 파일을 제공할 수 있습니다. 그런 다음 --file
명령 옵션을 사용하여 파일 이름을 명령에 전달합니다.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<INVENTORY_NAME>"
을(를) "myinventory"
(으)로 바꾸십시오.
구문
{
"name": "<INVENTORY_NAME>",
"description": "<DESCRIPTION",
"location": "<GEOGRAPHY>",
"resource_group": "<RESOURCE_GROUP>",
"resource_queries": [
"<RESOURCE_QUERY_ID>"
]
}
예
{
"name": "myinventory",
"description": "This is the resource inventory for production",
"location": "us-east",
"resource_group": "default",
"resource_queries": [
"default.RESOURCEQUERY.string.df3d8a47"
]
}
ibmcloud schematics inventory create --file inventory.json
대화식 모드 사용
명령 옵션 또는 페이로드 파일을 사용하여 인벤토리 세부사항을 입력하는 대신, 명령의 대화식 모드를 사용할 수도 있습니다. 이 모드에서는 Schematics에 인벤토리를 작성하는 데 필요한 값을 입력하는 프롬프트가 표시됩니다.
- 명령 옵션 없이 인벤토리를 작성하려면 다음 명령을 입력하십시오.
ibmcloud schematics inventory create
- 인벤토리 이름을 입력하고 리턴 키를 누르십시오.
- 인벤토리를 작성할 리소스 그룹을 입력하고 리턴 키를 누르십시오.
- 인벤토리를 생성할 위치를 입력합니다(예 **
us-south
**미국-동부, 유럽-북부 또는 유럽-영국 등 인벤토리를 생성할 위치를 입력합니다. 그런 다음 리턴 키를 누르십시오. - 작성된 인벤토리의 세부사항을 검토하십시오.
ibmcloud schematics inventory delete
자원 명세 ID를 사용하여 자원 명세 정의를 삭제하십시오.
구문
ibmcloud schematics inventory delete --id ACTION_ID [--force][--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 삭제할 인벤토리의 ID입니다. |
--force 또는 -f |
선택사항 | 사용자 확인 없이 강제로 삭제합니다. |
--no-prompt |
선택사항 | 사용자 프롬프트 없이 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics inventory delete --id us-east.INVENTORY.inventoryid12342
ibmcloud schematics inventory get
인벤토리 ID를 사용하여 기존 IBM Cloud Schematics 인벤토리의 상세 정보를 검색합니다.
구문
ibmcloud schematics inventory get --id ID [--profile PROFILE] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 자세한 정보를 나열할 리소스 인벤토리의 ID입니다. |
--profile 또는 -p |
선택사항 | 검색할 정보의 깊이입니다. 지원되는 값은 detailed 및 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 인벤토리의 세부사항을 검색하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics inventory get --id us-east.INVENTORY.inventoryid12342 --output json
ibmcloud schematics inventory list
계정의 현재 지역에 있는 모든 Schematics 인벤토리 목록을 검색합니다.
구문
ibmcloud schematics inventory list [--limit LIMIT] [--offset OFFSET] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--limit 또는 -l |
선택사항 | 나열할 최대 인벤토리 수입니다. 이 숫자는 1과 200 사이의 양의 정수여야 합니다. 기본값은 -1 입니다. |
--offset 또는 -m |
선택사항 | 인벤토리 목록에서 인벤토리의 위치입니다. 예를 들어, 계정에 세 개의 인벤토리가 있는 경우 이 명령은 이러한 인벤토리를 세 개의 요소가 포함된 목록으로 리턴합니다. 이 목록의 특정 인벤토리를 확인하려면 목록에서 해당 인벤토리의 위치 번호를 입력해야 합니다. 목록의 첫 번째 인벤토리를 나열하려면 0 을(를) 입력하십시오. 두 번째 인벤토리를 나열하려면 1 등을 입력하십시오.
음수는 지원되지 않으며 무시됩니다. 기본값은 -1 입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
예
ibmcloud schematics inventory list --output json
ibmcloud schematics inventory update
기존 리소스 인벤토리를 업데이트합니다.
구문
ibmcloud schematics inventory update --id ID --name INVENTORY_NAME [--description DESCRIPTION] [--location GEOGRAPHY] [--resource-group RESOURCE_GROUP] [--inventories-ini INVENTORY_INI_FILE] [--resource-query RESOURCE_QUERY_ID] [--file FILE_NAME ] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 업데이트할 리소스 인벤토리의 ID를 입력하십시오. |
--name 또는 -n |
필수 | 인벤토리의 고유 이름입니다. |
--description 또는 -d |
선택사항 | 인벤토리에 대한 간략한 설명입니다. |
--location 또는 -l |
선택사항 | IBM Cloud Schematics 서비스에서 지원하는 지리적 위치는 us-south , us-east , eu-de , 또는 eu-gb 입니다. |
resource-group 또는 -r |
선택사항 | 조치에 대한 리소스 그룹 이름입니다. |
--inventories-ini 또는 -y |
선택사항 | 호스트 세부사항이 포함되어 있는 INI 형식 파일의 파일 경로입니다. |
--resource-query |
선택사항 | 리소스 조회 ID를 전달합니다. ID를 여러 개 전달하려면 --resource-query id1 --resource-query id2 를 사용하십시오. |
--file 또는 -f |
선택사항 | 인벤토리의 정의를 포함하는 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 인벤토리를 업데이트하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics inventory update --id us-east.INVENTORY.inventory12312 --name inventoryname600 --description "Short description" --location us-east --resource-group Default --resource-query default.RESOURCEQUERY.string.12121 --output OUTPUT
자원 명세 자원 조회 명령
리소스 쿼리를 사용하여 작업 리소스 인벤토리를 동적으로 구축합니다. 자원 조회를 사용하면 Schematics 작업공간에서 대상 호스트 정보를 수집할 수 있습니다. 리소스 쿼리 및 조건에 대한 자세한 내용은 Schematics 작업에 대한 리소스 인벤토리 만들기를 참조하세요.
ibmcloud schematics resource query create
IBM Cloud Schematics에서 리소스 인벤토리를 빌드하는 데 사용할 수 있는 리소스 조회를 작성합니다. 리소스 조회는 페이로드 파일 또는 명령의 대화식 모드를 사용하여 작성할 수 있습니다. 리소스 조건은 리소스 조회를 사용하여 작성할 수 있습니다.
구문
ibmcloud schematics resource-query create --name RESOURCE_QUERY_NAME [--type RESOURCE_QUERY_TYPE] [--query-file QUERY_FILE_PATH] [--file FILE_NAME ] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--name 또는 -n |
필수 | 리소스 조회의 고유 이름입니다. |
--type 또는 -t |
선택사항 | 검색할 리소스의 유형입니다. 지원되는 값은 vsi 입니다. |
--query-file 또는 -f |
선택사항 | 리소스 조회의 세부사항이 지정된 JSON 파일의 경로입니다. 지원되는 조회 목록을 찾으려면 지원되는 리소스 조회를 참조하십시오. |
--file 또는 -f |
선택사항 | 작성할 리소스 조회의 세부사항이 지정된 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 리소스 조회를 작성하려면 이 플래그를 설정하십시오. |
페이로드 파일 사용
resource_query create
명령에 대한 특정 매개변수를 지정하는 페이로드 파일을 제공할 수 있습니다. 그런 다음 --file
명령 옵션을 사용하여 파일 이름을 명령에 전달합니다. 지원되는 리소스 조회 목록은 지원되는 리소스 조회를
참조하십시오.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<WORKSPACE_ID"
을(를) us-east.workspace.ID1231
(으)로 바꾸십시오.
구문
[{
"query_type": "workspaces",
"query_condition": [
{
"name": "workspace-id",
"value": "<WORKSPACE_ID>",
"description": "string"
},
{
"name": "resource-name",
"value": "<RESOURCE_NAME>",
"description": "string"
}
]
}]
예
[{
"query_type": "workspaces",
"query_condition": [
{
"name": "workspace-id",
"value": "us-east.workspace.ID1231",
"description": "string"
},
{
"name": "resource-name",
"value": "tf00vpc-pubpriv-frontend-vsi",
"description": "string"
}
]
}]
ibmcloud schematics resource-query create --name myquery --type vsi --query-file queries.json
대화식 모드 사용
명령 옵션 또는 페이로드 파일을 사용하여 리소스 조회 세부사항을 입력하는 대신, 명령의 대화식 모드를 사용할 수 있습니다. 이 모드에서는 Schematics에 리소스 조회를 작성하는 데 필요한 값을 입력하는 프롬프트가 표시됩니다. 리소스 조건은 리소스 조회를 사용하여 작성할 수 있습니다.
- 명령 옵션 없이 리소스 조회를 작성하려면 다음 명령을 입력하십시오.
ibmcloud schematics resource-query create
- 리소스 조회 이름을 입력하고 리턴 키를 누르십시오.
- 페이로드 파일의 경로를 입력하십시오. 샘플 페이로드 파일은 페이로드 파일 사용을 참조하십시오. 그런 다음 리턴 키를 누르십시오.
- 작성된 리소스 조회의 세부사항을 검토하십시오.
ibmcloud schematics resource query delete
IBM Cloud Schematics 서비스에서 리소스 조회 ID를 사용하여 리소스 조회 정의를 삭제합니다. 인벤토리가 작성된 위치와 지역, 리소스 그룹은 삭제할 수 있습니다. 또한 IP 주소가 허용 목록에 있는지도 확인하십시오.
구문
ibmcloud schematics resource-query delete --id ID [--force] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 삭제할 리소스 조회의 ID입니다. |
--force 또는 -f |
선택사항 | 사용자 확인 없이 강제로 삭제합니다. |
--no-prompt |
선택사항 | 사용자 프롬프트 없이 명령을 실행하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics resource-query delete --id us-east.INVENTORY.inventoryid12342
ibmcloud schematics resource query get
리소스 조회 ID를 사용하여 기존 IBM Cloud Schematics 리소스 조회의 정보를 검색합니다.
구문
ibmcloud schematics resource-query get --id ID [--profile PROFILE] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 검색할 리소스 조회의 ID입니다. |
--profile 또는 -p |
선택사항 | 검색할 정보의 깊이입니다. 지원되는 값은 detailed 및 summary 입니다. 기본값은 summary 입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 리소스 조회를 검색하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics resource-query get --id us-east.INVENTORY.inventoryid12342
ibmcloud schematics resource query list
계정에 대한 현재 지역에서 모든 Schematics 리소스 조회 목록을 검색합니다.
구문
ibmcloud schematics resource-query list [--limit LIMIT] [--offset OFFSET] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--limit 또는 -l |
선택사항 | 나열할 최대 리소스 조회 수입니다. 이 숫자는 1과 200 사이의 양의 정수여야 합니다. 기본값은 -1 입니다. |
--offset 또는 -m |
선택사항 | 리소스 조회 목록에서 리소스 조회의 위치입니다. 예를 들어, 계정에 세 개의 리소스 조회가 있는 경우 이 명령은 이러한 리소스 조회를 세 개의 요소가 포함된 목록으로 리턴합니다. 이 목록의 특정 리소스 조회를 확인하려면 목록에서 해당 리소스 조회의 위치 번호를 입력해야 합니다. 목록의 첫 번째 리소스 조회를 나열하려면 0 을(를) 입력하십시오. 두 번째 리소스 조회를 나열하려면 1 등을 입력하십시오. 음수는 지원되지 않으며 무시됩니다. 기본값은 -1 입니다. |
--output 또는 -o |
선택사항 | 출력 형식을 지정하십시오. JSON 형식만 지원됩니다. |
예
ibmcloud schematics resource-query list --output listoutput.json
ibmcloud schematics resource query update
리소스 조회 업데이트 또는 대체는 기존 IBM Cloud Schematics 리소스 조회의 정보를 업데이트하여 해당 리소스 조회의 사본을 작성하고 기존 리소스 조회를 다시 실행합니다.
구문
ibmcloud schematics resource-query update --id ID --name RESOURCE_QUERY_NAME [--type RESOURCE_QUERY_TYPE] [--query-file QUERY_FILE_PATH] [--file FILE_NAME ] [--output OUTPUT] [--no-prompt]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 리소스 조회 ID입니다. |
--name 또는 -n |
필수 | 리소스 조회의 고유 이름입니다. |
--type 또는 -t |
선택사항 | 리소스 조회의 유형입니다. 예: vsi |
--query-file 또는 -f |
선택사항 | 조회가 포함되어 있는 JSON 파일의 경로입니다. |
--file 또는 -f |
선택사항 | 인벤토리의 정의를 포함하는 JSON 파일의 경로입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--no-prompt |
선택사항 | 대화식 명령행 세션을 사용하지 않고 리소스 조회를 작성하려면 이 플래그를 설정하십시오. |
예
ibmcloud schematics resource-query update --id us-east.INVENTORY.inventory12312 --name inventoryname600 --description "Short description" --location us-east --resource-group Default --resource-query default.RESOURCEQUERY.string.12121
작업공간 명령
IBM Cloud Schematics 워크스페이스를 만들고 작업하는 데 사용할 수 있는 명령을 검토하세요.
ibmcloud schematics workspace action
작업을 시작한 사람의 사용자 ID, 상태 및 타임스탬프를 포함하여 워크스페이스에 대한 모든 활동(작업)을 검색합니다.
Terraform 실행 계획을 만들거나 Schematics 을 사용하여 Terraform 템플릿을 적용하면 Schematics 작업이 자동으로 생성되고 작업 ID가 할당됩니다. ibmcloud schematics logs
명령을 사용하여 이 조치의
로그를 검색하는 데 조치 ID를 사용할 수 있습니다.
구문
ibmcloud schematics workspace action --id WORKSPACE_ID [--act-id ACTION_ID] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 작업공간 활동을 검색할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--act-id 또는 -a |
선택사항 | 검색할 조치의 ID를 입력하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics workspace action --id myworkspace-a1aa1a1a-a11a-11
ibmcloud schematics workspace delete
계정의 현재 지역에서 작업공간을 삭제합니다. 워크스페이스를 삭제해도 이 워크스페이스로 프로비저닝한 클라우드 리소스는 제거되지 않습니다. IBM Cloud 대시보드에서 직접 리소스에 액세스하여 작업할 수 있지만 작업공간을 삭제한 후에는 IBM Cloud Schematics를 사용하여 리소스를 관리할 수 없습니다.
작업공간, 연관된 리소스 또는 둘 다를 삭제할 것인지 결정하십시오. 이 조치는 실행 취소할 수 없습니다. 작업공간을 제거하고 리소스를 보존하는 경우 리소스 목록 또는 CLI를 사용하여 리소스를 관리해야 합니다.
조치 | 작업공간 삭제 | 연관된 모든 리소스 삭제 |
---|---|---|
작업공간 삭제 | True | False |
리소스만 삭제 | False | True |
작업공간 및 작업공간에서 프로비저닝된 리소스 삭제 | True | True |
명령행 또는 리소스 목록을 사용하여 리소스가 영구 삭제되었으며 작업공간을 삭제하려고 함 | True | False |
구문
ibmcloud schematics workspace delete --id WORKSPACE_ID [--force]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 제거할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--force 또는 -f |
선택사항 | 명령행 프롬프트 없이 작업공간을 강제로 삭제합니다. |
예
ibmcloud schematics workspace delete --id myworkspace-a1aa1a1a-a11a-11
ibmcloud schematics workspace get
작업공간 ID, 이름, 상태, 버전, 생성 시간, 템플릿 ID, 커밋 ID, 암호화 상태, 암호화 CRN 등 기존 작업공간의 세부 정보를 모든 입력 변수의 값과 함께 검색합니다.
구문
ibmcloud schematics workspace get --id WORKSPACE_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 세부사항을 검색할 작업공간의 고유 ID입니다. 작업공간의 Resource ID 을(를) 찾으려면 ibmcloud schematics workspace list 명령을 실행하여 목록 서비스 인스턴스를 보십시오. 리소스 그룹에서 --id 플래그에 대해 Resource ID 을(를) 가져오십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics workspace get --id myworkspace-a1aa1a1a-a11a-11
ibmcloud schematics workspace import
올바른 자원 주소가 있는 기존 자원을 작업공간 상태 파일로 가져올 수 있습니다. 자원을 한 번만 단일 작업공간으로 가져왔는지 확인해야 합니다. 그렇지 않으면 자원이 여러 작업공간에 정의된 경우 원하지 않는 동작이 표시될 수 있습니다. import
명령 사용 방법에 대한 세부사항은 Terraform 문서 를 검토하십시오.
구문
ibmcloud schematics workspace import --id WORKSPACE_ID --options OPTIONS --address ADDRESS --resourceID RESOURCE_ID
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 가져오려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--options 또는 -o |
필수 | 명령행 플래그입니다. 예를 들어, -var-file xxxxx/tf 입니다. |
--address 또는 -adr |
필수 | 가져오려는 리소스 이름의 주소를 제공하십시오. |
--resourceID 또는 -rid |
필수 | 파일에서 가져와야 하는 리소스 ID를 제공하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
-options -var-file=schematics.tfvars
옵션을 사용하여 Schematics 에 저장된 작업공간 변수를 사용하여 자원을 가져오도록 지시하십시오.
예
ibmcloud schematics workspace import --id WID --address ibm_iam_access_group.accgrp --resourceID AccessGroupId-xxxxxx-xxxx-xxx-xxx-xxxx -o -var-file=schematics.tfvars
ibmcloud schematics workspace list
IBM Cloud 계정의 현재 지역에 대한 작업공간을 나열하고 작업공간에 대한 세부사항을 표시합니다. 목록 작업공간은 파일 캐시를 통해 모든 작업공간에 대해 매번 versions
API를 호출하여 루프에서 더 이상 사용되지 않음을 확인합니다.
구문
ibmcloud schematics workspace list [--limit LIMIT] [--offset OFFSET] [--output] [--region]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--limit 또는 -l |
선택사항 | 나열할 최대 작업공간 수입니다. 이 숫자는 1부터 시작하는 양의 정수여야 하며, 최대값은 200입니다. 기본값은 -1 입니다. |
--offset 또는 -m |
선택사항 | 작업공간의 목록에 있는 작업공간의 위치입니다. 예를 들어, 계정에 세 개의 작업공간이 있는 경우 이 명령은 이러한 작업공간을 세 개의 요소가 포함된 목록으로 리턴합니다. 이 목록에 있는 특정 작업공간을 보려면 목록에서 해당 작업공간의 위치 번호를 입력해야 합니다. 목록의 첫 번째 작업공간을 나열하려면 0 을(를) 입력하십시오. 두 번째 작업공간을 나열하려면 1 등을 입력하십시오.
음수는 지원되지 않으며 무시됩니다. 기본값은 -1 입니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
--region 또는 -r |
선택사항 | eu , us , eu-gb , eu-de , us-south 또는 us-east 와 같이 지역을 지정합니다. |
예
ibmcloud schematics workspace list --limit 10 --offset 20
ibmcloud schematics workspace new
GitHub 또는 GitLab 에서 테라폼 템플릿을 가리키는 Schematics 워크스페이스를 만듭니다. 테이프 아카이브 파일(.tar
)을 업로드하여 Terraform 템플리트를 제공하려는 경우, GitHub 저장소에 연결하지 않고 작업공간을 작성한 다음 ibmcloud schematics workspace upload
명령을 사용하여 템플리트를 제공할 수 있습니다.
Schematics은(는) 작업공간을 작성하기 위해 .tar
파일 전달을 지원하지 않습니다.
IBM Cloud Schematics는 분당, 호스트당, 고객당 50개의 API 요청을 지원합니다. 위치는 us-east
, us-south
, eu-gb
또는 eu-de
지역일 수 있습니다. 명령을 다시 호출하기 전에 대기해야 합니다.
작업공간을 작성하기 위해 JSON 파일에 작업공간 설정을 지정할 수 있습니다. JSON 파일이 이 명령에 설명된 구조를 따르는지 확인하십시오. 또한 워크스페이스와 작업을 만들거나 업데이트할 때 location
및 url
엔드포인트가 같은 지역을 가리키고 있는지 확인하세요. 위치 및 엔드포인트에 대한 자세한 정보는 내 정보가 저장되는 위치 를 참조하십시오.
IBM Cloud Schematics은(는) 이전 버전의 Terraform 사용을 중단합니다. 자세한 정보는 IBM Cloud Schematics에서 이전 버전의 Terraform 프로세스 사용 중단을 참조하십시오.
IBM Cloud Schematics 은 2024년 4월 2nd 주의 IBM Cloud Provider Plug-in for Terraform v1.2, v1.3 템플리트를 사용하여 작업공간 작성을 더 이상 사용하지 않습니다.
구문
ibmcloud schematics workspace new --file FILE_NAME --state STATE_FILE_PATH [--agent-id AGENT_ID] [--github-token GITHUB_TOKEN] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--file 또는 -f |
선택사항 | 작업공간을 구성하는 데 사용되는 로컬 시스템의 JSON 파일에 대한 상대 경로입니다. 자세한 내용이 포함된 샘플 JSON 파일에 대한 자세한 내용은 JSON 파일 생성 템플릿을 참조하세요. |
--state |
선택사항 | 로컬 시스템의 기존 Terraform 상태 파일에 대한 상대 경로입니다. 테라폼 상태 파일을 생성합니다: 1. ibmcloud schematics state pull 명령을 사용하여 기존 Terraform
상태 파일의 컨텐츠를 표시합니다.2. 명령줄 출력의 상태 파일 내용을 로컬 컴퓨터의 terraform.tfstate 이라는 이름의 파일에 복사합니다. 3. --state 명령 매개변수에 파일에 대한 상대 경로를 사용하십시오. 참고 Schematics 작업공간은
2MB미만의 terraform.tfstate 파일을 지원합니다. |
--github-token 또는 -g |
선택사항 | HTTPS Git 오퍼레이션에 대한 기능적인 개인 액세스 토큰을 입력하십시오. 예를 들어, --github-token ${FUNCTIONAL_GIT_KEY} 입니다. |
--agent-id 또는 --aid |
선택사항 | 작업공간이 작성되는 에이전트의 ID입니다. 에이전트는 인프라에서 워크스페이스 작업을 실행하는 데 도움을 줍니다. 자세한 정보는 Schematics 에이전트 를 참조하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
Schematics ibmcloud terraform
명령 사용 시 별칭 'terraform'이 더 이상 사용되지 않는다는 경고 및 사용 중단 메시지가 표시됩니다. 명령에 'schematics' 또는 'sch'를 사용합니다.
JSON 형식의 파일 템플리트 작성
Schematics은(는) 개인용 저장소에서 Terraform 모듈 템플리트 다운로드를 지원합니다. 자세한 정보는 개인용 원격 호스트에서 모듈 다운로드 지원을 참조하십시오.
작업공간 작성을 위해 example.json
파일에서 공유된 대로 JSON 파일을 작성하고 --file
플래그의 파일 이름과 함께 파일 경로를 전달할 수 있습니다. 테이블에 설명된 대로 example.json
의 모든 매개변수에 대한 설명입니다.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<workspace_name>"
을(를) "testworkspace"
(으)로 바꾸십시오.
예
{
"name": "<workspace_name>",
"type": [
"<terraform_version>"
],
"location": "<location>",
"description": "<workspace_description>",
"tags": [],
"template_repo": {
"url": "<github_source_repo_url>"
},
"template_data": [
{
"folder": ".",
"type": "<terraform_version>",
"env_values":[
{
"env_key1": "dummy_text"
},
{
"env_key2": "dummy_text"
}
],
"variablestore": [
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "string",
"secure": true,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "bool",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "list(string);",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "map(number)",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "tuple([string, list(string), number, bool])",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "any",
"secure": false,
"description":"<description>"
}
]
}
],
}
.tar
파일에 업로드하기 위한 JSON 예시
{
"name": "<workspace_name>",
"type": [
"<terraform_version>"
],
"location": "<location>",
"description": "<workspace_description>",
"tags": [],
"template_repo": {
"url": "<github_source_repo_url>"
},
"template_data": [
{
"folder": ".",
"type": "<terraform_version>",
"env_values":[
{
"env_key1": "dummy_text"
},
{
"env_key2": "dummy_text"
}
],
"variablestore": [
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "string",
"secure": true,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "bool",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "list(string)",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "map(number)",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "tuple([string, list(string), number, bool])",
"secure": false,
"description":"<description>"
},
{
"name": "<variable_name_x>",
"value": "<variable_value_x>",
"type": "any",
"secure": false,
"description":"<description>"
}
]
}
]
}
매개변수 | 필수 / 선택사항 | 설명 |
---|---|---|
workspace_name |
선택사항 | 작업공간의 이름을 입력하십시오. 문자 한계의 최대 길이는 1MB미만으로 설정됩니다. 자세한 정보는 작업공간 구조 설계를 참조하십시오. |
terraform_version |
선택사항 | Terraform 코드를 실행하는 데 사용하려는 Terraform 버전입니다. Terraform 버전 1.5를 사용하려면 terraform_v1.5 를 입력하고, Terraform 버전 1.4를 사용하려면 terraform_v1.4 를 입력하고, 이와 유사하게 terraform_v1.4 를 입력하십시오. 예를 들어, terraform_v1.5 를 지정하면 사용자에게 Terraform v1.5.0 , v1.5.1 또는 v1.5.7 등의 템플리트가 있을 수 있음을 의미합니다. Terraform 구성 파일은 사용자가 지정하는 Terraform 버전과 호환 가능해야 합니다. 이것은 필수 변수입니다. Terraform 버전을 지정하지 않으면 기본적으로 Schematics 템플릿에서 버전을
선택합니다. Schematics Terraform_v1.x 지원하며, HashiCorp 구성 언어(HCL) 릴리스( 30 to 45 days ) 이후에도 릴리스가 제공될 계획입니다. |
location |
선택 사항 | 워크스페이스를 만들 위치를 입력합니다. 이 위치에 따라 Schematics 조치가 실행되는 위치와 작업공간 데이터가 저장되는 위치가 결정됩니다. 위치를 입력하지 않으면 Schematics가 대상으로 지정한 IBM Cloud 지역을 기반으로 위치를 결정합니다. 대상으로 지정한 지역을 보려면 ibmcloud target --output json 을 실행하고 region 필드를 보십시오. 다른 지역을 타겟팅하려면 ibmcloud target -r <region> 을 실행하세요. 위치를 입력하는 경우 위치가 사용자가 대상으로 지정한 IBM Cloud 지역과 일치하는지 확인하십시오. |
description |
선택 사항 | 작업 공간에 대한 설명을 입력합니다. |
template_repo.url |
선택 사항 | GitHub 또는 GitLab 저장소에 URL 을 입력하여 Terraform 구성 파일이 저장되어 있는 저장소로 이동합니다. |
template_repo.branch |
선택 사항 | Terraform 구성 파일이 저장된 GitHub 또는 GitLab 브랜치를 입력합니다. 이제 template_repo 에서 블록에 표시된 대로 더 많은 매개 변수를 사용하여 URL 을 업데이트할 수도 있습니다. |
template_repo.datafolder |
선택 사항 | Git 리포지토리에 템플릿이 들어 있는 폴더의 이름을 입력합니다. |
template_repo.release |
선택 사항 | Terraform 구성 파일을 가리키는 GitHub 또는 GitLab 릴리스를 입력합니다. |
github_source_repo_url |
선택 사항 | GitHub 리포지토리 링크를 입력합니다. 이 링크는 master 분기, 다른 분기 또는 서브디렉토리를 가리킬 수 있습니다. GitHub 저장소 없이 작업공간을 작성하도록 선택하는 경우 작업공간은 드래프트 상태로 작성됩니다. 나중에 작업공간을 GitHub 저장소에 연결하려면 ibmcloud schematics workspace update 명령을 사용해야 합니다. 테이프 아카이브 파일(.tar )을 업로드하여 Terraform 템플리트를 제공하려는 경우, 작업공간을 작성한 후 URL을 빈 상태로 두고 ibmcloud schematics workspace upload 명령을 사용하십시오. Git 리포지토리에서 복제하려면 복제에 허용되는 파일 확장명과 차단된 파일 확장명을 참조하세요. |
env_values |
선택 사항 | bash 스크립트 또는 Terraform 작업을 실행하는 동안 적용할 환경 변수 목록입니다. 이 필드는 키 값 쌍의 목록으로 제공해야 합니다. 각 항목은 key = variable name 과 value = value 이 하나의 항목이 있는 맵입니다. bash 스크립트 파일을 사용하여 프로비저닝되는 IBM Cloud 카탈로그 오퍼링의 환경 변수를 정의할 수 있습니다. |
variable_name |
선택 사항 | Terraform 구성 파일에 선언한 입력 변수의 이름을 입력합니다. |
variable_type |
선택 사항 | Terraform v0.12 string , list , map , bool , number 및 list(type) , map(type) , object({attribute name=type,..}) , set(type) ,
tuple([type]) 과 같은 복잡한 데이터 유형을 지원합니다. |
variable_value |
선택 사항 | 기본 유형의 경우 bool , number , string , 복합 변수의 경우 HCL 형식과 같은 문자열로 값을 입력하고 .tfvars 파일에 제공한 대로 입력합니다. 예에 표시된 것과 같이, 값에 대해 HCL 형식의 이스케이프된 문자열을 입력해야 합니다. Terraform 구성
파일에서 변수를 선언하고 스키마에 값을 제공하는 방법에 대한 자세한 내용은 입력 변수를 사용하여 리소스를 사용자 지정하는 방법을 참조하세요. 예: |
secure |
선택 사항 | secure 매개변수를 true로 설정합니다. 기본적으로 이 매개 변수는 false로 설정되어 있습니다. |
val1 |
선택 사항 | 페이로드에서 계획, 적용 또는 삭제 단계에서 작업 공간에서 실행할 수 있는 환경 변수를 제공할 수 있습니다. 또한 값은 암호화되어 COS에 저장됩니다. |
IBM Cloud Schematics에서는 TF_PARALLELISM
, TF_LOG
와 같은 환경 변수 설정을 지원합니다. 환경 변수 목록 및 사용법에 대한 자세한 내용은 환경 변수 목록을 참조하세요.
예
ibmcloud schematics workspace new --file example.json
ibmcloud schematics refresh
작업공간에 대해 IBM Cloud 새로 고치기 조치를 수행하십시오. 새로 고침 작업은 작업 공간의 Terraform 상태 파일에 저장된 상태와 비교하여 계정의 클라우드 리소스의 유효성을 검사합니다. 다른 점이 발견되면 Terraform 상태 파일이 적절하게 업데이트됩니다.
구문
ibmcloud schematics refresh --id WORKSPACE_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 새로 고치고 조치를 실행할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics refresh --id myworkspace-a1aa1a1a-a11a-11
ibmcloud schematics state list
Terraform 상태 파일(terraform.tfstate
)에 문서화된 클라우드 리소스의 Name
, Type
, URL
, Taint Status
을 나열합니다.
Taint Status
는 오염(taint)됨(true) 또는 공백(false)을 리턴합니다.
구문
ibmcloud schematics state list --id WORKSPACE_ID [--output json]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | Terraform 상태 파일에 문서화된 클라우드 리소스를 나열할 워크스페이스의 고유 식별자입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics state list --id myworkspace-a1aa1a1a-a11a-11
ibmcloud schematics workspace taint
다음 적용 시 리소스를 다시 작성하도록 강제 실행하여 인스턴스 또는 리소스를 오염된 것(tainted)으로 수동으로 표시합니다. 오염(taint)은 상태 파일을 수정하지만 작업공간의 인프라는 수정하지 않습니다. 다음 계획을 수행하면 변경 사항이 다시 생성된 것으로 표시되고 다음 적용에서 변경 사항이 구현됩니다.
리소스의 오염(taint)된 상태를 보려면 ibmcloud schematics state list
명령을 실행해야 합니다. Taint Status
은(는) (true)의 경우 오염(taint)됨을 리턴하거나
(false)의 경우 공백을 리턴합니다.
구문
ibmcloud schematics workspace taint --id WORKSPACE_ID [--options OPTIONS] --address PARAMETER
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 다시 작성하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--options 또는 -o |
선택사항 | 표시하려는 옵션 플래그를 입력하십시오. |
--address 또는 -adr |
필수 | 오염(taint)으로 표시할 리소스의 주소를 입력하십시오. |
예
ibmcloud schematics workspace taint --id myworkspace-lalalalalalala-11 --address null_resource.sleep
ibmcloud schematics workspace untaint
다음 적용 시 리소스를 강제로 복원하여 인스턴스 또는 리소스를 untaint
로 수동으로 표시합니다. 다음 계획을 수행하면 변경 사항이 복원된 것으로 표시되고 다음 적용에서 변경 사항이 구현됩니다.
리소스의 오염(taint)된 상태를 보기 위해 ibmcloud schematics state list
명령을 실행할 수 있습니다. Taint Status
은(는) (true)의 경우 오염(taint)됨을
리턴하거나 (false)의 경우 공백을 리턴합니다.
구문
ibmcloud schematics workspace untaint --id WORKSPACE_ID [--options OPTIONS] [--address PARAMETER]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 다시 작성하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--options 또는 -o |
선택사항 | 표시하려는 옵션 플래그를 입력하십시오. |
--address 또는 -adr |
선택사항 | untaint 으로 표시할 리소스 주소를 입력합니다. |
{: caption="Schematics workspace untaint 플래그 "caption-side = "top"} |
예
ibmcloud schematics workspace untaint --id myworkspace-asdff1a1a-42145-11 --address null_resource.sleep
ibmcloud schematics workspace update
IBM Cloud Schematics은(는) 이전 버전의 Terraform 사용을 중단합니다. 자세한 정보는 IBM Cloud Schematics에서 이전 버전의 Terraform 프로세스 사용 중단을 참조하십시오.
기존 작업공간에 대한 세부사항(예: 작업공간 이름, 변수 또는 소스 제어 URL)을 업데이트합니다. IBM Cloud를 프로비저닝하거나 수정하려면 ibmcloud schematics plan
명령을 참조하십시오.
IBM Cloud Schematics는 분당, 호스트당, 고객당 50개의 API 요청을 지원합니다. 지역은 us-east
, us-south
, eu-gb
, 또는 eu-de
지역입니다. 명령을 다시 호출하기 전에 대기해야 합니다. 작업 공간 및 작업을 만들거나 업데이트할 때 location
및 url
엔드포인트가 같은 지역을 가리키고 있는지 확인하세요. 위치 및 엔드포인트에 대한 자세한 정보는 내 정보가 저장되는 위치 를 참조하십시오.
테이프 아카이브 파일(.tar
)을 업로드하여 Terraform 템플리트를 제공했고 템플리트를 업데이트하려는 경우, ibmcloud schematics workspace upload
명령을 사용해야 합니다.
구문
ibmcloud schematics workspace update --id WORKSPACE_ID [--file FILE_NAME] [--github-token GITHUB_TOKEN] [--pull-latest] [--output OUTPUT]
Pull-latest
플래그는 IBM Cloud 카탈로그에서 템플리트를 사용하여 작성된 작업공간에 지원되지 않습니다.
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 업데이트하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--file 또는 -f |
선택사항 | 작업공간에 대한 업데이트된 매개변수를 포함하는 로컬 시스템의 JSON 파일에 대한 상대 경로입니다. 자세한 내용이 포함된 샘플 JSON 파일에 대한 자세한 내용은 JSON 파일 업데이트 템플릿을 참조하세요. |
--github-token 또는 -g |
선택사항 | 개인용 Git 저장소에 액세스하기 위한 GitHub 토큰 값입니다. |
--pull-latest 또는 --pl |
선택사항 | GitHub 저장소에서 작업공간으로 최신 변경사항을 가져옵니다. 이 플래그가 설정된 경우 --file 플래그는 무시됩니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
JSON 형식의 파일 템플리트 업데이트
작업공간을 업데이트하기 위해 example.json
파일에서 공유된 JSON을 작성하고 --file
플래그에 파일 이름과 함께 파일 경로를 전달할 수 있습니다. example.json의 모든 매개변수에 대한 설명은 표에 설명되어 있습니다.
<...>
플레이스홀더를 실제 값으로 바꿔야 합니다. 예를 들어, "<workspace_name>"
을(를) "testworkspace"
(으)로 바꾸십시오.
example.json:
{
"name": "<workspace_name>",
"type": "<terraform_version>",
"description": "<workspace_description>",
"tags": [],
"resource_group": "<resource_group>",
"workspace_status": {
"frozen": "<true_or_false>"
},
"template_repo": {
"url": "<source_repo_url>"
},
"template_data": [
{
"folder": ".",
"type": "<terraform_version>",
"env_values":[
{
"env_key1": "dummy_text"
},
{
"env_key2": "dummy_text"
}
],
"variablestore": [
{
"name": "<variable_name1>",
"value": "<variable_value1>",
"type": "<variable_type1>",
"secure": true,
"use_default": true },
{
"name": "<variable_name2>",
"value": "<variable_value2>",
"type": "<variable_type2>",
"secure": false,
"use_default": true
}
]
}
],
}
매개변수 | 필수 / 선택사항 | 설명 |
---|---|---|
name |
선택사항 | 작업공간의 이름을 입력하십시오. 자세한 정보는 작업공간 구조 디자인을 참조하십시오. 작업공간의 이름을 업데이트하는 경우 작업공간의 ID는 변경되지 않습니다. |
type |
선택사항 | Terraform 코드를 실행하는 데 사용할 Terraform 버전입니다. Terraform 버전 1.5를 사용하려면 terraform_v1.5 를 입력하고, Terraform 버전 1.4를 사용하려면 terraform_v1.4 를 입력하십시오. 예를 들어, terraform_v1.5 를 지정하면 사용자에게 Terraform v1.5.0 ,
v1.5.1 또는 v1.5.7 등의 템플리트가 있을 수 있음을 의미합니다. Terraform 구성 파일은 사용자가 지정하는 Terraform 버전과 호환 가능해야 합니다. 이것은 필수 변수입니다. Terraform 버전을 지정하지 않으면 기본적으로 Schematics 템플릿에서 버전을 선택합니다. |
description |
선택사항 | 작업공간과 연관시킬 태그를 입력하십시오. 태그를 사용하면 작업 공간을 더 빨리 찾을 수 있습니다. |
resource_group |
선택사항 | 작업공간을 프로비저닝할 리소스 그룹을 입력하십시오. |
workspace_status |
선택사항 | 작업공간을 보류하거나 보류 해제하십시오. 작업공간이 보류되면 작업공간에 대한 변경이 사용 안함으로 설정됩니다. |
template_repo.url |
선택사항 | Terraform 구성 파일이 저장된 GitHub 또는 GitLab 저장소의 URL을 입력하십시오. |
template_repo.branch |
선택사항 | Terraform 구성 파일이 저장된 GitHub 또는 GitLab 분기를 입력하십시오. 이제 템플릿 저장소에서 블록에 표시된 대로 더 많은 매개 변수를 사용하여 URL 을 업데이트할 수도 있습니다. |
template_repo.datafolder |
선택사항 | 템플리트가 포함된 Git 저장소에 있는 폴더의 이름을 입력하십시오. |
template_repo.release |
선택사항 | Terraform 구성 파일을 가리키는 GitHub 또는 GitLab 릴리스를 입력하십시오. |
github_source_repo_url |
선택사항 | GitHub 저장소에 대한 링크를 입력하십시오. 이 링크는 master 분기, 다른 분기 또는 서브디렉토리를 가리킬 수 있습니다. |
template_data.folder |
선택사항 | Terraform 구성 파일에 선언된 입력 변수의 이름을 입력하십시오. |
template_data.type |
선택사항 | 테라폼 구성 파일에 선언한 입력 변수 유형의 이름을 입력합니다. |
template_data[0].env_values[i].va11 |
선택사항 | bash 스크립트 또는 Terraform 작업을 실행하는 동안 적용하려는 환경 변수 목록입니다. 이 필드는 키-값 쌍의 목록으로 제공되어야 합니다 (예: TF_LOG=debug ). 각 항목은 키가 환경 변수 이름이고 값이인 하나의 항목이 있는 맵입니다. |
template_data[0].env_values[i].val2 |
선택사항 | bash 스크립트 또는 Terraform 작업을 실행하는 동안 적용하려는 환경 변수 목록입니다. 이 필드는 키-값 쌍의 목록으로 제공되어야 합니다 (예: TF_LOG=debug ). 각 항목은 키가 환경 변수 이름이고 값이인 하나의 항목이 있는 맵입니다. |
template_data[0].env_values_metadata |
선택사항 | 환경 변수 메타데이터. |
template_data[0].variablestore[i].name |
선택사항 | Terraform 구성 파일에 선언된 입력 변수의 이름을 입력하십시오. |
template_data[0].variablestore[ii].type |
필수 | Terraform v0.12 string , list , map , bool , number 및 list(type) , map(type) , object({attribute name=type,..}) , set(type) ,
tuple([type]) 와 같은 복잡한 데이터 유형을 지원합니다. |
template_data[0].variablestore[iii].value |
선택사항 | bool 파일에 제공한 것과 같이, 복합 변수에 대한 값을 number , string , HCL , .tfvars 형식 등의 기본 유형에 대한 문자열로 입력하십시오. .tfvars 매개변수를 use_default 로 설정하여 true 의
기본값을 대체할 수 있습니다. 예에 표시된 것과 같이, 값에 대해 HCL 형식의 이스케이프된 문자열을 입력해야 합니다. Terraform 구성 파일에서 변수를 선언하고 회로도에 값을 제공하는 방법에 대한 자세한 내용은 입력 변수를 사용하여 리소스 및 변수 저장소 예제를 사용자 정의하는 방법을 참조하세요. |
template_data[0].variablestore[iv].secure |
선택사항 | secure 매개변수를 true로 설정하십시오. 기본적으로 이 매개변수는 false로 설정됩니다. |
template_data[0].variablestore[v].use_default |
선택사항 | use_default 매개변수를 true로 설정하여 기본 .tfvars 매개변수를 대체하십시오. 기본적으로 이 매개변수는 false로 설정됩니다. |
github_source_repo_url |
선택사항 | GitHub 저장소에 대한 링크를 입력하십시오. 이 링크는 master 분기, 다른 분기 또는 서브디렉토리를 가리킬 수 있습니다. |
변수 저장소의 예
"variablestore": [
{
"value": "[\n {\n internal = 800\n external = 83009\n protocol = \"tcp\"\n }\n ]",
"description": "",
"name": "docker_ports",
"type": "list(object({\n internal = number\n external = number\n protocol = string\n }))",
"use_default":true
},
예
ibmcloud schematics workspace update --id myworkspace-a1aa1a1a-a11a-11 --file myfile.json
ibmcloud schematics workspace update variables
IBM Cloud Schematics은(는) 이전 버전의 Terraform 사용을 중단합니다. 자세한 정보는 IBM Cloud Schematics에서 이전 버전의 Terraform 프로세스 사용 중단을 참조하십시오.
변수 업데이트 기능을 이용하면 기존 작업 공간에 대해 하나 이상의 입력 변수를 업데이트할 수 있습니다. 이름이나 소스 제어 URL 과 같은 작업 영역 메타데이터 변수는 업데이트할 수 없습니다. IBM Cloud를 프로비저닝하거나 수정하려면 ibmcloud schematics plan
명령을 참조하십시오.
구문
ibmcloud schematics workspace update-variables --id WORKSPACE_ID --template TEMPLATE_ID --file FILE_NAME [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 업데이트하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--file 또는 -f |
필수 | 업데이트할 워크스페이스 변수에 대한 업데이트된 매개변수가 포함된 로컬 컴퓨터의 JSON 파일의 상대 경로입니다. 자세한 내용이 포함된 샘플 JSON 파일에 대한 자세한 내용은 JSON 파일 업데이트 템플릿을 참조하세요. |
--template 또는 -tid |
필수 | 템플릿 ID를 입력하세요. Ibmcloud 도식 작업공간 가져오기를 사용하여 템플릿 ID를 가져옵니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
변수 저장 및 환경 값의 예
exampleupdatevar.json:
{
"variablestore":
[
{
"name": "vpc_name",
"secure": true,
"value": "vpc_name_snsitive_updated",
"type": "string",
"description": ""
},
{
"name": "IC_SCHEMATICS_WORKSPACE_ID",
"secure": false,
"value": "test_updated",
"type": "string",
"description": ""
}
],
"env_values":
[
{
"name": "TF_LOG",
"value": "debug_working",
"secure": false,
"hidden": false
},
{
"name": "TF_ENV",
"value": "test_working",
"secure": false,
"hidden": false
}
]
}
예
ibmcloud schematics workspace update-variables --id myworkspace-a1aa1a1a-a11a-11 --template myworkspacetemplateid-1000 --file exampleupdatevar.json
ibmcloud schematics workspace upload
테이프 아카이브 파일(.tar
)을 Schematics 작업공간에 업로드하여 Terraform 템플리트를 제공합니다. .tar
는 Cloud Shell 명령을 지원합니다.
시작하기 전에 GitHub 또는 GitLab 저장소에 대한 링크 없이 작업공간을 작성했는지 확인하십시오.
구문
ibmcloud schematics workspace upload --id WORKSPACE_ID --file FILE_NAME --template TEMPLATE_ID [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 테이프 아카이브 파일을 업로드하려는 작업공간의 고유 ID(.tar )입니다. 작업공간의 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--file 또는 -f |
필수 | .tar 파일이 저장된 로컬 시스템에 대한 전체 파일 경로를 입력하십시오. |
--template 또는 -tid |
필수 | Terraform 상태 파일의 컨텐츠를 표시할 Terraform 템플리트의 고유 ID입니다. 템플리트의 ID를 찾으려면 ibmcloud schematics workspace get --id <workspace_ID> 을(를) 실행하고 명령행 출력의 Template Variables for: 필드에서 템플리트 ID를 찾으십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics workspace upload --id myworkspace-a1aa1a1a-a11a-11 --file /Users/myuser/Documents/mytar/vpc.tar --template 25111111-0000-4c
TAR
가 지정된 TAR
명령을 사용하여 템플리트 저장소의 tar -cvf vpc.tar $TEMPLATE_REPO_FOLDER
파일 작성
변수 값의 예
"variablestore": [
{
"value": "[\n {\n internal = 800\n external = 83009\n protocol = \"tcp\"\n }\n ]",
"description": "",
"name": "docker_ports",
"type": "list(object({\n internal = number\n external = number\n protocol = string\n }))"
},
]
작업공간 작업 명령
Schematics 를 실행하여 클라우드 자원을 생성, 업데이트, 삭제합니다. 익숙한 Terraform 시맨틱을 사용하여 클라우드 리소스의 라이프사이클을 관리하기 위해 Terraform 작업공간을 계획, 적용 및 영구 삭제합니다.
ibmcloud schematics apply
워크스페이스 Terraform 템플릿을 적용하면 리소스가 IBM Cloud 에서 프로비저닝, 수정 또는 제거됩니다. 적용 조작 중에 작성된 임시 파일은 향후 조작을 위해 지속 될 수 있습니다.
Schematics 적용 작업을 수행하려면 워크스페이스가 비활성, 활성, 실패 또는 중지 상태여야 합니다. 작업공간 상태에 대한 자세한 정보는 작업공간 상태 다이어그램 을 참조하십시오.
Terraform 작업이 실행 중인 동안에는 작업공간이 잠기고 실행이 완료될 때까지 작업공간을 변경할 수 없습니다.
구문
ibmcloud schematics apply --id WORKSPACE_ID [--target RESOURCE1] [--target RESOURCE2] [--var-file PATH_TO_VARIABLES_FILE] [--force] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | IBM Cloud에서 적용할 소스 제어 저장소의 Terraform 템플리트를 가리키는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--target 또는 -t |
선택사항 | Terraform 리소스 주소(예: ibm_is_instance.vm1 )를 입력하여 Terraform 구성 파일의 특정 리소스 작성을 대상으로 지정하십시오. 구성 파일에 정의된 다른 모든 리소스는 생성되거나 업데이트되지 않습니다. 여러 리소스 작성을 대상으로 하려면 --target <resource1> --target <resource2> 구문을
사용하십시오. 대상으로 지정된 리소스가 count 속성을 지정하고 리소스 주소(예: ibm_is_instance.vm1[1] )에 어떠한 색인도 지정되지 않은 경우 동일한 리소스 이름을 공유하는 모든 인스턴스가 작성을 위한 대상으로 지정됩니다. |
--var-file 또는 --vf |
선택사항 | 로컬 머신에 작성한 terraform.tfvars 파일에 대한 경로입니다. 이 파일을 사용하여 예를 들어 IBM Cloud API 키 또는 IBM Cloud 클래식 인프라에 연결하기 위한 인증 정보와 같은 민감한 정보를 <key>=<value> 형식으로 저장합니다. 변수는 단일 행 형식으로 정의해야 합니다 (예: availability_zone_names = ["us-east-1a","us-west-1c"] ).
이 파일에 정의된 모든 키 값 쌍은 Terraform CLI를 초기화할 때 자동으로 Terraform에 로드됩니다. 여러 개의 tfvars 파일을 지정하려면 --var-file TFVARS_FILE_PATH1 --var-file TFVARS_FILE_PATH2 를 지정하십시오. |
--force 또는 -f |
선택사항 | 사용자 프롬프트 없이 이 명령을 강제로 실행합니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics apply --id myworkspace-a1aa1a1a-a11a-11 --target ibm_is_instance.vm1 --var-file ./terraform.tfvars
ibmcloud schematics destroy
Schematics 워크스페이스를 사용하여 프로비저닝한 클라우드 리소스는 활성 상태인 경우에도 제거합니다. 기본적으로 이 명령은 미리보기할 모든 자원을 나열한 다음, 삭제 확인을 받습니다. 삭제 명령에서 ' --force or -f
' 플래그를 사용하면 삭제하려는 자원의 미리보기를 볼 수 없습니다.
이 명령은 주의해서 사용하십시오. 명령을 실행한 후에는 클라우드 리소스 제거를 되돌릴 수 없습니다. 프로비저닝된 스토리지 또는 데이터베이스에 데이터를 쓴 경우 데이터를 지속하기 위한 백업을 작성해야 합니다.
Schematics 영구 삭제 조치를 수행하려면 작업공간의 상태는 활성, 실패 또는 중지됨이어야 합니다.
구문
ibmcloud schematics destroy --id WORKSPACE_ID [--target RESOURCE1] [--target RESOURCE2] [--force] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 제거하려는 클라우드 리소스를 지정하는 소스 리포지토리의 Terraform 템플릿을 가리키는 작업 공간의 고유 식별자입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--target 또는 -t |
선택사항 | Terraform 리소스 주소(예: ibm_is_instance.vm1 )를 입력하여 특정 리소스 삭제를 대상으로 지정하십시오. 작업공간의 기타 모든 리소스가 변경되지 않은 상태로 유지됩니다. 여러 리소스의 삭제를 대상으로 하려면 --target <resource1> --target <resource2> 구문을 사용하십시오. 대상으로 지정된 리소스가
count 속성을 지정하고 리소스 주소(예: ibm_is_instance.vm1[1] )에 어떠한 색인도 지정되지 않은 경우 동일한 리소스 이름을 공유하는 모든 인스턴스가 삭제를 위한 대상으로 지정됩니다. 또한 연결된 서브넷이 삭제된 경우에만 VPC를 삭제할 수 있는 것과 같이 종속 리소스가 삭제된 경우에만 대상으로 지정된 리소스를 삭제할 수 있는 경우, 모든 종속
리소스도 삭제를 위한 대상으로 지정됩니다. |
--force 또는 -f |
선택사항 | 사용자 프롬프트 없이 이 명령을 강제로 실행합니다. 삭제하려는 자료의 미리보기를 볼 수 없습니다. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics destroy --id myworkspace-a1aa1a1a-a11a-11 --target ibm_is_vpc.myvpc
ibmcloud schematics logs
Schematics 워크스페이스 또는 특정 워크스페이스 작업 ID에 대한 Terraform 로그 파일을 검색합니다. Terraform 템플리트 문제 또는 리소스 프로비저닝, 수정 또는 삭제 프로세스 중에 발생하는 문제를 해결하는 데 로그 파일을 사용하십시오.
구문
ibmcloud schematics logs --id WORKSPACE_ID [--act-id ACTION_ID]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | Terraform 로그 파일을 검색할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--act-id 또는 -1 |
선택사항 | Terraform 로그를 검색할 조치의 ID입니다. 조치 ID 목록을 찾으려면 ibmcloud schematics workspace action --id WORKSPACE_ID 명령을 실행하십시오. |
예
ibmcloud schematics logs --id myworkspace-a1aa1a1a-a11a-11 --act-id 9876543121abc1234cdst
ibmcloud schematics output
작업공간의 Terraform 출력 값을 검색합니다. 테라폼 템플릿에서 출력 값을 정의하여 다른 워크스페이스에서 액세스할 수 있도록 하려는 데이터를 포함할 수 있습니다.
구문
ibmcloud schematics output --id WORKSPACE_ID[--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | Terraform 출력 값을 나열할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics output --id myworkspace3_2-31cf7130-d0c4-4d
ibmcloud schematics plan
소스 리포지토리에서 Terraform 템플릿을 스캔하고 이 템플릿을 이미 배포된 클라우드 리소스와 비교하세요. 명령줄 출력에는 구성 파일에 설명된 상태를 달성하기 위해 추가, 수정, 유지 또는 제거해야 하는 클라우드 리소스가 표시됩니다.
Schematics 플랜 조치를 수행하려면 작업공간의 상태는 비활성, 활성, 실패 또는 중지됨이어야 합니다.
Terraform 실행 플랜을 작성하는 중에는 작업공간을 변경할 수 없습니다.
구문
ibmcloud schematics plan --id WORKSPACE_ID [--var-file PATH_TO_VARIABLES_FILE] [--output OUTPUT]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 소스 저장소에 있는 스캔할 Terraform 템플리트를 가리키는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--var-file 또는 --vf |
선택사항 | 로컬 머신에 작성한 terraform.tfvars 파일에 대한 경로입니다. 이 파일을 사용하여 예를 들어 IBM Cloud API 키 또는 IBM Cloud 클래식 인프라에 연결하기 위한 인증 정보와 같은 민감한 정보를 <key>=<value> 형식으로 저장합니다. 변수는 단일 행 형식으로 정의해야 합니다 (예: availability_zone_names = ["us-east-1a","us-west-1c"] ).
이 파일에 정의된 모든 키 값 쌍은 Terraform CLI를 초기화할 때 자동으로 Terraform에 로드됩니다. 여러 개의 tfvars 파일을 지정하려면 --var-file TFVARS_FILE_PATH1 --var-file TFVARS_FILE_PATH2 를 지정하십시오. |
--output 또는 -o |
선택사항 | 명령행 출력을 JSON 형식으로 리턴합니다. 현재 JSON 파일 형식만 지원됩니다. |
예
ibmcloud schematics plan --id myworkspace-a1aa1a1a-a11a-11
작업공간 중지 명령
plan
, apply
또는 destroy
와 같은 작업공간 작업을 호출한 후 실행 중인 작업을 중지하거나 자원 프로비저닝을 중지할 수 있습니다. 장기 실행 작업을 중지하거나 취소할 때, 먼저 작업 로그를 확인하여 작업이 실제로 정지되어 중지해야 하는지 또는 완료하는 데 시간이 걸리는 장기 실행 조작을 수행하는지 판별하는 것이 좋습니다.
Schematics 는 사용자가 즉시 및 중지 조작의 영향을 받도록 실행 중인 작업을 (gracefully) stop
, force-stop
또는 terminate
할 수 있도록 하는 여러 옵션을 제공합니다.
(gracefully) stop
, force-stop
또는 terminate
작업에 대한 명령을 검토하십시오.
ibmcloud schematics workspace job stop
실행을 종료하기 위해 인터럽트 신호를 Terraform으로 전송하여 실행 중인 작업공간 작업을 중지합니다.
구문
ibmcloud schematics workspace job stop --id WORKSPACE_ID --job-id JOB_ID [--stop] [--force-stop] [--terminate]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 업데이트할 작업공간 ID. |
--job-id 또는 --jid |
필수 | 작업의 작업 ID. |
--stop, |
선택사항 | 보류 중인 대기열에서 작업을 제거합니다. |
--force-stop 또는 --fs |
선택사항 | 엔진의 테라폼 실행에 킬 신호를 보내고 실행을 즉시 중지하려고 시도합니다. |
--terminate 또는 -t |
선택사항 | 엔진을 중단하고 작업을 중지된 것으로 표시하며 작업공간을 잠금 해제합니다. 이 플래그를 사용하면 데이터가 저장되지 않습니다. |
예
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --force-stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --terminate --job-id <JOB_ID>
작업공간 상태 파일 명령
작업공간의 Terraform 상태 파일(terraform.tfstate
)에 대한 작업을 수행하는 데 사용할 수 있는 명령을 검토하십시오.
작업공간 작성 중에 기존 Terraform 상태 파일을 가져올 수 있습니다. 자세한 정보는 ibmcloud workspace new
명령을 참조하십시오.
ibmcloud schematics state pull
작업공간의 특정 Terraform 템플리트에 대한 Terraform 상태 파일(terraform.tfstate
)의 컨텐츠를 표시합니다.
구문
ibmcloud schematics state pull --id WORKSPACE_ID --template TEMPLATE_ID
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 명령을 실행하려는 작업공간의 고유 ID입니다. |
--template 또는 --tid |
필수 | Terraform 상태 파일의 컨텐츠를 표시할 Terraform 템플리트의 고유 ID입니다. 템플리트의 ID를 찾으려면 ibmcloud schematics workspace get --id <workspace_ID> 을(를) 실행하고 명령행 출력의 Template Variables for: 필드에서 템플리트 ID를 찾으십시오. |
예
ibmcloud schematics state pull --id myworkspace-a1aa1a1a-a11a-11 --template a1aa11a1-11a1-11
ibmcloud schematics workspace state show
Terraform이 표시되면 작업공간의 상태 또는 플랜의 읽기 가능한 출력을 제공합니다. 현재 상태 및 계획된 조작 상태를 확인하는 데 사용할 수 있습니다. ibmcloud schematics logs
명령을 사용하여 로그를 검색하려면 작업공간
ID를 사용해야 합니다.
구문
ibmcloud schematics workspace state show --id WORKSPACE_ID --address ADDRESS [--options OPTIONS]
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 업데이트할 작업공간의 고유 ID입니다. |
--address 또는 -adr |
필수 | 표시할 상태의 단일 리소스를 가리키는 주소를 입력하십시오. |
--options 또는 -o |
선택사항 | 명령행 플래그를 입력하십시오. |
예
ibmcloud schematics workspace show --id myworkspace-a1aa1a1a-a11a-11 --address null_resource.sleep
ibmcloud schematics workspace state mv
상태 파일 내에서 자원의 상태를 이동하는 경우. 작업공간이 계속 작동하지만 다음 계획 또는 적용 조작이 상태 파일에서 자원 또는 인스턴스를 찾지 못합니다. 템플리트를 변경하지 않으면 Terraform에서 다음 조작 시 리소스를 다시 작성하는 것을 볼 수 있습니다.
ibmcloud schematics workspace state mv --id WORKSPACE_ID --source SOURCE --destination DESTINATION
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 이동할 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--source 또는 -s |
필수 | 이동할 항목의 소스 주소를 입력하십시오. |
--destination 또는 -d |
필수 | 항목의 대상 주소를 제공하십시오. |
예
ibmcloud schematics workspace state mv --id myworkspace-a1aa1a1a-a11a-11 -s testsourceresource -d null_resource.sleep
ibmcloud schematics workspace state rm
상태 파일에서 자원 또는 인스턴스의 상태를 제거하는 경우. 작업공간이 계속 작동하지만 다음 계획 또는 적용 조작이 상태 파일에서 자원 또는 인스턴스를 찾지 못합니다. 템플리트를 변경하지 않으면 Terraform에서 다음 조작 시 리소스를 다시 작성하는 것을 볼 수 있습니다.
ibmcloud schematics workspace state rm --id WORKSPACE_ID [--options OPTIONS] --address PARAMETER
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 인스턴스 또는 리소스를 제거하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--options 또는 -o |
선택사항 | 제거하려는 옵션 플래그를 입력하십시오. |
--address 또는 -adr |
필수 | 오염(taint)으로 표시할 리소스의 주소를 입력하십시오. |
예
ibmcloud schematics workspace state rm --id myworkspace-a1aa1a1a-a11a-11 --address null_resource.sleep --destination null_resource.slept
작업공간 Terraform 명령
Terraform 명령을 실행하여 클라우드 자원을 조작하고 Schematics 상태를 수정할 수 있습니다.
작업공간 Terraform 명령은 UI에서 지원되지 않습니다.
이 표에서는 지원되는 Terraform 작업공간 명령의 요약을 제공합니다.
명령 | 설명 |
---|---|
show |
Terraform 상태 또는 플랜을 검사합니다. |
output |
Terraform 상태 파일에서 출력을 읽습니다. |
import |
기존 인프라를 Terraform으로 가져옵니다. |
taint |
재작성을 위해 리소스를 표시합니다. |
untaint |
리소스를 오염된 것(tainted)으로 표시하지 않습니다. |
state |
rm && mv 를 제거하거나 이동하기 위한 하위 명령을 작성하는 고급 상태 관리 명령입니다. |
Terraform 명령
Terraform 명령은 JSON 파일을 사용하여 입력을 지정하여 실행됩니다.
구문
ibmcloud schematics workspace commands --id WORKSPACE_ID --file FILE_NAME
명령 옵션
플래그 | 필수 / 선택사항 | 설명 |
---|---|---|
--id 또는 -i |
필수 | 명령을 실행하려는 작업공간의 고유 ID입니다. 작업공간 ID를 찾으려면 ibmcloud schematics workspace list 명령을 실행하십시오. |
--file 또는 --f |
필수 | Terraform 명령 목록이 포함되어 있는 JSON 파일의 경로입니다. |
Test.JSON
파일의 페이로드 샘플
{
"commands": [
{
"command": "state show",
"command_params": "data.template_file.test",
"command_name": "Test1",
"command_desc": "Showing state",
"command_onerror": "continue"
},
{
"command": "taint",
"command_params": "null_resource.sleep",
"command_name": "Test2",
"command_desc": "Marking taint",
"command_onerror": "continue"
},
{
"command": "untaint",
"command_params": "null_resource.sleep",
"command_name": "Test3",
"command_desc": "Marking untaint",
"command_onerror": "continue"
},
{
"command": "state list ",
"command_params": "",
"command_name": "Test4",
"command_desc": "Checking state list",
"command_onerror": "continue"
},
{
"command": "state rm ",
"command_params": "data.template_file.test",
"command_name": "Test5",
"command_desc": "Removing state",
"command_onerror": "continue"
}
],
"operation_name": "workspace Command",
"description": "Executing command"
}
이 표는 Commands
API, 명령행 및 API에 대한 JSON 파일의 키 매개변수 목록을 제공합니다.
키 | 필수 / 선택사항 | 설명 |
---|---|---|
command |
필수 | 명령을 제공합니다. 지원되는 명령은 show ,taint , untaint , state , import , output 입니다. |
command_params |
필수 | CLI 의 명령 이름에 대한 주소 매개변수입니다(예: 리소스 이름, 파일 이름의 절대 경로). API의 경우 command_params 에서 옵션 플래그와 주소 매개 변수를 보내야 합니다. |
command_name |
필수 | 명령 블록의 이름입니다. |
command_desc |
선택사항 | 명령 블록을 설명하는 텍스트입니다. |
command_onError |
선택사항 | 명령에 오류가 발생하는 경우 계속하거나 중단하기 위한 지시사항입니다. |
command_dependsOn |
선택사항 | 이전 명령에 대한 종속성입니다. |
command_status |
필수가 아님 | 명령이 실행된 상태를 표시합니다(success 또는 failure ). |
예
ibmcloud schematics workspace commands --id cli-sleepy-0bedc51f-c344-50 --file /<FILE_PATH>/Test.JSON
CLI 버전 히스토리
Schematics CLI 플러그인의 각 버전에 대한 변경사항 요약을 찾을 수 있습니다. 사용 가능한 명령과 옵션을 모두 사용할 수 있도록 CLI를 최신 상태로 유지하십시오.
버전 | 릴리스 날짜 | 변경사항 |
---|---|---|
1.12.26 | 2025년 4월 7일 | Schematics CLI 플러그인이 향상된 ibmcloud 회로도 파괴 미리보기, 하나의 파이프라인 기본 이미지 업데이트, 수정됨 nil pointer exception ibmcloud schematics action create,
ibmcloud schematics action update, ibmcloud schematics action get 작업. |
1.12.25 | 2025년 1월 10일 | Schematics CLI 플러그인은 ibmcloud 도식 작업공간 업데이트 변수 CLI 명령을 지원하여 기존 작업공간에 필요한 입력 변수만 업데이트합니다. 또한 ibmcloud의 스키마 파괴 명령에 미리보기 기능을 추가하여 모든 작업 자원을 확인하고 나열할 수 있도록 개선했습니다. IBM Cloud Schematics 작업 공간, 작업,
에이전트에 대한 명령 은 암호화 CRN과 암호화 상태( IBM Default , BYOK , KYOK 등) 세부 정보를 가져옵니다. |
1.12.24 | 2024년 7월 8일 | Schematics CLI 플러그인은 ' ca-tor 지역을 통해 토론토 엔드포인트를 타겟팅하도록 지원을 수정합니다. |
1.12.23 | 2024년 6월 11일 | Schematics CLI 플러그인은 ' iBM클라우드 워크스페이스 신청 ' 및 ' iBM클라우드 워크스페이스 플랜 ' 명령에서 ' --var-file 인수를 사용하는 동안 ' terraform.tfvars ' 파일 형식의 표시를 개선합니다. 국제화I18n 번역 지원이 업데이트되었습니다. |
1.12.22 | 2024년 5월 30일 | Schematics CLI 플러그인은 배포 리소스를 삭제하는 ' ibmcloud schematics agent destroy '을 지원합니다. 그리고 ' --force ' 매개 변수를 true로 설정하여 모든 에이전트 플로우를 삭제하여 워크스페이스 삭제 플로우와 병렬로 삭제되도록 합니다. |
1.12.21 | 2024년 4월 19일 | Schematics CLI 플러그인은 모든 CLI 명령어에서 ' --json 플래그를 더 이상 사용하지 않습니다. Also fixed the CLI v1.12.20 deprecation bug in the ibmcloud schematics workspace refresh or plan CLI commands. |
1.12.20 | 2024년 3월 25일 | Schematics CLI 플러그인은 Red Hat OpenShift 지원합니다 Kubernetes Service. |
1.12.18 | 2024년 3월 8일 | ' terraform_v1.5 ' 미만을 사용하는 작업 영역 명령 중 테라폼 사용 중단 경고 메시지 표시 , 에이전트 인프라 업데이트 지원 제거, ' ibmcloud schematics state list ' 명령 사용 시 ' index out of range ' 오류 수정. |
1.12.17 | 2024년 2월 14일 | Schematics 플러그인 설치가 Cloud Shell 지원하며, ' ibmcloud schematics workspace upload 명령이 이제 Cloud Shell 명령을 지원합니다. |
1.12.16 | 2024년 2월 7일 | ibmcloud schematics workspace list API 버전에 대한 캐싱을 지원합니다. terraform_v1.2 , ' terraform_v1.3 '
, ' terraform_v1.4 ' 사용 중단 메시지는 ' ibmcloud schematics workspace new ' 템플릿 생성을 위해 채워집니다. |
1.12.15 | 2024년 1월 24일 | 상담원 업데이트 API 요청에 ' refresh_token '을 지원하여 상담원 업데이트 명령의 버전 지원이 향상되었습니다. |
1.12.14 | 2024년 1월 10일 | 상담원 및 정책을 지원하기 위한 새로운 명령 및 번역이 추가되었습니다. 작업 공간 목록 명령 출력의 시스템 작업 공간은 숨겨집니다. 명령 출력에 상담원 작업 표시가 개선되었습니다. 상담원 버전에 ' /v1/versions ' API를 사용합니다. |
1.12.12 | 2023년 9월 17일 | Schematics 에이전트 생성 및 업데이트에 new flag --metadata 및 요청에 대한 HTTP 시간 제한을 구성하는 버그 수정. |
1.12.10 | 2023년 5월 22일 | Schematics 에이전트 업데이트 및 런타임 오류를 설정하는 ' agent list 명령 버그가 수정되었습니다. |
1.12.9 | 2023년 4월 6일 | Schematics 상담원 beta-1 및 정책 CLI 명령이 상담원 플랜, 상담원 적용 및 상담원 상태의' -target-file ' 및 ' output '를 포함하도록 개선되었습니다. |
1.12.8 | 2023년 3월 22일 | Schematics 에이전트 beta-1 및 정책 CLI 명령은 ' us-south ,
' us-east ' , ' eu-de ' , ' eu-gb ' 영역에서 사용할 수 있습니다. |
1.12.7 | 2023년 2월 07일 | ' us-south , ' us-east ' , ' eu-de ' , ' eu-gb ' 영역에서 ' API_AGENT_ATTACHMENT '을 비활성화하는 버그 수정. |
1.12.6 | 2023년 1월 30일 | ' yaml ' 파일을 통한 복잡한 입력 지원 강화. 상태 출력 관련 수정, 작업 영역 작업 출력의 인덱스 범위 벗어남, 장시간 실행 시 토큰 새로 고침 문제 및 스피너 패닉 수정. |
1.12.5 | 2022년 12월 18일 | 하위 명령 사용 및 ' -input-file ' 옵션을 사용하여 로컬 YAML 파일을 통해 복잡한 입력을 지정할 수 있도록 지원합니다. |
1.12.3 | 2022년 11월 18일 | 하위 명령어 사용 지원 ' source type '을 수정했습니다. |
1.12.3 | 2022년 11월 3일 | 최신 SDK 업데이트와 워크스페이스 작업 명령 업데이트를 통해 향상된 CLI 명령이 제공됩니다. |
1.12.2 | 2022년 8월 11일 | ' --output ' 플래그와 명령어에 대한 버그 수정이 포함된 Schematics v1.12.2 플러그인을 출시했습니다. |
1.12.1 | 2022년 7월 26일 | Schematics 버그 및 수정 명령을 통합했습니다. |
1.12.0 | 2022년 7월 11일 | 명령줄에서 Schematics 에서 agents 명령을 지원합니다. |
1.11.1 | 2022년 7월 8일 | 명령줄에서 Schematics 번역 문제 해결을 지원합니다. |
1.10.0 | 2022년 5월 5일 | 명령행에서 Schematics의 stop , force-stop 및 terminate 에 대한 지원을 제공합니다. |
1.9.0 | 2022년 4월 25일 | 명령행에서 Schematics의 Drift 감지를 지원합니다. |
1.8.1 | 2022년 4월 17일 | Schematics JSON 출력에 대한 별명이 더 이상 사용되지 않음 표시 메시지가 수정되었습니다. |
1.8.0 | 2022년 3월 13일 | ' .tfvars ' 및 ' .json ' 파일을 전달하여 명령을 계획하고 적용할 수 있도록 지원합니다. ' ibmcloud terraform ' 명령을 사용하면 경고 메시지가 표시됩니다. 또한 이 버전은 명령줄을 통해 비공개 Schematics 엔드포인트를 지원하며, 표 형식 보기 출력을 개선하여 Schematics 작업 공간에 프로비저닝된 리소스가
나열되도록 합니다. |
1.7.3 | 2022년 3월 4일 | 명령행 플랜 명령에 vars 파일 전달을 지원하고, ibmcloud schematics workspace get 명령에 commit ID 을(를) 표시하며, ibmcloud schematics workspace state show 명령 설명을 편집했습니다. |
1.7.2 | 2022년 2월 17일 | Linux™ arm64 및 Mac OS arm64 플랫폼 바이너리를 지원합니다. stdout/stderr 스트림, 유효하지 않은 TF vars 파일 및 변환과 관련된 수정사항이 릴리스되었습니다. |
1.7.1 | 2022년 2월 11일 | 추적 로깅을 지원하며 몇 가지 명령에 대한 통합 테스트가 추가되었습니다. ' env values metadata 업데이트 수정, 잘못된 플래그에 대한 패닉, ' ibmcloud schematics workspace output command '를 사용할 수 없음. |
1.7.0 | 2022년 1월 12일 | 명령 실행 후 Terraform v11.0 지원 중단 메시지를 표시합니다. 명령행 별명을 수정합니다. 중복 문자열의 모양을 제거합니다. 로그 파일에서 글로벌 시간을 지원합니다. |
1.6.2 | 2021년 12월 2일 | 영어 이외의 변환을 지원합니다. 수정사항은 명령 --var-file 및 조치 --target not setting 인수를 적용합니다. 파이프라인 취약점을 수정합니다. |
1.6.1 | 2021년 10월 21일 | Schematics 조치에 대해 winrm 을(를) 지원합니다. 생성 및 구성 업데이트에 ' --inventory-connection-type , ' --bastion-credential-json ' 및 ' --credential-json ' 옵션 값을 추가했습니다. 명령행에 대한 영어 이외의 변환이 업데이트되었습니다. ' ibmcloud schematics jobs run ' 대화형 모드에서 ' command-object ' 인수가 중복 표시되던 문제를 수정했습니다. |
1.6.0 | 2021년 9월 29일 | linux-ppc64le 및 linux-s390x 2진을 지원합니다. 세부 정보 패널에 ' Terraform v1.0 '을 나열합니다. Schematics 워크스페이스 페이지에 ' Terraform v0.11 사용 중단 메시지를 표시합니다. 리소스 조회 목록 명령에서 값을 빈 문자열로 리턴하는 문제를 수정했습니다. |
1.5.12 | 2021년 9월 2일 | --output json 플래그에 대한 상태 메시지를 제외합니다. |
1.5.11 | 2021년 8월 27일 | 기존 워크스페이스 업데이트 명령에 --pull-latest 플래그를 추가했습니다. BNPP 문제점이 수정되었습니다. 로케일 변환이 수정되었습니다. |
1.5.10 | 2021년 8월 11일 | 지원 Terraform v0.15 . 로케일 변환이 수정되었습니다. |
1.5.9 | 2021년 7월 13일 | 로케일 변환이 수정되었습니다. |
1.5.8 | 2021년 7월 8일 | 공유 데이터 세트 API 경로가 수정되었습니다. 공유 데이터 집합 명령을 비활성화합니다. |
1.5.7 | 2021년 6월 04일 | 새 컬럼 taint 상태와 함께 테이블 형식 데이터로 표시하도록 ibmcloud schematics state list 명령이 향상되었습니다. --input 플래그 설명과 함께 ibmcloud schematics job run 명령이 수정되었습니다. --output json 플래그 설명과 함께 ibmcloud schematics job run 명령이 수정되었습니다. --credentials 플래그 및 로케일 변환이 있는 ibmcloud schematics action update 명령이 수정되었습니다. |
1.5.6 | 2021년 6월 3일 | Terraform v0.14 및 로케일 변환을 지원하도록 ibmcloud schematics workspace new 명령이 업데이트되었습니다. |