extensions
๊ทธ๋ฃน์ ์ง์ apiextensions
์ด๋ผ๊ณ ํจ)์ผ๋ก ์ด๋ํฉ๋๋ค.extensions/v1beta1
TPR์์ ๋ง์ด๊ทธ๋ ์ด์
ํ๋ ํ๋ก์ธ์ค๋ฅผ ์ ์ํ๊ณ ๋ฌธ์ํํ์ญ์์ค. TPR ๋ง์ถคํ ์ปจํธ๋กค๋ฌ ๋ฐ ์ด์์์๊ฒ ์งง์ ๊ฐ๋ ์ค์ง ์๊ฐ์ด ํ์ํ ์ ์์ต๋๋ค.extensions/v1beta1
TPR์ ์ฌ๋ฌ ๋ฒ์ ์ ์ง์ํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง ์ฌ๋ฌ ๋ฒ์ ์ง์์ ๊ตฌํ๋์ง ์์์ต๋๋ค.์์ง ์กฐ์ฌ ์ค์ด๊ฑฐ๋ ๋ฏธ์ ์ ๋๋ค. ์ ๋ฐ์ดํธ๊ฐ ์์ผ๋ฉด ๋๊ธ์ ๋ฌ๊ฑฐ๋ ์์ ํ์ธ์.
@lavalamp ์ ์ด๋ ์ฐ๋ฆฌ์ ์๊ฐ์ ํตํฉํ๊ณ ํ์ฌ ๋ฆฌ์์ค์ ๋ํ ์งํ ์ํฉ์ ์ถ์ ํ ์ ์๋ ์ฅ์๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ด๊ฒ์ ๋ง๋ค์์ต๋๋ค. ์์ ํ์ผ๋ก ์น๊ฒฉํ๊ธฐ ์ ์ ํด๊ฒฐํด์ผ ํ ์๋ ค์ง ๋จ์ ๋ชฉ๋ก์ ๋ง๋ค๋ ค๊ณ ํ์ต๋๋ค.
๋ง์์ ์ฃผ์ธ์ ์์ง๋ง ๋ฌธ์ ์ธ์์ด 1๋จ๊ณ์ธ ๊ฒ ๊ฐ๋ค.
@deads2k ์ต๊ทผ์ ์ 3์ ๋ฆฌ์์ค๋ฅผ ๋ฐฐ์ฐ๊ณ ์๋๋ฐ ๋์์ด ๋๊ณ ์ถ์ต๋๋ค.
@deads2k ์ต๊ทผ์ ์ 3์ ๋ฆฌ์์ค๋ฅผ ๋ฐฐ์ฐ๊ณ ์๋๋ฐ ๋์์ด ๋๊ณ ์ถ์ต๋๋ค.
๋๋ ์ ์ ์ ์ฐ์ ์์์ ๋ฐ๋ผ ๋ชฉ๋ก์ ์ฌ์ ๋ ฌํ์ต๋๋ค. ์ฌ๋๋ค์ ์ง๊ธ ์ด๊ฒ์ ์ฌ์ฉํ๋ ค๊ณ ํ๊ณ ์์ผ๋ฉฐ ์ด๋ฌํ ๋ฌธ์ ๋ ๊ทธ๋ค์ ์ฌํ๊ฒ ํ์ธ ๊ฒ์ ๋๋ค.
"์ฌ๋ฌ ์์" ํญ๋ชฉ์ ์ฌ์ฉํ๋ ๊ฒ์ด ํธํ๋ค๋ฉด ์ข์ ์์์ด ๋ ๊ฒ์ ๋๋ค. ๋ณ๋์ ๋ฌธ์ ๋ฅผ ๋ง๋ค ์ ์์ผ๋ฉฐ ๊ฑฐ๊ธฐ์์ ๊ตฌํ์ ๋ํด ์ด์ผ๊ธฐํ ์ ์์ต๋๋ค.
@deads2k ์ฒซ ๋ฒ์งธ ๋ฌธ์ ๋ฅผ ์ฌํํ๋ ๋ฐ ์๊ฐ์ ๋ณด๋์ต๋๋ค.
Multiple Resources, single version, different add times - Adding resource A, waiting for it to appear, then adding resource B fails. Resource B is never added.
๊ทธ๋ฌ๋ ๋ถํ์ผ๋ก. ๋ค์์ ๋ด ์ฌํ ๋จ๊ณ์ ๋๋ค.
[root<strong i="12">@localhost</strong> kubernetes]# cat /home/tony/Desktop/debug/lbclaim.yaml
kind: ThirdPartyResource
apiVersion: extensions/v1beta1
metadata:
name: loadbalancerclaim.k8s.io
description: "Allow user to claim a loadbalancer instance"
versions:
- name: v1
[root<strong i="13">@localhost</strong> kubernetes]# kc create -f /home/tony/Desktop/debug/lbclaim.yaml
thirdpartyresource "loadbalancerclaim.k8s.io" created
[root<strong i="14">@localhost</strong> kubernetes]# curl http://localhost:8080/apis/extensions/v1beta1/thirdpartyresources/
{
"kind": "ThirdPartyResourceList",
"apiVersion": "extensions/v1beta1",
"metadata": {
"selfLink": "/apis/extensions/v1beta1/thirdpartyresources/",
"resourceVersion": "170"
},
"items": [
{
"metadata": {
"name": "loadbalancerclaim.k8s.io",
"selfLink": "/apis/extensions/v1beta1/thirdpartyresources/loadbalancerclaim.k8s.io",
"uid": "dcb88b3a-9857-11e6-a19b-08002767e1f5",
"resourceVersion": "146",
"creationTimestamp": "2016-10-22T13:03:01Z"
},
"description": "Allow user to claim a loadbalancer instance",
"versions": [
{
"name": "v1"
}
]
}
]
}
[root<strong i="19">@localhost</strong> kubernetes]# cat /home/tony/Desktop/debug/loadbalancer.yaml
kind: ThirdPartyResource
apiVersion: extensions/v1beta1
metadata:
name: loadbalancer.k8s.io
description: "Allow user to curd a loadbalancer instance"
versions:
- name: v1
[root<strong i="20">@localhost</strong> kubernetes]# kc create -f /home/tony/Desktop/debug/loadbalancer.yaml
thirdpartyresource "loadbalancer.k8s.io" created
[root<strong i="25">@localhost</strong> kubernetes]# curl http://localhost:8080/apis/k8s.io/v1/
{
"kind": "APIResourceList",
"apiVersion": "v1",
"groupVersion": "k8s.io/v1",
"resources": [
{
"name": "loadbalancerclaims",
"namespaced": true,
"kind": "Loadbalancerclaim"
},
{
"name": "loadbalancers",
"namespaced": true,
"kind": "Loadbalancer"
}
]
}
[root<strong i="26">@localhost</strong> kubernetes]# kc get loadbalancers
No resources found.
[root<strong i="27">@localhost</strong> kubernetes]# kc get loadbalancerclaims
No resources found.
์ฐ๋ฆฌ๋ ์ด๋ฏธ ์ฌ๋ฌ ๋ฆฌ์์ค, ๋จ์ผ ๋ฒ์ ์ ์ง์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ TPR ๊ด๋ จ ์ฝ๋๋ฅผ ์์ธํ ์ดํด๋ด
๋๋ค. thirdparty_controller
๋ ์ฃผ๊ธฐ์ ์ผ๋ก ๋๊ธฐํ(10์ด๋ง๋ค)๋ฅผ ์ํํ๊ณ ๋ชจ๋ ์ TPR์ ์ค์นํ๊ณ ์ผ๋ถ ์ญ์ ์์
๋ ์ํํฉ๋๋ค. ThirdPartyResourceServer
์๋ ์ค์น๋ ๋ชจ๋ TPR ๋งคํ์ด ํฌํจ๋ฉ๋๋ค. SyncOneResource
๋ฐ InstallThirdPartyResource
์์ ๋ณผ ์ ์๋ฏ์ด ์ด ๊ทธ๋ฃน์ด ์กด์ฌํ๋๋ผ๋ ์ API๋ก ๊ทธ๋ฃน์ ๊ณ์ ์
๋ฐ์ดํธํฉ๋๋ค.
๋ํ ์์คํ ์ TPR ์ธ์คํด์ค๊ฐ ์๋๋ผ๋ TPR ์คํค๋ง def๋ฅผ ์ญ์ ํ ์ ์์์ ๋ฐ๊ฒฌํ์ต๋๋ค. ๋๋ ์ด๊ฒ์ด ํ์ฉ๋์ด์๋ ์๋๋ค๊ณ ์๊ฐํ๋ค.
@deads2k ์ฒซ ๋ฒ์งธ ๋ฌธ์ ๋ฅผ ์ฌํํ๋ ๋ฐ ์๊ฐ์ ๋ณด๋์ต๋๋ค.
์ด ํ ์คํธ๋ฅผ ํ์ฑํํ์ญ์์ค: https://github.com/kubernetes/kubernetes/blob/master/test/integration/thirdparty/thirdparty_test.go#L137 . ๊ทธ๊ฒ์ด ํจ๊ณผ๊ฐ ์๋ค๋ฉด, ์ฐ๋ฆฌ๋ ์ข์ ๊ฒ์ ๋๋ค. ์คํจํ๋ฉด ๋ญ๊ฐ ์๋ชป๋ ๊ฒ์ ๋๋ค.
@deads2k ์๋ ํ์ธ์ David, ์ ๊ฐ Slack์ผ๋ก ๋ณด๋ธ ๋ฉ์์ง๋ฅผ ๋ด์ฃผ์ธ์. ๊ฒ๋ค๊ฐ ์คํจํ ํตํฉ ํ ์คํธ์ ๋ํ ์์ ์ฌํญ์ ์ถ๊ฐํฉ๋๋ค. TPR์ด ์ญ์ ๋๋ฉด ํ์ฌ ๋ฆฌ์์ค ์ปจํธ๋กค๋ฌ๊ฐ ํด๋น ๊ฒฝ๋ก ์ฒ๋ฆฌ๊ธฐ๋ฅผ ์ ๊ฑฐํฉ๋๋ค. ์ด๋ ํตํฉ ํ ์คํธ์ ๋์์ด ๋ ๊ฒ์ด์ง๋ง ์ด๊ฒ์ด ๋ค๋ฅธ ๋ฌธ์ ๋ฅผ ์ผ์ผํฌ์ง ์ฌ๋ถ๋ ํ์คํ์ง ์์ต๋๋ค. .
๋ฌธ์ # 1์ ๊ฒฝ์ฐ ์ฌ๊ธฐ์์ ์์ ๋์์ต๋๋ค.
@brendandburns๋ ์ค์ ๋ก ๊ทธ๋ ์ง ์์ต๋๋ค. ์ฃผ์ ์ฒ๋ฆฌ ํตํฉ ํ ์คํธ๋ฅผ ์คํํ ์ ์์ผ๋ฉฐ ์คํจํฉ๋๋ค.
@brendandburns ๋ ์ ํํ๊ฒ
@AdoHe ๋ฌธ์ ๋ฅผ ์ ๊ธฐ ํ์ต๋๊น? ๋๋ ๋ณผ ์ ์์ต๋๋ค.
@brendandburns ์ฌ๊ธฐ์์ ๋ณผ ์ ์์ต๋๋ค:
https://github.com/kubernetes/kubernetes/blob/master/test/integration/thirdparty/thirdparty_test.go#L137
์ด ํ ์คํธ๋ฅผ ํ์ฑํํ๋ฉด ์คํจํ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ๋๋ ์ด๊ฒ์ ๋ด ์ง์ญ์์ ์์ ํ๋ ค๊ณ ์๋ํ์ผ๋ฉฐ ์ค๋ ๋์ค์ PR์ ์ด ๊ฒ์ ๋๋ค.
@brendandburns ๋ฌธ์ ๋ฅผ ์ ๊ธฐํ์ง ์์ต๋๋ค.
๋ํ https://github.com/kubernetes/kubernetes/issues/32306์ ์ฐธ์กฐ
@deads2k ์ฒดํฌ๋ฆฌ์คํธ๋ฅผ ์ ๋ฐ์ดํธํ ์ ์์ต๋๊น?
@deads2k ์ฒดํฌ๋ฆฌ์คํธ๋ฅผ ์ ๋ฐ์ดํธํ ์ ์์ต๋๊น?
๋ชจ๋ ๋ฌธ์ ๊ฐ ์์ง ๋ฏธํด๊ฒฐ ์ํ์
๋๋ค. ์ด๊ฒ์ ์ค์ ๋ก 1.3์์ (์ด๋ฏธ) ๋ฒ ํ thirdparyresources
๊ตฌํ์ ๋ฌธ์ ๋ฅผ ์ถ์ ํ๋ ๊ธฐ๋ฅ์
๋๋ค. ์ฐ๋ฆฌ๋ ์ฐ๋ฆฌ์ ๋ฌธ์ ๋ฅผ ์ถ์ ํ ์ฅ์๊ฐ ํ์ํ์ง๋ง 1.5์์ ๋ค๋ฅธ ๋
ธ๋ ฅ์ ์๋์ง๋ฅผ ๋ฐ์ณ์ผ ํ์ต๋๋ค.
@deads2k ์ ๋ ์ด๋ฏธ Multiple Resources, single version
๋ฐ Multiple versions
์์
์ค์ด๋ฉฐ ๋ง์ ์ฝ๋๋ฅผ ์
๋ฐ์ดํธํด์ผ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
@deads2k ๋ ์ฌ์ ํ 1.5๋ฅผ ๋์์ผ๋ก ํฉ๋๊น?
@idvoretskyi ๋๋ ๋๋ ต์ง ์์ต๋๋ค :(
@deads2k : ์ฐํฉ API์ ThirdPartyResources๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
@deads2k : ํ์ฌ ThirdPartyObjects๋ฅผ ์ฟผ๋ฆฌํ ๋ ํ๋ ์ ํ๊ธฐ๊ฐ ์๋ํ์ง ์์ต๋๋ค. ๋ชฉ๋ก์ ํด๋น ์ฌํญ์ด ์์ต๋๊น?
@deads2k @rmohr kubectl์ ์ฌ์ ํ โโTPR์ ๋ํ ๋ง์ ๋ฐ์ด๋ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์ด๋ฅผ ์ถ์ ํ๋ ค๋ฉด ์์ ๋ชฉ๋ก์ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
@deads2k : ํ์ฌ ThirdPartyObjects๋ฅผ ์ฟผ๋ฆฌํ ๋ ํ๋ ์ ํ๊ธฐ๊ฐ ์๋ํ์ง ์์ต๋๋ค. ๋ชฉ๋ก์ ํด๋น ์ฌํญ์ด ์์ต๋๊น?
์ด๋ ๋ชจ๋ API ์ ํ์์ ์ผ๊ด๋์ง ์์ ํ๋ ์ ํ๊ธฐ ์ง์์ ๋ณด๋ค ์ผ๋ฐ์ ์ธ ๋ฌธ์ ์ ๋๋ค.
์ ๋ ์ด๊ฒ๋ถํฐ ๋ณด๊ธฐ ์์ํฉ๋๋ค. ThirdPartyResources๋ spark ์ ๊ฐ์ "์ธ๋ถ" ์ปจํธ๋กค๋ฌ๋ฅผ ์ง์ํ๋ ๋ฐ ๋งค์ฐ ์ค์ํ๋ฉฐ ํ์ ๋ฆฌ์์ค์ ๊ฐ์ ๊ฒ์ ์ถ๊ฐํ๊ธฐ ์ ์ ์ด ๋ฌธ์ ๋ฅผ ์์ ํด์ผ ํฉ๋๋ค.
ํ๋ ์ ํ๊ธฐ๋ ์ผ๋ฐ API ๊ฐ์ฒด์์ ์ง์ ์ ๋ณํ ํ๋์์๋ง ์๋ํฉ๋๋ค. TPR์ ๋ชจ๋ ํ๋์์ ์๋ํ ๊ฒ์ผ๋ก ๊ธฐ๋ํ์ง ์์ต๋๋ค. apiserver๋ ์์ ์ฟผ๋ฆฌ๋ฅผ ์ํํ๋๋ก ๊ตฌ์ถ๋์ง ์์์ต๋๋ค. ๊ทธ๋ฌํ ํ๋์ด ํ์ํ ๊ฒฝ์ฐ TPR์ด ์๋ํ์ง ์์ต๋๋ค.
TPR์ ์ ๋์จ API ์๋ฒ ๋ก ์ฎ๊ธฐ๋ ๋ค์ ๋จ๊ณ๊ฐ ์ฌ๊ธฐ์ ์์ต๋๊น?
์ด ํญ๋ชฉ์์ ์ฐจ๋จ๋ ์ ์๋ ๋ชฉ๋ก์ ์ผ๋ถ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฏธํด๊ฒฐ PR์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
/cc @liggitt @deads2k @AdoHe
apiserver ์ฝ๋์์ TPR์ ๋ณต์ก์ฑ์ ์ค์ด๊ณ TPR ๋
ผ๋ฆฌ๋ฅผ ํจ์ฌ ๋ ๋ช
์์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ๋
๋ฆฝ ์คํํ tpr-apiserver
ํ์คํ ํฌํํ ๊ฒ์
๋๋ค. ๊ทธ๋ฌ๋ IMO๋ ์ค์ ๋ก ์์ ์ฌํญ์ ์ฐจ๋จํ์ง ์์ต๋๋ค.
๋ณํํ ์ ์๋ ์ฌ๋ฌ ์ข ๋ฅ๋ฅผ ์ฒ๋ฆฌํ ๋ API ์๋ฏธ(get, list, watch, update, patch) ์ฒ๋ฆฌ์ ๋ํ ๋ช ๊ฐ์ง ํญ๋ชฉ์ ์ถ๊ฐํ๊ณ ์์ต๋๋ค. ์๋ฏธ ์ฒด๊ณ๊ฐ ์ผ๋ฐ์ ์ธ API ์๋ฏธ ์ฒด๊ณ์ ์ผ์นํ์ง ์์ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์ ์๋ง๋ ์ค๊ณ ๋ฌธ์๊ฐ ํ์ํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์ด ๋ฌธ์ ์ค ์ผ๋ถ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด (๋ ๋ค๋ฅธ) ์คํ์ ํ ๊ฒ์ ๋๋ค ...
https://github.com/kubernetes/kubernetes/pull/40260 ๋ฐ https://github.com/kubernetes/kubernetes/pull/40096 ์ kubectl ์ธก๋ฉด์์ ์ฐ๋ฆฌ๋ฅผ ๊ด์ฐฎ์ ์ํ๋ก ๋ง๋ค ๊ฒ์ ๋๋ค.
ํ์ฌ ๊ฐ์ฅ ์ฌ๊ฐํ ์๋ฒ ์ธก ๋ฌธ์ ๋ TPR์ ๊ฐ๋ฆฌํค๋ ownerRef์ ๋ํด ๊ฐ๋น์ง ์์ง๊ธฐ๊ฐ ์ ์ ์ ์๋ ๊ฒ์ ๋๋ค.
๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ฉด ์ฃผ์ด์ง TPR์ ์ฌ๋ฌ ๋ฒ์ ์ ๋ํ API ์๋ฏธ ์ฒด๊ณ๋ฅผ ๊ฒฐ์ ํ๊ณ TPR ์ ํ์ ํ์ํ ๋ฐ์ดํฐ๊ฐ ์๋์ง ํ์ธํด์ผ ํฉ๋๋ค. ๊ทธ๊ฒ์ ์๋ฒ ์ธก ์คํ ๋ฆฌ์ง impl์ ์ํฅ์ ๋ฏธ์น ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ฏ๋ก ์๋ฒ ์ธก ์์ ์ ๋๋ฌด ๋ง์ด ์ํํ๊ธฐ ์ ์ ๋์์ธ์ ๊ณ ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
@liggitt ๋ฆฌ๋ทฐ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ๊ณ ๋ง์
RBAC ๊ท์น์์ TPR์ ์ฐธ์กฐํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํฌ์ธํฐ๊ฐ ์๋ ์ฌ๋์ด ์์ต๋๊น? foo-bar.something.example.com๊ณผ ๊ฐ์ ์ด๋ฆ์ TPR์ด ์์ต๋๋ค. ํด๋ฌ์คํฐ ๊ด๋ฆฌ์๋ kubectl get foobars
๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ๋ ๋ค์์คํ์ด์ค์ foobar ๋ชฉ๋ก์ ์ป์ ์ ์์ต๋๋ค.
์ผ๋ฐ ์ฌ์ฉ์๊ฐ ๋์ผํ ๊ฒ์ ์๋ํ๋ฉด Error from server (Forbidden): the server does not allow access to the requested resource (get foobars.something.example.com)
๋ฉ๋๋ค.
๋๋ ์ง๊ธ๊น์ง ์ด์ด ์๋ RBAC ๊ท์น์์ ์๊ฐํ ์ ์๋ foobar, foo-bar ๋ฑ์ ๋ชจ๋ ๋ณํ์ ์๋ํ์ต๋๋ค.
๊ท์น์์ ๋ค์์ ์ฐพ๊ณ ์์ต๋๋ค. resource=foobas apigroup=something.example.com verb=get,list,watch
@deads2k ํธ๋ฆญ์ ํ์ต๋๋ค. ๊ฐ์ฌ ํด์!
@liggitt
The most severe server-side issue at the moment is the garbage collector losing its mind over ownerRefs that point to TPRs.
TPR ์ ๋ฆฌ ๋ฌธ์ ์ ๊ด๋ จ๋ ๊ฒ์ด ์์ต๋๊น?
์๋์, ๊ฐ๋น์ง ์์ง๊ธฐ๊ฐ ํ์์ผ๋ก ์ปดํ์ผ๋์ง ์์ ๋ค๋ฅธ ํญ๋ชฉ์ ๋ํด ownerRef๋ฅผ ์กฐํํ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๋ ๋ฌธ์ ์์ต๋๋ค. ๋ฐ๋ ๋ฌธ์ ๋ ์กด์ฌํ๋๋ฐ, ๊ฐ๋น์ง ์์ง๊ธฐ๋ ์ปดํ์ผ๋ ์ ํ ์ด์ธ์ ์ข ๋ฃ์์ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด์ง ์์ต๋๋ค.
์ด๋ฌํ ๊ฐ๋น์ง ์์ง๊ธฐ ๋ฌธ์ ๋ ๋ชจ๋ ThirdPartyResource ๊ฐ์ฒด๊ฐ ์ ๊ฑฐ๋ ๋ ThirdPartyResourceData ๊ฐ์ฒด๋ฅผ ์์ ์ ์ผ๋ก ์ ๋ฆฌํด์ผ ํ๋ ํ์์ฑ๊ณผ ๋ค๋ฆ ๋๋ค.
@liggitt ํ์ ์ค๋ช ๊ฐ์ฌํฉ๋๋ค. 1.6์์ TPR์ ๊ณํ์ ๋ฌด์์ ๋๊น?
GC๋ ์ด์ ์ด๋น 50,000๋ฒ ๋์ ์ด๋น 1,000๋ฒ๋ง ๊ธฐ๋กํฉ๋๋ค.
๊ทธ๋์ ๋ ์ด์ ๋ก๊ทธ ๋กํ
์ดํฐ๋ก ๊ฒฝ์ฃผ์์ ์ด๊ธฐ์ง ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ง์ ํ ํด๊ฒฐ์
๊ณง ์ฌ ๊ฒ์
๋๋ค.
2017๋ 2์ 4์ผ ํ ์์ผ ์คํ 11์ 54๋ถ์ TonyAdo [email protected]์์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
@liggitt https://github.com/liggitt ํ์ ์ค๋ช ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
1.6์์ TPR์ ๊ณํ์ ๋ฌด์์ ๋๊น?โ
๋น์ ์ด ์ธ๊ธ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๋ ๊ฒ์ ๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธ
https://github.com/kubernetes/features/issues/95#issuecomment-277503470 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAnglmGf00K6W7SsJ1aSqWOI_M-A7Hf2ks5rZYBPgaJpZM4KLBmK
.
TPR๊ณผ ๊ด๋ จ๋ ๋ช ๊ฐ์ง ๋ฏธํด๊ฒฐ ๋ฌธ์ . ์์ ํ์ง ์์ต๋๋ค.
๊ทธ๋ฃน/๋ฒ์ ๋ฌธ์ : https://github.com/kubernetes/kubernetes/pull/24299 , https://github.com/kubernetes/kubernetes/pull/36977
๋ณด๊ธฐ: https://github.com/kubernetes/kubernetes/issues/25340
์์ฒด ๋งํฌ: https://github.com/kubernetes/kubernetes/issues/37622
๋ค์์คํ์ด์ค ์ญ์ : https://github.com/kubernetes/kubernetes/issues/37554
GC: https://github.com/kubernetes/kubernetes/issues/39816
์ข
๋ฃ์: https://github.com/kubernetes/kubernetes/issues/40715
TPR ๋ฐ์ดํฐ ์ ๋ฆฌ: https://github.com/kubernetes/kubernetes/issues/35949
๋ ๊ฐ๋ ฅํ ๋ฉํ๋ฐ์ดํฐ ๊ฒ์ฆ: https://github.com/kubernetes/kubernetes/issues/22768#issuecomment -215940468
๋จ์ ํ
์คํธ ๋ถ์กฑ: https://github.com/kubernetes/kubernetes/pull/40956
์ ๋ฆฌ: https://github.com/kubernetes/kubernetes/issues/36998
์ฌ์ฉ์๊ฐ ๋ค๋ฅธ ๋ฆฌ์์ค์์ ์๋ํ๊ธฐ ๋๋ฌธ์ ๋ฒ๊ทธ๋ผ๊ณ ์๊ฐํ๋ ๊ธฐ๋ฅ:
๋น๋๊ธฐ ๋์: https://github.com/kubernetes/kubernetes/issues/29002
์ ์: https://github.com/kubernetes/kubernetes/issues/30213
YAML: https://github.com/kubernetes/kubernetes/issues/37455
๊ด์ฐฎ์ kubectl ์ถ๋ ฅ: https://github.com/kubernetes/kubernetes/issues/31343
๋ฆฌ์์ค ๋ช
๋ช
๊ฐ์ํ: https://github.com/kubernetes/kubernetes/issues/29415
์ ์ฒญ: https://github.com/kubernetes/kubernetes/issues/29542 , https://github.com/kubernetes/kubernetes/issues/39906
ํธ์ง: https://github.com/kubernetes/kubernetes/issues/35993
/cc
๋์๋ณด๋์์ TPR์ ์ฒ๋ฆฌํ๋ ค๊ณ ํ๋ฏ๋ก ๊ตฌ๋ ํฉ๋๋ค.
์ถ์ ๋ฌธ์ ๋ https://github.com/kubernetes/dashboard/issues/1671 ๋ฐ https://github.com/kubernetes/dashboard/issues/1504์ ๋๋ค.
@kubernetes/dashboard-maintainers
๋ค์์คํ์ด์ค๊ฐ ์๋ TPR์ ์ํ/๊ณํ์ ๋ฌด์์ ๋๊น? ๋๋ ๊ทธ๊ฒ์ ๋ํ ํ ๋ก ์ ์ฐพ์ง ๋ชปํ์ต๋๋ค. ์๋ง๋ ๋ญ๊ฐ๋ฅผ ๋์น ๊ฒ์ ๋๊น?
@sttts ๋จผ์ Kubernetes์ ๊ฐ๋ฐ์ ๊ด์ฌ์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ ๊ทธ๊ฒ์ ๊ธฐ์ฌํ๊ณ ์ถ์ง๋ง ๋ฐ๋์ ์ ์๊ฒ ์๋ก์ด ์ธ์ด์ ๋๋ค. GSoC 2017์ฉ์ผ๋ก ์ด ํ๋ก์ ํธ๋ฅผ ์ํํ ์ ์๋๋ก ์ฌ๋ฌ๋ถ์ด ์ถ์ฒํ๋ ์์ ์ ๋ฌด์์ ๋๊น?
๋์ ๋ํด ๋ง๋ถ์ด์๋ฉด, ์ ๋ C++์ Java์ ์๋นํ ๋ฅ์ํ๋ฉฐ ์ปดํจํฐ ๊ณตํ ํ์ฌ๋ฅผ ๋ณด์ ํ๊ณ ์์ต๋๋ค. ๋ํ ๋ฌธ์๋ฅผ ์ฝ๊ธฐ ์์ํ์ผ๋ฉฐ Kubernetes์ ๊ด๋ จ๋ Udacity ๊ณผ์ ์ ์๊ฐํ์ต๋๋ค.
@grpndrs ์ฐ๋ฆฌ๋ ์ฝ๋์ ๋ค์ด๊ฐ๊ธฐ์ ์ข์ ์ถ๋ฐ์ ์ธ ๋ ์ด๋ธ์ด ์ง์ ๋ ๋ฌธ์ ๋ชฉ๋ก์ ๊ฐ์ง๊ณ ์์ต๋๋ค. https://github.com/kubernetes/kubernetes/issues?q=is%3Aopen+is%3Aissue+label%3Afor-new -๊ธฐ๊ณ ์. ์ฌ์ ๋กญ๊ฒ ์ ์๊ฒ ์ฐ๋ฝํด ์ฃผ์๋ฉด ๊ทธ ์ค ๋ช ๊ฐ์ง๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
@enisoc
Multiple Resources, single version, different add times
์ฌ์ ํ ๋ฌธ์ ์
๋๊น? ๋ฌธ์ ์์ด ์ฌ๋ฌ TPR์ ๋ง๋ค๊ณ ์ญ์ ํ ์ ์์ต๋๋ค.
๋ํ Outstanding Capabilities
์ ํ์ธ๋์ ๋ฒํธ๋ฅผ ๋งค๊ธฐ๋ฉด ์ฐธ์กฐํ๊ธฐ ์ฝ์ต๋๊น? @deads2k ๋ค์๊ณผ ๊ฐ์ด ํ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
1. - [ ] ...
2. - [ ] ...
์ด๊ฒ์ ์ ํจ์ฑ ๊ฒ์ฌ ๊ตฌ์ฑ ์์๊ฐ ์ด๋ป๊ฒ ์งํ๋๋์ง ์๋ ์ฌ๋์ด ์์ต๋๊น? ์ ๋ TPR์ ๋ง์ด ์ฌ์ฉํ๋ฉฐ ์ด ๊ธฐ๋ฅ์ ๊ฐ์ ๋งค๊ธธ ์ ์์ผ๋ฉฐ ๋ง์ ์ฌ์ฉ์ ์ง์ ์ฝ๋๋ฅผ ์ ์ฝํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ๊ธฐ์ฌํ๊ณ ์ถ์ง๋ง ์ด ๋ฌธ์ ๋ฅผ ๊ตฌ๋ ํ๋ ์ฌ๋์ด ์ํ๋ฅผ ์๊ณ ์๋์ง ์๊ณ ์ถ์ต๋๋ค.
์ด๊ฒ์ ์ ํจ์ฑ ๊ฒ์ฌ ๊ตฌ์ฑ ์์๊ฐ ์ด๋ป๊ฒ ์งํ๋๋์ง ์๋ ์ฌ๋์ด ์์ต๋๊น?
๋๋ ๊ทธ๊ฒ์ด 1.7์ ์ผ์ด๋ ๊ฒ์ผ๋ก ๊ธฐ๋ํ์ง ์๋๋ค. ํ์ฌ https://github.com/kubernetes/community/pull/524 ์์ ๋ณด๋ค ์์ ์ ์ธ ์ฑ์ฅ ๊ธฐ๋ฐ์ ์ ๊ณตํ๊ธฐ ์ํด ๋ช ๊ฐ์ง ๊ตฌ์กฐ์ ์ฑ์ฅํต์ ๋ํด ๋ ผ์ํ๊ณ ์์ต๋๋ค.
๋๋ ๊ทธ๊ฒ์ด 1.7์ ์ผ์ด๋ ๊ฒ์ผ๋ก ๊ธฐ๋ํ์ง ์๋๋ค. ํ์ฌ kubernetes/community#524์์ ๋ณด๋ค ์์ ์ ์ธ ์ฑ์ฅ ๊ธฐ๋ฐ์ ์ ๊ณตํ๊ธฐ ์ํด ๋ช ๊ฐ์ง ๊ตฌ์กฐ์ ์ฑ์ฅ ๋ฌธ์ ์ ๋ํด ๋ ผ์ํ๊ณ ์์ต๋๋ค.
1.7 ๊ธฐ๊ฐ ๋์ https://github.com/kubernetes/community/blob/master/contributors/design-proposals/thirdpartyresources.md ๋ก ์งํํ ๊ณํ์ ๋๋ค. ์งํํ๋ฉด์ ์ฌ๊ธฐ์ sig-apimachinery ํธ์ถ์์ ์ ๋ฐ์ดํธํ๊ฒ ์ต๋๋ค.
@deads2k tpr ์ ํจ์ฑ ๊ฒ์ฌ์ ๋ํด ์๋ฌด ๊ฒ๋ ๋ณด์ง ๋ชปํ์ต๋๋ค. ๋ฒ ํ์ ํ์ํ ๋ถ๋ถ์ด๋ผ๊ณ ์๊ฐํ์ง ์์ผ์ธ์?
@frankgreco ์ ์์ TPR์ ๊ตฌ์ถํ ์ ์๋ ๊ฑด์ ํ ๊ธฐ๋ฐ์ ๊ดํ ๊ฒ์ ๋๋ค. ์ ํจ์ฑ ๊ฒ์ฌ์ ๊ฐ์ ๊ธฐ๋ฅ์ ๋์ค์ ์ถ๊ฐํ ์ ์์ง๋ง ์ฌ๊ธฐ์๋ ๋ฒ์๋ฅผ ๋ฒ์ด๋ฉ๋๋ค.
์ ํ ํ๋ฆฟ์ ์ฌ์ฉํ๊ณ 1.7์ ๋ํด ๊ณํ๋ ์์ ๋ฒ์๋ฅผ ๋ช ํํ ํ๊ธฐ ์ํด ์ด ์ค๋ ๋์ ์์ ์ฃผ์์ ํธ์งํ์ต๋๋ค. ๋ณด์๊ณ ์์ /๋๊ธ ๋ถํ๋๋ฆฝ๋๋ค.
@deads2k @enisoc ์ฐ๋ฆฌ๋ ์ต๊ทผ์ TPR์ ์ฌ์ฉํ๊ธฐ ์์ํ์ผ๋ฉฐ TPR ๊ฒ์ฆ์ ์ฐ๋ฆฌ์ ๋ค๊ฐ์ค๋ ํ๋ก์ ํธ ์ค ์ผ๋ถ์์ ๋งค์ฐ ์ค์ํ ๊ฒ์ ๋๋ค. ์์ ํ ์ ์๋ ๋ฆฌ์์ค๊ฐ ์๋ค๋ฉด ์ปค๋ฎค๋ํฐ ๊ธฐ์ฌ์๋ฅผ ๋ฐ์ ๋ค์ผ ์ ์์ต๋๊น?
@deads2k @enisoc ์ฐ๋ฆฌ๋ ์ต๊ทผ์ TPR์ ์ฌ์ฉํ๊ธฐ ์์ํ์ผ๋ฉฐ TPR ๊ฒ์ฆ์ ์ฐ๋ฆฌ์ ๋ค๊ฐ์ค๋ ํ๋ก์ ํธ ์ค ์ผ๋ถ์์ ๋งค์ฐ ์ค์ํ ๊ฒ์ ๋๋ค. ์์ ํ ์ ์๋ ๋ฆฌ์์ค๊ฐ ์๋ค๋ฉด ์ปค๋ฎค๋ํฐ ๊ธฐ์ฌ์๋ฅผ ๋ฐ์ ๋ค์ผ ์ ์์ต๋๊น?
์ ์ ์ผ๋ก. ์ด์ ๊ฐ์ ๊ฒฝ์ฐ pull ์์ฒญ์ ์ดํด๋ณด๊ธฐ ์ ์ ๋์์ธ ์ ์์ด ํ์ํฉ๋๋ค. ๋ํ ๊ฐ๋ฅํ ๋ค์ํ ์ ๊ทผ ๋ฐฉ์์ ๊ณ ๋ คํ ๋ ์์ 3๊ฐ ์ ๋์ ์์ด๋์ด๋ฅผ ๋์ดํ๊ณ ์ ํํ ๋ฐฉ๋ฒ์ด ๊ฐ์ฅ ์ข์ ์ด์ ์ ๋ํด ๊ฐ๋ตํ๊ฒ ์ค๋ช ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์๋ฒ ์ธก์ด๋ฏ๋ก ์ฑ๋ฅ ๋ฐ ๋ณด์ ๊ณ ๋ ค ์ฌํญ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค.
๋ํ ์ด๊ฒ์ ๊ด๋ฒ์ํ ๊ธฐ๋ฅ์ด๊ธฐ ๋๋ฌธ์ ๋๋ผ์ด๋ธ ๋ฐ์ด ๊ธฐ์ฌ๊ฐ ๋์ง ์๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/thirdpartyresources.md ๋ก์ ์ ํ์ ์ํ ์ ๊ทน์ ์ธ ๊ธฐ์ฌ(๋ฆฌ๋ทฐ, ํ ์คํธ, ์ฝ๋, ๋ง์ด๊ทธ๋ ์ด์ )๊ฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค. ๊ด์ฌ์ด ์๊ณ ์ด์ผ๊ธฐํ๊ณ ์ถ๋ค๋ฉด ๋๋ deads2k on slack์ ๋๋ค.
@deads2k ๊ฐ์ฌํฉ๋๋ค! ๊ทธ๊ฒ์ ์์ ํ ํฉ๋ฆฌ์ ์ ๋๋ค. TPR ๊ฒ์ฆ์ ์ํ ๋ช ๊ฐ์ง ์ค๊ณ ์ ์์ ์ ์ํ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ๊ณต์ ํ๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น? ๋๋ ์ฌํ๊ฑฐ์ผ.
@xiao-zhou ๋ฐ๋ก ์ด ์ฃผ์ ์ ๋ํ Google Summer of Code ํ๋ก์ ํธ๋ฅผ ์๋ฝํ๊ฒ ๋์ด ๊ธฐ์ฉ๋๋ค(๋ฐฉ๊ธ ์ด์ ๋ฐํ๋จ). ์ด์ ๋ํด ํ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด Slack์์ ์ฑํ ํฉ์๋ค. ๋น์ ์ด ์ด๊ฒ์ ๊ด์ฌ์ ๊ฐ์ง๊ณ ์๋ค๋ ๊ฒ์ ๋งค์ฐ ๋ฉ์ง ์ผ์ ๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ด๊ฒ์ ์์ผ๋ก ๋ฐ์ด๋ถ์ผ ์๋นํ ํ์ด ์์ต๋๋ค!
@xiao-zhou @sttts @deads2k TPR ๊ฒ์ฆ(์ด์์ ์ผ๋ก๋ ๊ธฐ๋ณธ๊ฐ ์ค์ )์ ๋ํ ์ ์์ ๋ฐ์๋ง์ ์ ์ ๊ฒํ ์์ ์ ๋ฅผ ํ๊ทธํ์๊ฒ ์ต๋๊น? ๊ฐ์ฌ ํด์
@sdminonne sig-apimachinery์ ๊ฒ์๋ฉ๋๋ค. ํด๋น Google ๊ทธ๋ฃน์ ๊ฐ์ ํ๋ฉด ์๋ฆผ์ ๋ฐ์์ผ ํฉ๋๋ค.
@sttts ๊ฐ์ฌํฉ๋๋ค
@deads2k TPR ์ ObservedGeneration์ ์ถ๊ฐํ์๊ฒ ์ต๋๊น?
https://github.com/kubernetes/kubernetes/issues/7328#issuecomment -287683598
@deads2k TPR ์ ObservedGeneration์ ์ถ๊ฐํ์๊ฒ ์ต๋๊น?
๋๋ ๊ณํํ์ง ์์๋ค. ๊ด์ฌ์ด ์๋ ํด๋ผ์ด์ธํธ๋ ๋จ์ํ ์ฌ์ ๋ฐ ์ํ ์ด๋ฆ์ ๋น๊ตํ ์ ์์ต๋๊น?
์ฌ์ ๋ฐ ์ํ ์ด๋ฆ์ ๋น๊ตํ์๊ฒ ์ต๋๊น?
๋ฌด์จ ๋ง์ธ์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ ์ ํฉ๋๋ค. ์ ๊ฐ ํ๋ ธ์ง๋ง ObservedGeneration์ ๋ ๋ถ๋ถ์ด ์๋ค๊ณ ์๊ฐํฉ๋๋ค. 1) API ์๋ฒ๋ TPR ์ฌ์์ ์
๋ฐ์ดํธ๊ฐ ์์ ๋๋ง๋ค metadata.generation
๋ฅผ ์
๋ฐ์ดํธํด์ผ ํ๊ณ 2) TPR์ status.observedGeneration
๊ธฐ๋ฐ์ผ๋ก metadata.Generation
ํฉ๋๋ค. ๋๋ 1) ๋ด๊ฐ ๋น์ ์๊ฒ ๋ฌป๋ ๊ฒ์ด๊ณ 2) TPR ์์ฑ์๊ฐ ์ฒ๋ฆฌํด์ผ ํ ์ผ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๋ฌด์จ ๋ง์ธ์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ๋ด๊ฐ ํ๋ ธ์ง๋ง ObservedGeneration์ ๋ ๋ถ๋ถ์ด ์๋ค๊ณ ์๊ฐํ๋ ๊ฒฝ์ฐ ์์ ํ์ญ์์ค. 1) API ์๋ฒ๋ TPR ์ฌ์์ ์ ๋ฐ์ดํธ๊ฐ ์์ ๋๋ง๋ค metadata.generation์ ์ ๋ฐ์ดํธํด์ผ ํ๊ณ 2) TPR ์ ๋ฐ์ดํธ ์ํ๋ฅผ ๋ด๋นํ๋ ์ปจํธ๋กค๋ฌ .observedGeneration์ metadata.Generation์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ๋๋ 1) ๋ด๊ฐ ๋น์ ์๊ฒ ๋ฌป๋ ๊ฒ์ด๊ณ 2) TPR ์์ฑ์๊ฐ ์ฒ๋ฆฌํด์ผ ํ ์ผ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์, ๋ฌด์จ ์ง๋ฌธ์ ํ์๋์ง ์ ๊ฐ ์๋ชป ์ดํดํ์ต๋๋ค. CustomResourceDefinition์ด ์๋ CustomResource์ ๋ํดobservedGeneration์ ์ํฉ๋๋ค. ๋๋ ๊ด์ฐฐ๋ ์์ฑ์ด ์กฐ์น๊ฐ ํ์ํ ์ฌ์ ๋ณ๊ฒฝ์ ๋ํด์๋ง ์ถฉ๋ํ๋ค๊ณ ์๊ฐํ์ต๋๋ค. ๋ฉํ๋ฐ์ดํฐ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์ด๋ฅผ ํธ๋ฆฌ๊ฑฐํ์ง ์์์ผ๋ฉฐ ์ผ๋ถ ์ฌ์ ํ๋์ ๋ํ ์ ๋ฐ์ดํธ๋ ์ถฉ๋์ ํผํ ์ ์์์ ์๋ฏธํฉ๋๋ค.
์์ ๋งํฌ๋ ๋ด ์๊ฒฌ์์ ๋๋ TPR ์์ฒด๊ฐ ์๋๋ผ TPR ์ธ์คํด์ค์ ๋ํ Generation ์ง์์ ์์ฒญํ์ต๋๋ค.
์๋ฅผ ๋ค์ด Kind: TPR; name: foo.example.com
๋ฐ ํด๋น TPR Kind: Foo; name: foo123
์ธ์คํด์ค๊ฐ ์๋ ๊ฒฝ์ฐ foo123
๋ํ Generation/ObservedGeneration์ ๊ด์ฌ์ด ์์ผ๋ฏ๋ก Foo ์ปจํธ๋กค๋ฌ๊ฐ Foo ์๋น์๊ฐ ์ฒ๋ฆฌํ๋์ง ์ ์ ์๋๋ก ํฉ๋๋ค. foo123
์ธ์คํด์ค์ ๋ํ ์
๋ฐ์ดํธ. ๋ง์ด ๋๋์? k8 ์๋ฒ ์ธก์์ ์ ์ ํ ์ง์ ์์ด ์ด๊ฒ์ด ์ด๋ป๊ฒ ๋ฌ์ฑ๋ ์ ์๋์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
์, generation/observedGeneration์ ์งํํ ์ค์ TPR ๋ฆฌ์์ค๊ฐ ์๋๋ผ TPR์ ์ฌ์ฉ์ ์คํค๋ง์ ๋ํด ์๋ฏธ๊ฐ ์์ต๋๋ค.
@kargakis ๊ท์น์ ์ํ๊ฐ ์๋ ์ฌ์ ์ ๋ฐ์ดํธ ์์๋ง ๊ฐ์ฒด ์์ฑ์ ์ฆ๊ฐ์ํค๋ ๊ฒ์ ๋๋ค. ๋ง์ฃ ? ๊ทธ๋ ๋ค๋ฉด ๋จผ์ TPR ์ธ์คํด์ค์์ ์ฌ์/์ํ ๋ถํ ์ ๊ณต์์ ์ผ๋ก ์ง์ํด์ผ ํฉ๋๋ค. 1.8์ ๋ชฉํ๋ก TPR ์ํ์ ๋ํ ์ ์์๋ฅผ ์์ฑํ ๊ณํ์ด์์ต๋๋ค. ์ ์์์ ์ฆ๊ฐํ๋ ๊ฐ์ฒด ์์ฑ์ ํฌํจํ ์ ์์ต๋๋ค.
๊ท์น์ ์ํ๊ฐ ์๋๋ผ ์ฌ์ ์ ๋ฐ์ดํธ ์์๋ง ๊ฐ์ฒด ์์ฑ์ ์ฆ๊ฐ์ํค๋ ๊ฒ์ ๋๋ค. ๋ง์ต๋๊น?
์ณ์.
๊ทธ๋ ๋ค๋ฉด ๋จผ์ TPR ์ธ์คํด์ค์์ ์ฌ์/์ํ ๋ถํ ์ ๊ณต์์ ์ผ๋ก ์ง์ํด์ผ ํฉ๋๋ค.
์, ๊ธฐ์กด ๋ฌธ์ ์ ์ผ๋ถ๋ก ํด๋น ๋ถํ ์ ์ฐพ์ ๊ฒ์ผ๋ก ์์ํ์ง๋ง ๊ฑฐ๊ธฐ์ ๋๋ฌํ๊ธฐ ์ ์ ๋ ๋ง์ ์์ ์ด ํ์ํ ๊ฒ ๊ฐ์ต๋๋ค.
@kargakis 1.7์ ๋ฒ์๋ฅผ ๋ฒ์ด๋ฌ์ง๋ง ์ด๋ฌํ ํญ๋ชฉ์ ์ธ๊ธํ๊ธฐ ์ํด ์ต์์ ์ฃผ์์ ํธ์งํ์ต๋๋ค.
/cc
@deads2k CustomResourceDefinition์
CustomResourceDefinition ์ ๋ํ ์งง์ ์ด๋ฆ CRD๋ฅผ ์ถ๊ฐํ์ต๋๋ค .
CustomResources ๊ฒ์ฆ์ ์ํ ๋์์ธ ์ ์: https://github.com/kubernetes/community/pull/708 :smile:
@deads2k @enisoc @lavalamp
์ฌ์ฉ์๊ฐ CRD ๊ฐ์ฒด์ ๋ํด k8s ์ปจํธ๋กค๋ฌ AND(OR) CURD ๋ฉ์๋๋ฅผ ๊ตฌ์ฑํ ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
๋ด ํน์ ์ฌ์ฉ ์ฌ๋ก์์๋ networks.stable.example.com
CRD๋ฅผ ๋ง๋ค๊ณ ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ ๊ฐ์ฒด net1์ ๋ง๋ญ๋๋ค.
์๋ธ๋ท ๋ฒ์๊ฐ ๊ฒน์น๋ ๋คํธ์ํฌ CRD ๊ฐ์ฒด๊ฐ ์ด๋ฏธ ์๋ ๊ฒฝ์ฐ ์ ๋คํธ์ํฌ CRD ๊ฐ์ฒด๋ฅผ ๋ง๋ค ์ ์๋๋ก ํด์ผ ํฉ๋๋ค.
๊ทธ๋ฌํ ๋ฉ์ปค๋์ฆ์ด ์กด์ฌํ์ง ์๋๋ค๋ฉด, ๋๋ ๊ธฐ๊บผ์ด ๋์์ธ ๋ฌธ์์ ๋ช ๊ฐ์ง ์๊ฐ์ ์กฐํฉํ ๊ฒ์ ๋๋ค.
1.7 ๋ฆด๋ฆฌ์ค ๋ ธํธ ๋ฐ ๋ฌธ์์์ ์ธ๊ธํ๋ฏ์ด TPR์ ์ด์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ 1.8์์ ์ ๊ฑฐํ ๊ณํ์ ๋๋ค. ์ฌ์ฉ์๋ 1.7 ๊ธฐ๊ฐ ๋์ CRD๋ก ์ ํํด์ผ ํฉ๋๋ค.
์ง๋ฌธ์ด๋ ์ฐ๋ ค ์ฌํญ์ด ์๋ ๊ฒฝ์ฐ ์ ๊ฑฐ๋ฅผ ์ํ ์ถ์ ๋ฌธ์ ์ ๋ํด ์๊ฒฌ์ ๋งํ์ญ์์ค.
@nikhita ๊ฐ์ฌํฉ๋๋ค. 1.8 ๊ณํ์ ๋ฐ์ํ๋๋ก ์๋จ ๋๊ธ์ ํธ์งํ์ต๋๋ค.
๊ฒ์์ CR์ ๋ํ ์ฌ๋ฐ๋ฅธ ์ ๋ณด๋ฅผ ๋ฐํํ์ง๋ง REST ๋งคํผ๋ ์ด๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค - https://github.com/kubernetes/kubernetes/issues/49948
CustomResources์ฉ SubResources ์ ์: https://github.com/kubernetes/community/pull/913 :tada:
๋ด ์๋ชป๋ ๊ฒ์๋ฌผ์ ์ฉ์ํด ์ฃผ์ธ์. ๊ทธ๋ฌ๋ ๋๋ kubernetes๊ฐ ๋จ์ง ์ 3์ ์ปจํ ์ด๋ ์์์ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ฒ ์ด์์ผ๋ก ๋ง์ดํฌ๋ก ์๋น์ค ํ๋ ์์ํฌ๋ฅผ ํฌํจํ๋ค๊ณ ์๊ฐํ๋ ๋ค๋ฅธ kubernetes ํ์ด์ง์์ ์ด ํ์ด์ง์ ์์ต๋๋ค.
Redhat์ OpenShift kubernetes๋ฅผ ๋ง์ดํฌ๋ก ์๋น์ค ํ๋ซํผ์ผ๋ก ๋ง์ผํ ํ์ง๋ง ์์ง ์ด ๊ธฐ๋ฅ์ ์ฐพ์ง ๋ชปํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ด ์์ ์ ๋งค์ฐ ๊ฐ๋ฒผ์ด ๋ ๋ฆฝ ์ ํ๋ฆฌ์ผ์ด์ ๋ง์ดํฌ๋ก ์๋น์ค ์ ํ๊ตฐ์ ํธ์คํ ํ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ฅผ ์ฐพ๊ณ ์์ต๋๋ค.
๊ทธ๋ฐ ๊ฒ์ด ์กด์ฌํฉ๋๊น, ์๋๋ฉด ์ฐ๋ฆฌ๋ springboot์์ ๋ฑ๋ฑํ ์๋ฐ ์ ์ ์ฑ์ ๋ง๋ค๊ณ ๊ด๋ฆฌํ๊ธฐ ์ด๋ ต๊ณ ๋ฐฐํฌํ๊ธฐ ์ด๋ ค์ด kuberenetes ๊ด๋ฆฌ ์ปจํ ์ด๋ ๋ด๋ถ์ ์๋ tomcat ์๋ฒ์ ๋ฐฐํฌํ๋๋ก ๊ฐ๋ฑ๋์์ต๋๋ค. ๊ด๋ฆฌ์ 1๋ช ์ด ์๋ฐฑ ๊ฐ์ ๋ง์ดํฌ๋ก ์๋น์ค๋ฅผ ๊ด๋ฆฌํ๊ณ ์ด์ํ ์ ์๋ ๋ง์ดํฌ๋ก ์๋น์ค ํ๋ซํผ์ด ํ์ํฉ๋๋ค.
์ด ์ง๋ฌธ์ด ์๋ฏธ๊ฐ ์์ต๋๊น?
@hectoralicea ์ด ์ ์ฅ์๋ Kubernetes ๊ฐ๋ฐ์๊ฐ ์์ ํ ๊ธฐ๋ฅ์ ๊ณํํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์ด์ ๊ฐ์ ์ผ๋ฐ์ ์ธ ์ง๋ฌธ์ Kubernetes ์ฌ์ฉ์ ๊ทธ๋ฃน์ ๊ฒ์ํ์ญ์์ค. ๊ทธ๋ค์ ์ผ๋ฐ์ ์ผ๋ก ์ด๋ฐ ์ข ๋ฅ์ ๋์ ์์ค์ ํ ๋ก ์ ํจ์ฌ ๋ ๋์์ด ๋ฉ๋๋ค. :)
https://groups.google.com/forum/#!forum/kubernetes -users, http://slack.k8s.io/ ๋๋ ์คํ ์ค๋ฒํ๋ก๋ฅผ ์ฐธ์กฐ ํ์ธ์ .
@colemickens @deads2k @nikhita @enisoc 1.9์ ๋ํ ์น์ ์ ์ถ๊ฐํ์ต๋๋ค.
@sttts v1.9์์ ๊ฐ์ ๋ ๋ฒ ํ ๋ฒ์ ๋ง์ฃ ?
@luxas ๋ฒ๊ทธ์์ ๋ฌผ๋ก ์ ๋๋ค. ํ์ง๋ง ์ฌ๊ธฐ์ ๋์ดํ ํ์๋ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
@sttts ์ ๋ CRD ๊ฒ์ฆ์ ๋ํด ์๊ฐํ๊ณ ์์์ต๋๋ค... ์ด ๊ธฐ๋ฅ ๋ฌธ์ ์์ ๋ค๋ฃจ์ด์ง๊ณ v1.9์์ ๋ฒ ํ๋ก ์ ํ๋ฉ๋๊น?
@luxas ์ด๊ธฐ ๊ฒ์๋ฌผ์
Scope of work planned for v1.9
CRD validation to beta kubernetes/kubernetes#22768 kubernetes/kubernetes#53829
CRD sub-resources as alpha kubernetes/community#913
์ค, ๊ฐ์ฌํฉ๋๋ค @kargakis , ๊ฑฐ๊ธฐ๋ฅผ ๋ณด์ง ์์์ต๋๋ค :facepalm: :smile:
@deads2k , @enisoc 1.9์์ "์์ ์ ์ธ" ๊ณํ์ด ์์ต๋๊น?
@idvoretskyi ๋ง์ต๋๋ค.
@deads2k :wave: ๋ฌธ์ PR์ ์ด๊ณ ์ถ์ ์คํ๋ ๋์ํธ์ ๋ํ ๋งํฌ๋ฅผ ์ถ๊ฐํ์ธ์. ๋ฏธ๋ฆฌ ๊ฐ์ฌ๋๋ฆฝ๋๋ค!
@deads2k ๋ฌธ์ PR์ ์ด๊ณ ์ถ์ ์คํ๋ ๋์ํธ์ ๋ํ ๋งํฌ๋ฅผ ์ถ๊ฐํ์ญ์์ค. ๋ฏธ๋ฆฌ ๊ฐ์ฌ๋๋ฆฝ๋๋ค!
@zacharysarah ์คํ๋ ๋์ํธ ๋งํฌ๋ฅผ ์๋ชป ๋ฐฐ์นํ ๊ฒ ๊ฐ์ต๋๋ค. CRD ์ ํจ์ฑ ๊ฒ์ฌ ๋ฌธ์๋ ์ฌ๊ธฐ https://github.com/kubernetes/website/pull/6066
์ฐธ๊ณ ๋ก CRD ๋ฒ์ ๋ฌธ์ ๋ https://github.com/kubernetes/features/issues/544์ ์์ต๋๋ค.
GA๋ก ์ด๋ํ๋ CRD์ ์์ ๋ชฉ๋ก: https://github.com/kubernetes/kubernetes/issues/58682
@nikhita ์ ์ฒด CRD ๊ธฐ๋ฅ์ด GA๋ก ์ด๋ํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๊น?
์ ์ฒด CRD ๊ธฐ๋ฅ์ด GA๋ก ์ด๋ํ๋ค๋ ์๋ฏธ์ ๋๊น?
API๋ GA, ์ฆ v1์ผ๋ก ์ด๋ํ๋ฉฐ ์ผ๋ถ ๋ฒ ํ/์ํ ํ์ ๊ธฐ๋ฅ์ด ์์ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ์ธ์ ์ผ์ด๋ ์ง, ์ฆ 1.10์ด ์คํ ๊ฐ๋ฅํ์ง ์ฌ๋ถ๋ ์ข ๋ฃ๋์ง ์์ต๋๋ค.
@sttts @nikhita ๊ธฐ๋ฅ ๋ก๋๋งต์ ๋ ์ ํํ๊ฒ ์ ์ํ ์ ์์ต๋๊น?
๊ธฐ๋ฅ ๋ก๋๋งต์ ๋ ์ ํํ๊ฒ ์ ์ํ ์ ์์ต๋๊น?
1.10์ ๊ฒฝ์ฐ:
๋ค์ ๋ฆด๋ฆฌ์ค์ ๋ํด ๊ณํ๋ _์ ํํ_ ๊ฒฐ๊ณผ๋ฌผ ์ธํธ๋ ์์ง๋ง ์ฐ๋ง๊น์ง GA๋ก ์ ํํ ๊ณํ์ ๋๋ค(https://groups.google.com/forum/#!topic/kubernetes-sig-api-machinery/ 07JKqCzQKsc).
https://github.com/kubernetes/kubernetes/issues/58682์ ํ์๋์ง ์์ ๋ชจ๋ ๋ฌธ์ ๊ฐ ์๋ฃ๋๋ฉด GA๋ก ์ด๋ํฉ๋๋ค.
CRD API๊ฐ GA๋ก ์ ํ๋๋ฉด ์ฌ๊ธฐ์ ๊ธฐ๋ฅ์ด ์์ ์ ์์ต๋๋ค(์: CustomResourceValidation
https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apiextensions-apiserver/ pkg/features/kube_features.go#L35) ์ํ/๋ฒ ํ ๋ฒ์ ์ผ ์ ์์ต๋๋ค.
@sttts @nikhita @ deads2k
1.11์์ ์ด์ ๋ํ ๊ณํ์ด ์์ต๋๊น?
๊ทธ๋ ๋ค๋ฉด ํด๋น ๊ธฐ๋ฅ์ด ์ต์ ์ํ์ธ์ง ํ์ธํ ์ ์์ต๋๊น?
stage/{alpha,beta,stable}
sig/*
kind/feature
cc @idvoretskyi
1.11์์ ์ด์ ๋ํ ๊ณํ์ด ์์ต๋๊น?
๋๋ PR ๋ณธ๋ฌธ์ ํธ์งํ ๊ถํ์ด ์์ต๋๋ค(๋๊ตฐ๊ฐ๊ฐ ๊ทธ๋ ๊ฒ ํ ์ ์๋ค๋ฉด ์ข์ ๊ฒ์ ๋๋ค!). ๊ทธ๋ฌ๋ ๊ณํ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ทธ๋ ๋ค๋ฉด ํด๋น ๊ธฐ๋ฅ์ด ์ต์ ์ํ์ธ์ง ํ์ธํ ์ ์์ต๋๊น?
์ค๋ช
"CRD์ ๋ํ ์ ํจ์ฑ ๊ฒ์ฌ, ๊ธฐ๋ณธ๊ฐ ์ค์ , ํ์ ๋ฆฌ์์ค ๋ฐ ๋ฒ์ ๊ด๋ฆฌ ์ถ๊ฐ"๋ฅผ ํฌํจํ๋๋ก ํ ์ค ์ค๋ช ์ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
์ค๋ช ์ ์ธ๊ธ๋ ์ค๊ณ ์ ์์๋ ๋ค์์ด ํฌํจ๋์ด์ผ ํฉ๋๋ค.
๋๊ตฐ๊ฐ ์ด๊ฒ์ PR ๋ณธ๋ฌธ์๋ ์ถ๊ฐํ ์ ์์ต๋๊น?
๋ผ๋ฒจ:
/์ข ๋ฅ ๊ธฐ๋ฅ
/ ์ฐธ์กฐ @mbohlool
๋๊ตฐ๊ฐ ์ด๊ฒ์ PR ๋ณธ๋ฌธ์๋ ์ถ๊ฐํ ์ ์์ต๋๊น?
์๋ฃ
@nikhita @sttts @mbohlool -- ๋ช ํํ
@nikhita @sttts @mbohlool -- ์ด๊ฒ์ ๋ค์ ํ...
1.11 ๋ฒ ํ๋ฅผ ๋ชฉํ๋ก ํ๊ณ ์์ต๋๊น? ๊ธฐ๋ฅ ์ ์ง๊ฐ ์ค๋์ธ์ง ํ์ธํ๊ณ ์ถ์ต๋๋ค.
@justaugustus CRD๋ ์ด๋ฏธ ๋ฒ ํ ๋ฒ์ ์ ๋๋ค. GA๋ 1.11์์ ๊ณํ๋์ง ์์ต๋๋ค.
๋์ด๋ ๋ชจ๋ ๊ธฐ๋ฅ/ํ์ฅ(๊ฐ์ง์น๊ธฐ, ๊ธฐ๋ณธ๊ฐ ์ค์ , ๋ฒ์ ๊ด๋ฆฌ)์ ์๋ง๋ ์ํ๋ก ์์๋ ๊ฒ์ ๋๋ค.
@sttts ํ , ์ด ๊ฒฝ์ฐ ํด๋น ๊ธฐ๋ฅ/ํ์ฅ ๋ฐ ํด๋น ๋จ๊ณ๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ์ถ์ ํ๊ธฐ ์ํด ๋ณ๋์ ๋ฌธ์ ๊ฐ ์์ด์ผ ํฉ๋๊น?
๊ธฐ๋กํ๋ ค๋ฉด - @nikhita ๊ฐ ํ์ ๊ธฐ๋ฅ์ ๋ํ ๋ฌธ์ ๋ฅผ ๋ง๋ค์์ต๋๋ค. https://github.com/kubernetes/features/issues/571
@sttts @justaugustus
๊ธฐ๋ณธ๊ฐ ์ค์ ๋ฐ ์ ๋ฆฌ ํ์ ๊ธฐ๋ฅ ๋ฌธ์ : https://github.com/kubernetes/features/issues/575
@justaugustus @idvoretskyi 1.12 ์ถ์ ๋ชฉ์ : ์ถ๊ฐ ๋ฐ ๋ฒ๊ทธ ์์ ์ด ์์ ์ ์์ง๋ง ์ด๊ฒ์ 1.12์ฉ ๋ฒ ํ ๋ฒ์ ์ผ๋ก ์ ์ง๋ฉ๋๋ค(๋ฐ๋ผ์ ๊ธฐ๋ฅ ๊ด์ ์์ ๋ณ๊ฒฝ ์ฌํญ ์์).
์ํ๋ก ๊ณํ๋ ์๋ก์ด ํ์ ๊ธฐ๋ฅ์ด ์์ง๋ง ๋ณ๋์ ๋ฌธ์ ๋ก ์์ฑ๋ฉ๋๋ค: https://github.com/kubernetes/features/issues/575.
์๋
ํ์ธ์
์ด ๊ฐ์ ์ฌํญ์ ์ด์ ์ ์ถ์ ๋์์ผ๋ฏ๋ก Kubernetes 1.13์ ์กธ์
๋จ๊ณ์ ๋ํ ๊ณํ์ด ์๋์ง ํ์ธํ๊ณ ํ์ธํ๊ณ ์ถ์ต๋๋ค. ์ด ๋ฆด๋ฆฌ์ค๋ ๋ณด๋ค '์์ ์ ์ธ' ๊ฒ์ ๋ชฉํ๋ก ํ๋ฉฐ ๊ณต๊ฒฉ์ ์ธ ์ผ์ ์ ๊ฐ์ต๋๋ค. ๋ค์ ๋ง๊ฐ์ผ์ ์ถฉ์กฑํ ๊ฒ์ด๋ผ๊ณ ํ์ ํ๋ ๊ฒฝ์ฐ์๋ง ์ด ๊ฐ์ ์ฌํญ์ ํฌํจํ์ญ์์ค.
๋์ค์ ์ถ์ ํ ์ ์๋๋ก ์๋ณธ ๊ฒ์๋ฌผ์ ์ด์ ํ๋ฅผ ์ ๋ฐ์ดํธํ๊ณ 1.13 ๊ฐ์ ์ฌํญ ์ถ์ ์ํธ์ ํฌํจํด์ผ ํ๋ ๊ฒฝ์ฐ @kacole2๋ก ํํ์ญ์์ค.
๊ฐ์ฌ ํด์!
์ด ๊ฐ์ ์ฌํญ์ ์ด์ ์ ์ถ์ ๋์์ผ๋ฏ๋ก Kubernetes 1.13์ ์กธ์ ๋จ๊ณ์ ๋ํ ๊ณํ์ด ์๋์ง ํ์ธํ๊ณ ํ์ธํ๊ณ ์ถ์ต๋๋ค.
์๋์, 1.13์์ ์ด๊ฒ์ ์กธ์ ํ ๊ณํ์ด ์์ต๋๋ค. CRD API๋ ๋ฒ ํ ๋ฒ์ ์ผ๋ก ์ ์ง๋ฉ๋๋ค.
90์ผ ๋์ ํ๋์ด ์์ผ๋ฉด ๋ฌธ์ ๊ฐ ๋ถ์คํด์ง๋๋ค.
/remove-lifecycle stale
ํ์ฌ ๋ฌธ์ ๋ฅผ ์ต์ ์ผ๋ก ํ์ํฉ๋๋ค.
๋ถ์ค ๋ฌธ์ ๋ ์ถ๊ฐ๋ก 30์ผ ๋์ ์ฌ์ฉํ์ง ์์ผ๋ฉด ์ฉ๊ณ ๊ฒฐ๊ตญ ๋ซํ๋๋ค.
์ง๊ธ ์ด ๋ฌธ์ ๋ฅผ ๋ซ๋ ๊ฒ์ด ์์ ํ๋ค๋ฉด /close
๋ก ๋ซ์ผ์ญ์์ค.
sig-testing, kubernetes/test-infra ๋ฐ/๋๋ fejta์ ํผ๋๋ฐฑ์ ๋ณด๋ด์ญ์์ค.
/์๋ช
์ฃผ๊ธฐ ๋ถ์ค
/remove-lifecycle ๋ถ์ค
@deads2k ์๋ ํ์ธ์ - ์ ๋ 1.14์ ๋ํ ๊ฐ์ ์ฌํญ์ ๋ฆฌ๋์ด๋ฉฐ 1.14 ๋ฆด๋ฆฌ์ค์ ๋ํด ์ด๋ค ์์ (์๋ ๊ฒฝ์ฐ)์ด ๊ณํ๋๊ณ ์๋์ง ํ์ธํ๊ธฐ ์ํด ์ด ๋ฌธ์ ๋ฅผ ํ์ธํ๊ณ ์์ต๋๋ค. ๊ฐ์ ์ฌํญ ๋๊ฒฐ์ 1์ 29์ผ์ด๋ฉฐ ๋ชจ๋ ๊ฐ์ ์ฌํญ์๋ KEP๊ฐ ์์ด์ผ ํจ์ ์๊ธฐ์ํค๊ณ ์ถ์ต๋๋ค.
@claurence CRD API๋ 1.14์์๋ ๋ฒ ํ ๋ฒ์ ์ผ๋ก ์ ์ง๋ฉ๋๋ค.
์๋ ํ์ธ์ @nikhita @deads2k , ์ ๋ 1.15์ Enhancement Lead์ ๋๋ค. ์ด ๊ธฐ๋ฅ์ 1.15์์ ์ํ/๋ฒ ํ/์์ ๋จ๊ณ๋ฅผ ์กธ์ ํ ์์ ์ ๋๊น? ์ ๋๋ก ์ถ์ ํ๊ณ ์คํ๋ ๋์ํธ์ ์ถ๊ฐํ ์ ์๋๋ก ์๋ ค์ฃผ์ญ์์ค. 1.15 ํฌํจ์ ์ํด์๋ KEP๋ ๋ณํฉ๋์ด์ผ ํฉ๋๋ค. ๊ฐ์ฌ ํด์!
์ฝ๋ฉ์ด ์์๋๋ฉด ์ด ํธ์ ๋ชจ๋ ๊ด๋ จ k/k PR์ ๋์ดํ์ฌ ์ฌ๋ฐ๋ฅด๊ฒ ์ถ์ ํ ์ ์๋๋ก ํ์ญ์์ค.
์ด๊ฒ์ ๋ฒ ํ ๋จ๊ณ๋ก ์ ์ง๋ฉ๋๋ค. ์ ํจ์ฑ ๊ฒ์ฌ, ๋ณํ ๋ฐ OpenAPI ๊ฒ์ ์์ ์ด 1.15์์ ์งํ ์ค์ ๋๋ค.
1.15์ ๋ํ ๊ด๋ จ KEP์ ๋ํ ๋งํฌ๊ฐ ์๋ ์ ๋ฐ์ดํธ๋ ์ค๋ช
์๋ ํ์ธ์, @liggitt @deads2k @jpbetz @sttts ์ ๋ v1.15 ๋ฌธ์ ๋ฆด๋ฆฌ์ค ์๋์ฐ์ ๋๋ค.
์ด ๊ฐ์ ์ฌํญ(๋๋ v1.15์ ๋ํด ๊ณํ๋ ์์ )์ ์๋ก์ด ๋ฌธ์(๋๋ ์์ ์ฌํญ)๊ฐ ํ์ํฉ๋๊น?
5์ 30์ผ ๋ชฉ์์ผ๊น์ง k/website (branch dev-1.15)์ ๋ํ PR์ ์ฐพ๊ณ ์๋ค๋ ์น๊ทผํ ์๋ฆผ์ ๋๋ค. ์ ์ฒด ๋ฌธ์์ ์์์ด๋ผ๋ฉด ์ข๊ฒ ์ง๋ง ์๋ฆฌ ํ์์ PR๋ ํ์ฉ๋ฉ๋๋ค. ์ง๋ฌธ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์! ๐
@deads2k @jpbetz @sttts @liggitt
5์ 30์ผ ๋ชฉ์์ผ๊น์ง k/website (branch dev-1.15)์ ๋ํ PR์ ์ฐพ๊ณ ์๋ค๋ ์น๊ทผํ ์๋ฆผ์ ๋๋ค. ์ ์ฒด ๋ฌธ์์ ์์์ด๋ผ๋ฉด ์ข๊ฒ ์ง๋ง ์๋ฆฌ ํ์์ PR๋ ํ์ฉ๋ฉ๋๋ค. ์ง๋ฌธ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์! ๐
1.15์ฉ ๋ฌธ์ PR: https://github.com/kubernetes/website/pull/14583
@deads2k ๋ฌธ์ ์ค๋ช ์ ์ ๋ฐ์ดํธํ ์ ์์ต๋๊น?
/๋ง์ผ์คํค v1.16
/์คํ
์ด์ง ์์
์๋ ํ์ธ์, @liggitt @jpbetz @sttts ์ ๋ v1.16 ๋ฌธ์ ๋ฆด๋ฆฌ์ค ๋ฆฌ๋์ ๋๋ค.
์ด ๊ฐ์ ์ฌํญ(๋๋ v1.16์ ๋ํด ๊ณํ๋ ์์ )์ ์๋ก์ด ๋ฌธ์(๋๋ ์์ ์ฌํญ)๊ฐ ํ์ํฉ๋๊น?
8์ 23์ผ ๊ธ์์ผ๊น์ง k/website (branch dev-1.16)์ ๋ํ PR์ ์ฐพ๊ณ ์์์ ์๋ ค๋๋ฆฝ๋๋ค. ์ง๋ฌธ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์!
@simonswine ์๋ฆฌ ํ์์ PR https://github.com/kubernetes/website/pull/15982
@liggitt @jpbetz @sttts ๋ชฉ์์ผ์ ์ฝ๋ ๋๊ฒฐ์ ๋๋ค. ์ด๊ฒ์ด Stable๋ก ์ ํ๋๋ ๊ฒ์ ๋ฐฉํดํ๋ ๋ฏธํด๊ฒฐ k/k PR์ด ์์ต๋๊น? ๊ณํ๋ 1.15* ์์ ์ ๋ํ ์๋ณธ ๊ฒ์๋ฌผ์ ๋ชจ๋ ๋ด์ฉ์ด ๋ณํฉ๋ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค.
์ ๋ ๋ฐ์ด๋ PR์ด ๊ธฐ๋ฅ ๊ฒ์ดํธ ๋ฒ์ ๋ฒํ(https://github.com/kubernetes/kubernetes/pull/81965)์ ์ด๋ฒ ์ฃผ์ ์งํ๋์ด์ผ ํ๋ ๋ ๊ฐ์ง ๋ฐ์ด๋ ๋ฒ๊ทธ ์์ ์ด๋ผ๊ณ ๋ฏฟ์ต๋๋ค: https://github.com/kubernetes /kubernetes/pull/81436 , https://github.com/kubernetes/kubernetes/issues/78707
https://github.com/kubernetes/website/pull/15982 ์์ ๊ฒํ ํ ๋ฌธ์ ์ค๋น
v1.16.0์์ ์์ ๋ฒ์ ์ผ๋ก ์ถ์
https://github.com/orgs/kubernetes/projects/28 ์์ ์ถ์ ๋ GA ์ดํ ์์
/๋ซ๋ค
@liggitt : ์ด ๋ฌธ์ ๋ฅผ ์ข ๋ฃํฉ๋๋ค.
์ ๋ํ ์๋ต ์ด :
v1.16.0์์ ์์ ๋ฒ์ ์ผ๋ก ์ถ์
https://github.com/orgs/kubernetes/projects/28 ์์ ์ถ์ ๋ GA ์ดํ ์์
/๋ซ๋ค
PR ๋๊ธ์ ์ฌ์ฉํ์ฌ ๋์ ์ํธ ์์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ง์นจ์ ์ฌ๊ธฐ์์ ํ์ธํ ์ kubernetes/test-infra ์ ์ฅ์์ ๋ฌธ์ ๋ฅผ ์ ์ถํ์ธ์.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
1.7 ๊ธฐ๊ฐ ๋์ https://github.com/kubernetes/community/blob/master/contributors/design-proposals/thirdpartyresources.md ๋ก ์งํํ ๊ณํ์ ๋๋ค. ์งํํ๋ฉด์ ์ฌ๊ธฐ์ sig-apimachinery ํธ์ถ์์ ์ ๋ฐ์ดํธํ๊ฒ ์ต๋๋ค.