YongsHub / -Kubernetes-Study

스터디 레포지토리
1 stars 1 forks source link

Chapter4 - 범위: 섹션6 2024/01/17 #4

Closed YongsHub closed 8 months ago

YongsHub commented 8 months ago

Basic Objects

Topic

himJJong commented 8 months ago


himJJong commented 8 months ago

himJJong commented 8 months ago

YongsHub commented 8 months ago

kubernetes 1.22v 이후에 namespace를 생성하면 service account가 생성되면서 secret이 생성되지 않음

YongsHub commented 8 months ago

kubernetes 1.22v 이후에 namespace를 생성하면 service account가 생성되면서 secret이 생성되지 않음

Although the manual mechanism for creating a long-lived ServiceAccount token exists, using TokenRequest to obtain short-lived API access tokens is recommended instead.

오랜 기간 동안 ServiceAccount의 token이 제공되었으나 -> 짧은 기간동안 API accesstoken으로 대체하는 것을 활용해야함

YongsHub commented 8 months ago

issue: Error from server (Forbidden): error when creating "https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml": serviceaccounts "kubernetes-dashboard" is forbidden: unable to create new content in namespace kubernetes-dashboard because it is being terminated

Terminating 상태에서 멈춰섰을때, 잔존하는 리소스들이 남아있어서 그러는 것

YongsHub commented 8 months ago

issue: Error from server (Forbidden): error when creating "https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml": serviceaccounts "kubernetes-dashboard" is forbidden: unable to create new content in namespace kubernetes-dashboard because it is being terminated

Terminating 상태에서 멈춰섰을때, 잔존하는 리소스들이 남아있어서 그러는 것

출처: https://togomi.tistory.com/7

YongsHub commented 8 months ago

https://github.com/YongsHub/-Kubernetes-Study/blob/master/taeyong/Section6.md 해당 주차 정리했는데 질문 남기신 것 좀 있다가 작성하겠습니다!

YongsHub commented 8 months ago
  • 인증 (User Account, Service Account)

  • 인가 (어디까지 접근 가능한지 권한 문제)

  • Service Account(질문) : Pod를 생성하면 Service Account에 자동으로 연결되고, Pod가 토큰값을 통해 API 서버에 연결이 되는데 이 과정은 우리(나와 같은 k8s 접속하는 유저)가 별도로 설정해줄 필요없이 저절로 Pod가 토큰값을 얻어 API 서버 연결을 하는 것으로 이해했는데 맞는지??

  • Role, RoleBinding Detail(질문) : 강의 중 이해가 안되는 부분이 있어 작성했습니다. Role(r-01) 만들 때 Pod는 코어 API이기 때문에, apiGroups에 내용을 안넣어도 되고, resources가 다를 경우 해당 apiGroups를 넣어주어여 한다고 설명이 나와있습니다. 이 부분에 대해 이해가 잘 가지 않았는데, 혹시 어떻게 이해하셨는지 도움을 받을 수 있을까요?

pod를 생성하면 Service Account가 자동으로 연결된다라는 부분이 모호한거 같네요. 그것보다는 Kubernetes Cluster에는 Kubernetes API Server가 존재하는데 해당 API Server에 대해 토큰 값을 가지고 외부에서 Resource를 조회할 수 있는게 맞지 않나요? 즉, 토큰을 발급한 Service Account에 Role이 존재해야 Role에 정의된 대로 Resource들을 조회할 수 있는것으로 이해했습니다! Ex) Pod, namespace 등등..

YongsHub commented 8 months ago

kubernetes dashboard 새로운 버전으로 설치하시면서 접근이 잘 되는지 궁금하네요! 지금 잘 해결이 어려워서 해결중에 있습니다

himJJong commented 8 months ago

kubernetes dashboard 새로운 버전으로 설치하시면서 접근이 잘 되는지 궁금하네요! 지금 잘 해결이 어려워서 해결중에 있습니다

저는 실습 dashboard전까지 실습을 진행하고, 마지막꺼는 아직 하지 않았습니다! 접근되는데로 코멘트 남기겠습니다~

YongsHub commented 8 months ago
  • 인증 (User Account, Service Account)
  • 인가 (어디까지 접근 가능한지 권한 문제)
  • Service Account(질문) : Pod를 생성하면 Service Account에 자동으로 연결되고, Pod가 토큰값을 통해 API 서버에 연결이 되는데 이 과정은 우리(나와 같은 k8s 접속하는 유저)가 별도로 설정해줄 필요없이 저절로 Pod가 토큰값을 얻어 API 서버 연결을 하는 것으로 이해했는데 맞는지??
  • Role, RoleBinding Detail(질문) : 강의 중 이해가 안되는 부분이 있어 작성했습니다. Role(r-01) 만들 때 Pod는 코어 API이기 때문에, apiGroups에 내용을 안넣어도 되고, resources가 다를 경우 해당 apiGroups를 넣어주어여 한다고 설명이 나와있습니다. 이 부분에 대해 이해가 잘 가지 않았는데, 혹시 어떻게 이해하셨는지 도움을 받을 수 있을까요?

pod를 생성하면 Service Account가 자동으로 연결된다라는 부분이 모호한거 같네요. 그것보다는 Kubernetes Cluster에는 Kubernetes API Server가 존재하는데 해당 API Server에 대해 토큰 값을 가지고 외부에서 Resource를 조회할 수 있는게 맞지 않나요? 즉, 토큰을 발급한 Service Account에 Role이 존재해야 Role에 정의된 대로 Resource들을 조회할 수 있는것으로 이해했습니다! Ex) Pod, namespace 등등..

그리고 Role같은 경우는 kubernetes cluster에 namespace를 생성하고 그 안에 여러 개의 pod를 생성하잖아요! 그래서 pod가 core api로 설명이 되었기에 apiGroups에 내용을 안넣어도 된다고 이해를 했고 pod가 아닌 batch 를 위한 job인 경우! 즉 resource가 다른 경우는 명시를 해야 한다고 이해했습니다!

YongsHub commented 8 months ago
  • 인증 (User Account, Service Account)
  • 인가 (어디까지 접근 가능한지 권한 문제)
  • Service Account(질문) : Pod를 생성하면 Service Account에 자동으로 연결되고, Pod가 토큰값을 통해 API 서버에 연결이 되는데 이 과정은 우리(나와 같은 k8s 접속하는 유저)가 별도로 설정해줄 필요없이 저절로 Pod가 토큰값을 얻어 API 서버 연결을 하는 것으로 이해했는데 맞는지??
  • Role, RoleBinding Detail(질문) : 강의 중 이해가 안되는 부분이 있어 작성했습니다. Role(r-01) 만들 때 Pod는 코어 API이기 때문에, apiGroups에 내용을 안넣어도 되고, resources가 다를 경우 해당 apiGroups를 넣어주어여 한다고 설명이 나와있습니다. 이 부분에 대해 이해가 잘 가지 않았는데, 혹시 어떻게 이해하셨는지 도움을 받을 수 있을까요?

pod를 생성하면 Service Account가 자동으로 연결된다라는 부분이 모호한거 같네요. 그것보다는 Kubernetes Cluster에는 Kubernetes API Server가 존재하는데 해당 API Server에 대해 토큰 값을 가지고 외부에서 Resource를 조회할 수 있는게 맞지 않나요? 즉, 토큰을 발급한 Service Account에 Role이 존재해야 Role에 정의된 대로 Resource들을 조회할 수 있는것으로 이해했습니다! Ex) Pod, namespace 등등..

그리고 Role같은 경우는 kubernetes cluster에 namespace를 생성하고 그 안에 여러 개의 pod를 생성하잖아요! 그래서 pod가 core api로 설명이 되었기에 apiGroups에 내용을 안넣어도 된다고 이해를 했고 pod가 아닌 batch 를 위한 job인 경우! 즉 resource가 다른 경우는 명시를 해야 한다고 이해했습니다!

@himJJong 정확하게 명시하겠습니다! Docs(https://kubernetes.io/docs/reference/kubernetes-api/authorization-resources/role-v1/)에 의하면, APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups. core API group은 ""로 표기하고

스크린샷 2024-01-18 오전 12 28 54

그림에서도 보면 Pod에는 v1core라고 표기되어 있습니다!