1.11. 정책 API
1.11.1. 개요
이 문서는 Red Hat Advanced Cluster Management for Kubernetes의 정책 리소스에 대한 것입니다. Policy 리소스에는 생성, 쿼리, 삭제 및 업데이트의 네 가지 요청이 있습니다.
1.11.1.1. 버전 정보
버전 : 2.12.0
1.11.1.2. URI 스키마
BasePath : /kubernetes/apis
Schemes : HTTPS
1.11.1.3. 태그
- policy.open-cluster-management.io/v1 : 정책 생성 및 관리
1.11.2. 경로
1.11.2.1. 정책 생성
POST /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.11.2.1.1. 설명
정책을 생성합니다.
1.11.2.1.2. 매개 변수
유형 | 이름 | 설명 | 스키마 |
---|---|---|---|
헤더 |
COOKIE | 권한 부여: Bearer {ACCESS_TOKEN}; ACCESS_TOKEN은 사용자 액세스 토큰입니다. | string |
경로 |
네임스페이스 | 사용할 네임스페이스(예: default)입니다. | string |
본문 |
본문 | 생성할 정책을 설명하는 매개변수입니다. |
1.11.2.1.3. 응답
HTTP 코드 | 설명 | 스키마 |
---|---|---|
200 | 성공 | 콘텐츠 없음 |
403 | 액세스 금지 | 콘텐츠 없음 |
404 | 리소스를 찾을 수 없음 | 콘텐츠 없음 |
500 | 내부 서비스 오류 | 콘텐츠 없음 |
503 | 서비스를 사용할 수 없음 | 콘텐츠 없음 |
1.11.2.1.4. 사용
-
application/json
1.11.2.1.5. 태그
- policy.open-cluster-management.io
1.11.2.1.6. HTTP 요청의 예
1.11.2.1.6.1. 요청 본문
{ "apiVersion": "policy.open-cluster-management.io/v1", "kind": "Policy", "metadata": { "name": "test-policy-swagger", "description": "Example body for Policy API Swagger docs" }, "spec": { "remediationAction": "enforce", "customMessage": { "compliant": [], "noncompliant": [] }, "namespaces": { "include": [ "default" ], "exclude": [ "kube*" ] }, "policy-templates": { "kind": "ConfigurationPolicy", "apiVersion": "policy.open-cluster-management.io/v1", "complianceType": "musthave", "metadataComplianceType": "musthave", "metadata": { "namespace": null, "name": "test-role" }, "selector": { "matchLabels": { "cloud": "IBM" } }, "spec" : { "object-templates": { "complianceType": "musthave", "metadataComplianceType": "musthave", "objectDefinition": { "apiVersion": "rbac.authorization.k8s.io/v1", "kind": "Role", "metadata": { "name": "role-policy", }, "rules": [ { "apiGroups": [ "extensions", "apps" ], "resources": [ "deployments" ], "verbs": [ "get", "list", "watch", "delete" ] }, { "apiGroups": [ "core" ], "resources": [ "pods" ], "verbs": [ "create", "update", "patch" ] }, { "apiGroups": [ "core" ], "resources": [ "secrets" ], "verbs": [ "get", "watch", "list", "create", "delete", "update", "patch" ], }, ], }, }, }, },
1.11.2.2. 모든 정책 쿼리
GET /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.11.2.2.1. 설명
자세한 내용은 정책을 쿼리합니다.
1.11.2.2.2. 매개 변수
유형 | 이름 | 설명 | 스키마 |
---|---|---|---|
헤더 |
COOKIE | 권한 부여: Bearer {ACCESS_TOKEN}; ACCESS_TOKEN은 사용자 액세스 토큰입니다. | string |
경로 |
네임스페이스 | 정책을 적용할 네임스페이스(예: default)입니다. | string |
1.11.2.2.3. 응답
HTTP 코드 | 설명 | 스키마 |
---|---|---|
200 | 성공 | 콘텐츠 없음 |
403 | 액세스 금지 | 콘텐츠 없음 |
404 | 리소스를 찾을 수 없음 | 콘텐츠 없음 |
500 | 내부 서비스 오류 | 콘텐츠 없음 |
503 | 서비스를 사용할 수 없음 | 콘텐츠 없음 |
1.11.2.2.4. 사용
-
application/json
1.11.2.2.5. 태그
- policy.open-cluster-management.io
1.11.2.3. 단일 정책 쿼리
GET /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.11.2.3.1. 설명
자세한 내용은 단일 정책을 쿼리합니다.
1.11.2.3.2. 매개 변수
유형 | 이름 | 설명 | 스키마 |
---|---|---|---|
헤더 |
COOKIE | 권한 부여: Bearer {ACCESS_TOKEN}; ACCESS_TOKEN은 사용자 액세스 토큰입니다. | string |
경로 |
policy_name | 쿼리할 정책의 이름입니다. | string |
경로 |
네임스페이스 | 사용할 네임스페이스(예: default)입니다. | string |
1.11.2.3.3. 응답
HTTP 코드 | 설명 | 스키마 |
---|---|---|
200 | 성공 | 콘텐츠 없음 |
403 | 액세스 금지 | 콘텐츠 없음 |
404 | 리소스를 찾을 수 없음 | 콘텐츠 없음 |
500 | 내부 서비스 오류 | 콘텐츠 없음 |
503 | 서비스를 사용할 수 없음 | 콘텐츠 없음 |
1.11.2.3.4. 태그
- policy.open-cluster-management.io
1.11.2.4. 정책 삭제
DELETE /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.11.2.4.1. 매개 변수
유형 | 이름 | 설명 | 스키마 |
---|---|---|---|
헤더 |
COOKIE | 권한 부여: Bearer {ACCESS_TOKEN}; ACCESS_TOKEN은 사용자 액세스 토큰입니다. | string |
경로 |
policy_name | 삭제할 정책의 이름입니다. | string |
경로 |
네임스페이스 | 사용할 네임스페이스(예: default)입니다. | string |
1.11.2.4.2. 응답
HTTP 코드 | 설명 | 스키마 |
---|---|---|
200 | 성공 | 콘텐츠 없음 |
403 | 액세스 금지 | 콘텐츠 없음 |
404 | 리소스를 찾을 수 없음 | 콘텐츠 없음 |
500 | 내부 서비스 오류 | 콘텐츠 없음 |
503 | 서비스를 사용할 수 없음 | 콘텐츠 없음 |
1.11.2.4.3. 태그
- policy.open-cluster-management.io
1.11.3. 정의
1.11.3.1. 정책
이름 | 설명 | 스키마 |
---|---|---|
apiVersion | 버전이 지정된 정책 스키마입니다. | string |
종류 | REST 리소스를 나타내는 문자열 값입니다. | string |
메타데이터 | 정책을 정의하는 규칙을 설명합니다. | object |
spec
이름 | 설명 | 스키마 |
---|---|---|
remediationAction | 리소스에서 정의된 대로 위반을 처리하는 방법을 나타내는 값입니다. | string |
customMessage |
규정 준수 상태에 따라 구성 정책에서 사용자 지정 메시지를 구성할 수 있는 매개변수 필드입니다. 구성 정책 컨트롤러의 현재 정책 상태의 | string |
namespaceSelector | 정책이 적용되는 네임스페이스를 나타내는 값입니다. | string |
policy-templates
이름 | 설명 | 스키마 |
---|---|---|
apiVersion | 버전이 지정된 정책 스키마입니다. | string |
종류 | REST 리소스를 나타내는 문자열 값입니다. | string |
메타데이터 | 정책을 정의하는 규칙을 설명합니다. | object |
complianceType | 관리 클러스터에 평가하거나 적용해야 하는 역할 및 기타 Kubernetes 오브젝트에 대한 예상 동작을 나열하는 데 사용됩니다. | string |
metadataComplianceType |
사용자가 다른 필드와 다른 오브젝트의 레이블 및 주석을 처리할 수 있는 방법을 제공합니다. 매개변수 값은 기본값은 | string |
clusterConditions | 레이블을 정의할 섹션입니다. | string |
규칙 | string |
clusterConditions
이름 | 설명 | 스키마 |
---|---|---|
matchLabels | 정책을 네임스페이스에 적용하는 데 필요한 레이블입니다. | object |
클라우드 | 정책을 클라우드 공급자에 적용하는 데 필요한 레이블입니다. | string |
규칙
이름 | 설명 | 스키마 |
---|---|---|
apiGroups | 규칙이 적용되는 API 목록입니다. | string |
| 리소스 유형 목록입니다. | object |
동사 | 동사 목록입니다. | string |