Kubernetes - 서비스에 HostPath 볼륨에 대한 권한 부여

4789 단어
AWS의 Kubernetes 클러스터에 FluentD를 설치했는데 클러스터에 이미 설치된 보안에 문제가 있었습니다. hostPath 볼륨에 쓸 수 없습니다.


빠른 검색 후 hostPath 볼륨 및 관련 문제에 대해 알아야 할 모든 내용을 재개하는 정말 좋은 블로그 게시물을 찾았습니다.

따라서 문제가 있는 경우 다음 링크를 확인하십시오.
https://suraj.io/post/k8s-hostpat-nuke-nodes/


내 문제에 대한 해결책



아래에 작성된 모든 내용은 블로그 게시물 내용을 기반으로 합니다.

PodSecurityPolicy를 선언하고 내 서비스의 ServiceAccount에 연결합니다.

PodSecurityPolicy




apiVersion: policy/v1beta1
kind: PodSecurityPolicy
metadata:
  name: psp-hostpath
spec:
  seLinux:
    rule: RunAsAny
  supplementalGroups:
    rule: RunAsAny
  runAsUser:
    rule: RunAsAny
  fsGroup:
    rule: RunAsAny
  volumes:
  - '*'
  privileged: false  # Don't allow privileged pods!
  allowedHostPaths:
  - pathPrefix: /abc
  - pathPrefix: /def


역할




kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: role-authorize-hostpath
rules:
- apiGroups: ['policy']
  resources: ['podsecuritypolicies']
  verbs:     ['use']
  resourceNames:
  - psp-hostpath


역할 바인딩




kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: rolebinding-hostpath-fluentd
roleRef:
  kind: Role
  name: role-authorize-hostpath
  apiGroup: rbac.authorization.k8s.io
subjects:
  - kind: ServiceAccount
    name: fluentd       # Name of the ServiceAccount 
    namespace: fluentd



저에게 도움이 된 만큼 여러분에게도 도움이 되었으면 좋겠습니다! 😃


블로그 게시물에 대해 Suraj Deshmukh에게 감사드립니다!

내 작문 실력을 향상시키는 데 도움이 되는 몇 가지 피드백을 제공하는 것을 주저하지 마십시오. 감사!

좋은 웹페이지 즐겨찾기