|
podman_kube_specs
|
Podman 포드 및 해당 systemd 장치를 설명합니다.
state: (default: created) - systemd 서비스 및 Pod를 사용하여 실행할 작업을 나타냅니다.
-
created: Pod 및 systemd 서비스를 생성하지만 실행하지 않습니다.
-
started: Pod 및 systemd 서비스를 생성하고 시작합니다.
-
absent: pod 및 systemd 서비스를 제거합니다.
run_as_user: (기본값: podman_run_as_user) - Pod별 사용자입니다. 사용자를 지정하지 않으면 root 를 사용합니다.
run_as_group (기본값: podman_run_as_group) - Pod별 그룹입니다. 사용자를 지정하지 않으면 root 를 사용합니다.
-
systemd_unit_scope (기본값: podman_systemd_unit_scope) - systemd 단위에 사용할 범위입니다. 지정하지 않으면 시스템을 루트 컨테이너 및 사용자 컨테이너에 사용합니다.
kube_file_src - 관리 노드의 kube_file 에 복사될 컨트롤러 노드의 Kubernetes YAML 파일의 이름입니다.
kube_file_content 변수를 지정하는 경우 kube_file_src 변수를 지정하지 마십시오. kube_file_content 는 kube_file_src 보다 우선합니다.
kube_file_content - Kubernetes YAML 형식의 문자열 또는 Kubernetes YAML 형식의 dict입니다. 관리 노드에서 kube_file 의 내용을 지정합니다.
kube_file_src 변수를 지정하는 경우 kube_file_content 변수를 지정하지 마십시오. kube_file_content 는 kube_file_src 보다 우선합니다.
kube_file - 컨테이너 또는 Pod의 Kubernetes 사양이 포함된 관리 노드의 파일 이름입니다. 일반적으로 역할 외부의 관리 노드에 kube_file 파일을 복사할 필요가 없는 경우 kube_file 변수를 지정할 필요가 없습니다. kube_file_src 또는 kube_file_content 중 하나를 지정하는 경우 이를 지정할 필요가 없습니다.
kube_file을 생략하고 대신 kube_file _ src 또는 kube_file _content 를 지정하고 역할에서 파일 경로와 이름을 관리하도록 하는 것이 좋습니다.
-
파일 basename은 K8s yaml의 metadata.name 값이고
.yml 접미사가 추가됩니다.
-
디렉터리는 시스템 서비스의 경우
/etc/containers/ansible-kubernetes.d 입니다.
-
디렉터리는 사용자 서비스의 경우
$HOME/.config/containers/ansible-kubernetes.d 입니다.
-
관리 노드의
/etc/containers/ansible-kubernetes.d/ <application_name > .yml 파일에 복사됩니다.
|
|
podman_quadlet_specs
|
Quadlet 사양 목록입니다.
Quadlets는 RHEL 8에서 rootful 컨테이너에서만 작동합니다. Quadlets는 RHEL 9에서만 rootless 컨테이너에서 작동합니다.
Quadlet은 유닛의 이름과 유형으로 정의됩니다. 단위 유형은 컨테이너,kube,network,volume 등일 수 있습니다. name 및 type 을 명시적으로 전달할 수 있습니다. 또는 이름과 유형은 파일 , file _src 또는 template_src 에 지정된 파일 이름에서 파생됩니다.
-
루트 컨테이너 파일은 관리 노드의
/etc/containers/systemd/$name.$type 에 있습니다.
-
rootless 컨테이너 파일은 관리 노드의
$HOME/.config/containers/systemd/$name.$type 에 있습니다.
Quadlet 사양이 다른 파일(예: Yaml 파일 또는 ConfigMap 에 종속된 quadlet.kube )에 종속된 경우 해당 파일을 사용하는 파일 앞에 podman_quadlet_specs 목록에 지정해야 합니다. 예를 들어 my-app.kube 파일이 있는 경우 다음을 수행합니다.
[Kube]
ConfigMap=my-app-config.yml
Yaml=my-app.yml
...
그런 다음 my-app-config.yml 및 my-app.yml: 앞에 my-app-config.yml을 지정해야 합니다.
podman_quadlet_specs:
- file_src: my-app-config.yml
- file_src: my-app.yml
- file_src: my-app.kube
각 Quadlet 사양에 대한 대부분의 매개변수는 kube 매개변수가 지원되지 않는 점을 제외하고 위의 podman_ kube _spec 과 동일합니다. 지원되는 매개변수는 다음과 같습니다.
name - 단위의 이름입니다. 이름을 지정하지 않으면 파일 , file _src 또는 template_src 에서 파생됩니다.
-
예를 들어
file_src: /path/to/my-container.container 를 지정하면 이름은 my-container 입니다.
유형 - 단위 유형은 container,kube,network,volume 등일 수 있습니다. 이름을 지정하지 않으면 파일 , file _src 또는 template_src 에서 파생됩니다.
file_src - Quadlet 장치의 소스로 사용할 관리 노드에 복사할 제어 노드의 파일 이름입니다.
이 파일이 Quadlet 단위 형식이고 유효한 Quadlet 장치 접미사가 있는 경우 Quadlet 단위로 사용됩니다. 그렇지 않으면 방금 복사됩니다.
file - Quadlet 장치의 소스로 사용할 관리 노드의 파일 이름입니다.
이 파일이 Quadlet 단위 형식이고 유효한 Quadlet 장치 접미사가 있는 경우 Quadlet 단위로 사용됩니다. 그렇지 않으면 방금 복사됩니다.
-
file_content - 관리 노드에 복사할 파일의 콘텐츠(문자열 형식)입니다. 이 기능은 인라인으로 쉽게 지정할 수 있는 짧은 파일을 전달하는 데 유용합니다. name 및 type 을 지정해야 합니다.
template_src - Jinja * 템플릿 파일로 처리할 제어 노드의 파일 이름입니다. 그런 다음 Quadlet 단위 소스로 사용할 관리 노드에 복사됩니다.
이 파일이 Quadlet 단위 형식이고 유효한 Quadlet 장치 접미사가 있는 경우 Quadlet 단위로 사용됩니다. 그렇지 않으면 방금 복사됩니다. 파일에 .j2 접미사가 있는 경우 해당 접미사가 제거되어 사각형 파일 유형을 결정합니다.
|
|
podman_secrets
|
podman_secret 에서 사용하는 것과 동일한 형식의 시크릿 사양 목록입니다. 단, 지정된 사용자 계정에 보안을 생성하는 데 사용되는 추가 필드 run_as_user 가 있습니다. 이 값을 지정하지 않으면 podman_run_as_user 에서 지정한 계정에 보안이 생성되고, 기본값은 "root"인 경우 Ansible Vault를 사용하여 data 필드의 값을 암호화합니다.
|
|
podman_create_host_directories
|
true인 경우 역할은 podman_kube_specs 에 지정된 Kubernetes YAML의 volume .hostPath 사양에 지정된 호스트 디렉터리를 확인합니다. 기본값은 false입니다.
역할이 디렉터리를 관리하도록 하려면 루트 컨테이너의 절대 경로로 디렉터리를 지정하거나 루트가 아닌 컨테이너의 경우 홈 디렉터리와 관련된 경로를 지정해야 합니다.
이 역할은 기본 소유권 또는 권한을 디렉터리에 적용합니다. 소유권 또는 권한을 설정해야 하는 경우 podman_host_directories 를 참조하십시오.
|
|
podman_host_directories
|
이는 dict입니다. podman_create_host_directories 를 사용하여 볼륨 마운트를 위한 호스트 디렉터리를 생성하도록 역할에 알리고 생성된 호스트 디렉터리에 적용되는 권한 또는 소유권을 지정해야 하는 경우 podman_host_directories 를 사용하십시오. 각 키는 관리할 호스트 디렉터리의 절대 경로입니다. 값은 file 모듈에 대한 매개변수 형식입니다. 값을 지정하지 않으면 역할은 기본 제공 기본값을 사용합니다. 모든 호스트 디렉터리에 사용할 값을 지정하려면 특수 키 DEFAULT 를 사용합니다.
|
|
podman_firewall
|
이 목록은 dict 목록입니다. 방화벽에서 역할을 관리할 포트를 지정합니다. 방화벽 RHEL 시스템 역할에서 사용하는 것과 동일한 형식을 사용합니다.
|
|
podman_selinux_ports
|
이 목록은 dict 목록입니다. 역할에서 사용하는 포트에 대한 SELinux 정책을 관리할 포트를 지정합니다. 이 명령은 selinux RHEL 시스템 역할에서 사용하는 것과 동일한 형식을 사용합니다.
|
|
podman_run_as_user
|
모든 rootless 컨테이너에 사용할 사용자의 이름을 지정합니다. podman_kube_specs,podman_quadlet_specs 또는 podman_secrets 에서 run_as_user 를 사용하여 컨테이너별/unit/secret 사용자 이름을 지정할 수도 있습니다.
|
|
podman_run_as_group
|
모든 rootless 컨테이너에 사용할 그룹의 이름을 지정합니다. podman_kube_specs 또는 podman_quadlet_specs 에서 run_as_group 을 사용하여 컨테이너별 또는 단위 그룹 이름을 지정할 수도 있습니다.
|
|
podman_systemd_unit_scope
|
모든 systemd 장치에 기본적으로 사용할 systemd 범위를 정의합니다. podman_kube_specs 및 podman_quadlet_specs 에서 systemd_unit_scope 를 사용하여 컨테이너별 또는 단위 범위를 지정할 수도 있습니다. 기본적으로 rootless 컨테이너는 사용자 및 root 컨테이너를 사용합니다.
|
|
podman_containers_conf
|
containers.conf(5) 설정을 dict로 정의합니다. 설정은 containers.conf.d 디렉터리의 드롭인 파일에 제공됩니다. root 로 실행하면 시스템 설정이 관리됩니다. podman_run_as_user. otherwise, 사용자 설정이 관리됨을 참조하십시오. 디렉터리 위치는 containers.conf man 페이지를 참조하십시오.
|
|
podman_registries_conf
|
containers-registries.conf(5) 설정을 dict로 정의합니다. 설정은 registries.conf.d 디렉터리의 드롭인 파일에 제공됩니다. root 로 실행하면 시스템 설정이 관리됩니다. podman_run_as_user 를 참조하십시오. 그렇지 않으면 사용자 설정이 관리됩니다. 디렉터리 위치는 registries.conf man 페이지를 참조하십시오.
|
|
podman_storage_conf
|
containers-storage.conf(5) 설정을 dict로 정의합니다. root 로 실행하면 시스템 설정이 관리됩니다. podman_run_as_user 를 참조하십시오. 그렇지 않으면 사용자 설정이 관리됩니다. 디렉터리 위치는 storage.conf man 페이지를 참조하십시오.
|
|
podman_policy_json
|
containers-policy.conf(5) 설정을 dict로 정의합니다. root로 실행하는 경우( podman_run_as_user참조) 시스템 설정이 관리됩니다. 그렇지 않으면 사용자 설정이 관리됩니다. 디렉터리 위치는 policy.json man 페이지를 참조하십시오.
|