/ sigããŒã
/çš®é¡ã®æ©èœ
cc @ConnorDoyle @balajismaniam @nolancon
ããŒã°ããã®åŠç¿ã«åºã¥ããŠããã®ãã¶ã€ã³ãç¥ãããããšãã§ããŸãã ã ããç§ãã¬ãã¥ãŒã¢/æ¿èªè ãšããŠæ°ããŠãã ããã
ããŒã°ããã®åŠç¿ã«åºã¥ããŠããã®ãã¶ã€ã³ãç¥ãããããšãã§ããŸãã ã ããç§ãã¬ãã¥ãŒã¢/æ¿èªè ãšããŠæ°ããŠãã ããã
ãã®æ©èœãborgã§ã©ã®ããã«æ©èœãããã«ã€ããŠã®å ¬éããã¥ã¡ã³ãã¯ãããŸããïŒ
NUMAAFAIKã«ã€ããŠã§ã¯ãããŸããã
2019幎2æ11æ¥æææ¥ãåå7æ50åJeremy Eder < [email protected]ã¯æ¬¡ã®ããã«æžããŠããŸãã
ããŒã°ããã®åŠç¿ã«åºã¥ããŠããã®ãã¶ã€ã³ãç¥ãããããšãã§ããŸãã ã ããç§ãæ°ããŠ
ã¬ãã¥ãŒã¢/æ¿èªè ãšããŠããã®æ©èœãborgã§ã©ã®ããã«æ©èœãããã«ã€ããŠã®å ¬éããã¥ã¡ã³ãã¯ãããŸããïŒ
â
ã³ã¡ã³ãããã®ã§ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/kubernetes/enhancements/issues/693#issuecomment-462378195 ã
ãŸãã¯ã¹ã¬ããããã¥ãŒãããŸã
https://github.com/notifications/unsubscribe-auth/AGvIKPfanjb9Q5DxXAiBgv9C6Y809JX0ks5vMZFZgaJpZM4aE3uz
ã
åèãŸã§ã«@claurence
ãã®è¿œè·¡ã®åé¡ãšKEPïŒhttps://github.com/kubernetes/enhancements/pull/781ïŒã¯ãv1.14ã®æ¡åŒµæ©èœã®ããªãŒãºãæéã®å»¶é·ã«éã«åããŸããã§ããã ç· ãåãåã«ããããéããŠããã ãããããšãããããŸãããååãªã¬ãã¥ãŒãæ¿èªãåŸãããªãã£ãããã§ãã ããã¯ãäŸå€ããã»ã¹ãééããå¿ èŠããããŸãã
ãããäŸå€ã«å€ãããã©ãããå€æãããŸã§ãç§ã¯ãã®æ©èœåŒ·åã«é¢é£ãããã¹ãŠã®PRãä¿çããåŸåããããŸãã
åç §ïŒ https ïŒ
/ cc @jiayingz @ dchen1107
@lmdalyãã¹ãŠã®èª¬æã«ã¢ã«ãã¡ãã€ã«ã¹ããŒã³ãšããŠ1.14ããªã¹ããããŠããããã§ã-ããŒãžãããå®è£ å¯èœãªKEPããªãã£ãããããã®åé¡ã¯1.14ã§è¿œè·¡ãããŠããŸãã-ãã®ãªãªãŒã¹ã«å«ããæå³ãããå Žåã¯ãäŸå€ãªã¯ãšã¹ããéä¿¡ããŸãã
@lmdalyãã¹ãŠã®èª¬æã«ã¢ã«ãã¡ãã€ã«ã¹ããŒã³ãšããŠ1.14ããªã¹ããããŠããããã§ã-ããŒãžãããå®è£ å¯èœãªKEPããªãã£ãããããã®åé¡ã¯1.14ã§è¿œè·¡ãããŠããŸãã-ãã®ãªãªãŒã¹ã«å«ããæå³ãããå Žåã¯ãäŸå€ãªã¯ãšã¹ããéä¿¡ããŸãã
@claurence KEPãããŒãžãããŸããïŒKEPã¯ä»¥åã«ã³ãã¥ããã£ãªããžããªã«ããŒãžãããŠããŸãããããã¯ãæ°ããã¬ã€ãã©ã€ã³ã«åŸã£ãŠæ°ããæ¡åŒµãªããžããªã«ç§»åããããã ãã®ãã®ã§ããïŒããã®åé¡ã远跡ããã«ã¯ãäŸå€ãªã¯ãšã¹ããéä¿¡ããå¿ èŠããããŸããïŒ 1.14ã®å ŽåïŒ
ãã¶ã€ã³ãšWIPPRãããèªãã åŸã httpsïŒ//github.com/kubernetes/enhancements/pull/781ã§ææ¡ããå ã®ããããžãã¶ã€ã³ã®ããã«ãçŸåšã®å®è£ ãäžè¬çã§ã¯ãªãããšã«æžå¿µãæ±ããŠã
ããã§ããã«è°è«ããããã«ããã€ãã®ã³ã¡ã³ããæ®ããŸããïŒ https ïŒ
çŸåšã®å®è£ ã¯ãžã§ããªãã¯ã§ã¯ãããŸãã
ããã«ã€ããŠåãæžå¿µãå ±æããŠãã ãã:)ä»ã®äººãäŸãã°ããã€ã¹éã®ãªã³ã¯ïŒGPUã®nvlinkeïŒã¯ã©ãã§ããïŒ
@resouer @ k82cnæåã®ææ¡ã§ã¯ãCPUãããŒãžã£ãŒãšããã€ã¹ãããŒãžã£ãŒãäžãã決å®ã調æŽããŠãã³ã³ãããŒãå®è¡ãããŠããCPUãšããã€ã¹ã確å®ã«è¿æ¥ããããã«ããããšã®ã¿ãæ±ã£ãŠããŸãã ããã€ã¹éã®èŠªåæ§ãæºããããšã¯ãææ¡ã®ç®æšã§ã¯ãããŸããã§ããã
ãã ããçŸåšã®å®è£ ãå°æ¥ã®ããã€ã¹éã¢ãã£ããã£ã®è¿œå ããããã¯ããŠããå Žåã¯ããã®æ¹æ³ãç解ããããå®è£ ãå€æŽã§ããŸãã
çŸåšã®å®è£ ãšããã€ã¹éã®ã¢ãã£ããã£ããµããŒãããæ©èœã§ç§ãç®ã«ããäž»ãªåé¡ã¯æ¬¡ã®ãšããã§ãã
ããã€ã¹éã®ã¢ãã£ããã£ããµããŒãããã«ã¯ãéåžžãã³ã³ããã«å²ãåœãŠããœã±ããã¢ãã£ããã£ã決å®ããåã«ãã³ã³ããã«å²ãåœãŠãããã€ã¹ãæåã«ææ¡ããå¿ èŠããããŸãã
ããšãã°ãNvidia GPUã®å Žåãæé©ãªæ¥ç¶ãå®çŸããã«ã¯ãæåã«ãæãæ¥ç¶ãããŠããNVLINKãåããGPUã®ã»ãããèŠã€ããŠå²ãåœãŠãå¿ èŠããããŸãããã®åã«ããã®ã»ããã®ãœã±ããã¢ãã£ããã£ã決å®ããŸãã
çŸåšã®ææ¡ã§ç§ãèšããããšããããããã®æäœã¯éã®é åºã§è¡ããããã€ãŸããããã€ã¹ã®å²ãåœãŠãè¡ãåã«ãœã±ããã¢ãã£ããã£ã決å®ããããšããä»®å®ããããŸãã
@klueskaã¯å¿ ããããããšã¯éããŸããã ããããžãã³ãããã€ã³ãããŒãã€ã³ãããã€ã¹ããããžããšã³ã³ãŒãããããã«æ¡åŒµãããå Žåãããã€ã¹ãããŒãžã£ã¯ãœã±ããã¢ãã£ããã£ãå ±åãããšãã«ãããèæ ®ããããšãã§ããŸãã ã€ãŸããã¯ãã¹ããã€ã¹ããããžã¯ãããã€ã¹ãããŒãžã£ã®ç¯å²å€ã«ãªãŒã¯ããå¿ èŠã¯ãããŸããã ããã¯å®è¡å¯èœã ãšæããŸããïŒ
å€åç§ã¯ã©ããããããæµãã«ã€ããŠæ··ä¹±ããŠããŸãã ãããç§ããããç解ããæ¹æ³ã§ãïŒ
1ïŒåæåæã«ãããã€ã¹ãã©ã°ã€ã³ïŒ devicemanager
ïŒãtopologymanager
ç»é²ããããããåŸã§ã³ãŒã«ããã¯ãçºè¡ã§ããŸãã
2ïŒããããéä¿¡ããããšãkubeletã¯topologymanager
ã®lifecycle.PodAdmitHandler
ãåŒã³åºããŸãã
3ïŒ lifecycle.PodAdmitHandler
ã¯ãç»é²ãããåããã€ã¹ãã©ã°ã€ã³ã§GetTopologyHints
ãåŒã³åºããŸã
4ïŒæ¬¡ã«ããããã®ãã³ããããŒãžããŠããããã«é¢é£ä»ããããçµ±åãããTopologyHint
ãçæããŸã
5ïŒããããèš±å¯ããããšã決å®ããå Žåããããã®çµ±åãããTopologyHint
ãããŒã«ã«ã®å·ã®ã¹ãã¢ã«æ ŒçŽããŠããlifecycle.PodAdmitHandler
ããæ£åžžã«æ»ããŸãã
6ïŒå°æ¥ã®ããæç¹ã§ã cpumanager
ãšdevicemanager
ã¯topology
ãããŒãžã£ãŒã§GetAffinity(pod)
ãåŒã³åºããŠãé¢é£ä»ããããTopologyHint
ãååŸããŸããããä»ã
7ïŒ cpumanager
ã¯ããã®TopologyHint`ã䜿çšããŠCPUãå²ãåœãŠãŸã
8ïŒ devicemanager
ã¯ããã®TopologyHint`ã䜿çšããŠäžé£ã®ããã€ã¹ãå²ãåœãŠãŸã
9ïŒãããã®åæåã¯ç¶è¡ãããŸã...
ãããæ£ãããã°ãããã€ã¹ãã©ã°ã€ã³ãTopologyHints
ãå ±åããæç¹ãšã devicemanager
ãå®éã®å²ãåœãŠãè¡ãæç¹ãšã®éã«äœãèµ·ãããã«ã€ããŠèŠåŽããŠãããšæããŸãã
ãããã®ãã³ããå²ãåœãŠã®ããã®ãèšå®ãããšã³ã³ãŒãããããšãæå³ããŠããå Žåãããªããèšã£ãŠããããšã¯ããã次ã®ãããªæ§é ãæã€ããšã ãšæããŸãã
type TopologyHints struct {
hints []struct {
SocketID int
DeviceIDs []int
}
}
ãœã±ããã¢ãã£ããã£ããªãã¡ã¬ã³ã¹ã®ãªã¹ããæž¡ãã ãã§ãªãããããã®ãœã±ããã¢ãã£ããã£ããªãã¡ã¬ã³ã¹ãå²ãåœãŠå¯èœãªGPUããªãã¡ã¬ã³ã¹ãšã©ã®ããã«ãã¢ã«ãªããã瀺ããŸãã
ãããããªããèããŠããæ¹åã§ãããªããç§ãã¡ã¯ãããæ©èœãããããšãã§ãããšæããŸããã cpumanager
ãšdevicemanager
éã§äœããã®åœ¢ã§èª¿æŽããŠãããããåãããã«ãåãå
¥ãããããããšã確èªããå¿
èŠããããŸãå²ãåœãŠãè¡ãéã®ãã³ãã
ç§ãèŠéããããšããã§ã«å¯èœã«ããäœãããããŸããïŒ
@klueska
ãããŒã«ããã€ãã®_ãã€ããŒ_ä¿®æ£ãå ãããšãäœãèµ·ããããšæããŸãã
åæåæã«ãããã€ã¹ãã©ã°ã€ã³ã¯devicemanager
ç»é²ããããããåŸã§ã³ãŒã«ããã¯ãçºè¡ã§ããŸãã
lifecycle.PodAdmitHandler
ã¯ãKubeletã®åããããžå¯Ÿå¿ã³ã³ããŒãã³ãïŒçŸåšã¯devicemanager
ããã³cpumanager
GetTopologyHints
ãåŒã³åºããŸãã
ãã®å ŽåãKubeletã§ããããžå¯Ÿå¿ãšããŠè¡šãããã®ã¯ã cpumanager
ãšdevicemanager
ã§ãã ããããžãŒã»ãããŒãžã£ãŒã¯ãããããžãŒå¯Ÿå¿ã³ã³ããŒãã³ãéã®å²ãæ¯ãã調æŽããããšã®ã¿ãç®çãšããŠããŸãã
ãã®ããïŒ
ãã ããcpumanagerãšdevicemanagerã®éã§äœããã®èª¿æŽãè¡ã£ãŠãå²ãåœãŠãè¡ããšãã«åããã³ãããåãå ¥ãããããã«ããå¿ èŠããããŸãã
ããã¯ã topologymanager
èªäœãéæããããã«å°å
¥ããããã®ã§ãã 以åã®ãã©ããã®1ã€ããã
ãããã®ã³ã³ããŒãã³ãã¯ãNUMAéã®å²ãåœãŠãåé¿ããããã«èª¿æŽããå¿ èŠããããŸãã ãã®èª¿æŽã«é¢é£ããåé¡ã¯æ³šæãå¿ èŠã§ãã ãå²ãåœãŠãããNICãšåãNUMAããŒãäžã®æä»çã³ã¢ããªã©ã®ã¯ãã¹ãã¡ã€ã³ãªã¯ãšã¹ãã«ã¯ãCNIãšCPUãããŒãžã£ãŒã®äž¡æ¹ãå«ãŸããŸãã CPUãããŒãžã£ãŒãæåã«éžæããå ŽåãNICã䜿çšã§ããªãNUMAããŒãäžã®ã³ã¢ãéžæããå¯èœæ§ããããŸãããã®éãåæ§ã§ãã
ããã§ããã
ã ããã devicemanager
ãšcpumanager
å®è£
ã®äž¡æ¹GetTopologyHints()
ã ãã§ãªããã³ãŒã«GetAffinity()
ããã®æ¹åã®çžäºäœçšãé¿ãã topologymanager
ãã¹ãŠã®åºæ¬ãšãªãããã€ã¹ã®ãã©ã°ã€ã³ãšã®ã ã³ãŒãã詳ããèŠããšã devicemanager
åã«ãã©ã°ã€ã³ã«å¶åŸ¡ãå§ä»»ããŠã TopologyHints
ãæ¯æŽããŠããããšãããããŸããããã¯ããããã«ãããããçã«ããªã£ãŠããŸãã
ç§ãæèµ·ããå ã®è³ªå/åé¡ã«æ»ããŸãã
Nvidiaã®èŠ³ç¹ããã¯ãå°æ¥çã«ãã€ã³ãããŒãã€ã³ããªã³ã¯æ
å ±ãå ±åããããã«TopologyHints
æ§é äœïŒããã³ãã®çµæãšããŠããã€ã¹ãã©ã°ã€ã³ã€ã³ã¿ãŒãã§ã€ã¹ïŒã«ããã«æ
å ±ãè¿œå ããããšä»®å®ãããšããã®ææ¡ããããããŒã§ãã¹ãŠãæ©èœãããããšãã§ãããšæããŸãã
ãã ãããœã±ããã¢ãã£ããã£ãã¢ããã¿ã€ãºããããã®äž»èŠãªããŒã¿æ§é ãšããŠSocketMask
ããå§ãããšãæ¢åã®ã€ã³ã¿ãŒãã§ã€ã¹ãå£ãããšãªããå°æ¥çã«ãã€ã³ãããŒãã€ã³ãæ
å ±ã§TopologyHints
ãæ¡åŒµããæ©èœãå¶éãããå¯èœæ§ããããšæããŸãã äž»ãªçç±ã¯ãïŒå°ãªããšãNvidia GPUã®å ŽåïŒåªå
ãœã±ããã¯ãæçµçã«ã©ã®GPUãå®éã«å²ãåœãŠããããã«ãã£ãŠç°ãªãããã§ãã
ããšãã°ãæé©ãªæ¥ç¶ã§2ã€ã®GPUããããã«å²ãåœãŠãããšããå Žåã¯ã次ã®å³ãæ€èšããŠãã ããã
ïŒ2ã3ïŒãšïŒ6ã7ïŒã®GPUã®çµã¿åããã«ã¯ãäž¡æ¹ãšã2ã€ã®NVLINKããããåãPCIeãã¹äžã«ãããŸãã ãããã£ãŠã2ã€ã®GPUããããã«å²ãåœãŠãããšããå Žåããããã¯åçã®åè£ãšèŠãªãããŸãã ãã ããéžæããçµã¿åããã«å¿ããŠãïŒ2ã3ïŒããœã±ãã0ã«æ¥ç¶ãããïŒ6ã7ïŒããœã±ãã1ã«æ¥ç¶ããããããå¥ã®ãœã±ãããæããã«åªå ãããŸãã
devicemanager
ãæçµçã«ãããã®å¿
èŠãªå²ãåœãŠã®ãããããå®è¡ã§ããããã«ïŒã€ãŸãã topologymanager
ããã³ããçµ±åããæ¹ïŒããã®æ
å ±ãTopologyHints
æ§é äœã«ãšã³ã³ãŒãããå¿
èŠããããŸããè³ããŸã§ïŒã åæ§ã«ãåªå
ããã€ã¹å²ãåœãŠãšåªå
ãœã±ããã®éã®äŸåé¢ä¿ã¯ã TopologyHints
ã§ãšã³ã³ãŒãããŠã cpumanager
ãæ£ãããœã±ããããCPUãå²ãåœãŠãããšãã§ããããã«ããå¿
èŠããããŸãã
ãã®äŸã®NvidiaGPUã«åºæã®æœåšçãªãœãªã¥ãŒã·ã§ã³ã¯ã次ã®ããã«ãªããŸãã
type TopologyHint struct {
SocketID int
DeviceIDs []int
}
type TopologyHints []TopologyHint
devicemanagerhints := &TopologyHints{
{SocketID: 0, DeviceIDs: []int{2, 3}},
{SocketID: 1, DeviceIDs: []int{6, 7}},
}
cpumanagerhints := &TopologyHints{
{SocketID: 1},
}
topologymanager
ããããã®ãã³ããçµ±åããŠã devicemanager
ãšcpumanager
åŸã§GetAffinity()
åŒã³åºããšãã«ãåªå
ãã³ããšããŠ{SocketID: 1, DeviceIDs: []int{6, 7}}
ãè¿ãå Žåã
ããã¯ãã¹ãŠã®ã¢ã¯ã»ã©ã¬ãŒã¿ã«ååãªæ±çšãœãªã¥ãŒã·ã§ã³ãæäŸããå ŽåãšæäŸããªãå ŽåããããŸããã TopologyHints
æ§é äœã®SocketMask
ã次ã®ãããªæ§é ã«çœ®ãæãããšãåã
ã®ãã³ããããå€ãã®ãã£ãŒã«ãã§æ¡åŒµã§ããŸããæªæ¥ïŒ
GetTopologyHints()
åŒãç¶ãTopologyHints
ãè¿ããŸããã GetAffinity()
ã¯ã TopologyHints
ã§ã¯ãªãåäžã®TopologyHint
ãè¿ãããã«å€æŽãããŠããããšã«æ³šæããŠ
type TopologyHint struct {
SocketID int
}
type TopologyHints []TopologyHint
&TopologyHints{
{SocketID: 0},
{SocketID: 1},
}
type HintProvider interface {
GetTopologyHints(pod v1.Pod, container v1.Container) TopologyHints
}
type Store interface {
GetAffinity(podUID string, containerName string) TopologyHint
}
èãïŒ
@klueskaäœãã足ããªããããããŸããããNV
@ConnorDoyleãææ¡ããããã«ãããã€ã¹ããã€ã³ãããŒãã€ã³ãããã€ã¹æ¥ç¶ã«é¢ããæ å ±ãéãè¿ãããšãã§ããããã«ããã€ã¹ãã©ã°ã€ã³APIãæ¡åŒµãããå Žåãããã€ã¹ãããŒãžã£ãŒã¯ããã«åºã¥ããŠãœã±ããæ å ±ãéãè¿ãããšãã§ããŸãã
ããªãã®äŸã§ã¯ã devicemanagerhints
ã¯ãããã€ã¹ãã©ã°ã€ã³ãããã€ã¹ãããŒãžã£ãŒã«éãè¿ããæ
å ±ã§ããå¯èœæ§ããããŸãã 次ã«ãããã€ã¹ãããŒãžã£ã¯ãœã±ããæ
å ±ããã®ãŸãŸTopologyManagerã«éãè¿ããTopologyManagerã¯éžæããããœã±ãããã³ããä¿åããŸãã
å²ãåœãŠæã«ãdevicemanagerã¯GetAffinityãåŒã³åºããŠãç®çã®ãœã±ããå²ãåœãŠïŒãã®å Žåã¯ãœã±ããã1ã§ãããšããŸãããïŒãååŸããŸãããã®æ å ±ãšããã€ã¹ãã©ã°ã€ã³ããè¿ãããæ å ±ã䜿çšããŠããœã±ãã1ã§ããã€ã¹ãå²ãåœãŠãå¿ èŠãããããšã確èªã§ããŸãïŒ 6,7ïŒNVLinkããã€ã¹ã§ããããã
ããã¯çã«ããªã£ãŠããŸããããããšãç§ãèŠéããŠãããã®ããããŸããïŒ
ç§ãšäžç·ã«ãããæ確ã«ããããã«æéãå²ããŠãããŠããããšãã @ConnorDoyleã®æåã®ææ¡ã誀解ããã«éããããŸããã
ããããžãã³ãããã€ã³ãããŒãã€ã³ãããã€ã¹ããããžããšã³ã³ãŒãããããã«æ¡åŒµãããå Žåãããã€ã¹ãããŒãžã£ã¯ãœã±ããã¢ãã£ããã£ãå ±åãããšãã«ãããèæ ®ããããšãã§ããŸãã
ç§ã¯ãããããã€ã³ãããŒãã€ã³ãæ
å ±ã§TopologyHints
æ§é äœãçŽæ¥æ¡åŒµããããšèªãã§ããŸãã
devicemanager
ã«ãã€ã³ãããŒãã€ã³ãæ
å ±ãæäŸããããã«ããã€ã¹ãã©ã°ã€ã³APIã®ã¿ãæ¡åŒµããå¿
èŠãããããšã瀺åããŠããããã§ããããã«ããããã®æ
å ±ã䜿çšããŠSocketMask
ã«éç¥ã§ããŸãã GetTopologyHints()
ãåŒã³åºããããã³ã«ã TopologyHints
æ§é äœã«èšå®ãã
ããã€ã¹ãã©ã°ã€ã³ã®APIæ¡åŒµæ©èœããäžèšã®äŸã§æŠèª¬ãããã®ãšåæ§ã®æ
å ±ãæäŸããããã«èšèšãããŠããããããã¢ãããã·ã§ã³ãšããã€ã¹éã§ãã®æ
å ±ãä¿åããããã«devicemanager
ãæ¡åŒµãããŠããéããããã¯æ©èœãããšæããŸããå²ãåœãŠæéã
çŸåšãNvidiaã«ã¯ã«ã¹ã¿ã ãœãªã¥ãŒã·ã§ã³ãããã kubelet
ã«ããããé©çšããŠãåºæ¬çã«ããªããææ¡ããŠããããšãå®è¡ããŸãïŒãã ããããã€ã¹ãã©ã°ã€ã³ã«æ±ºå®ãäžãå¿
èŠã¯ãããŸãã- devicemanager
GPUãèªèããããããžããŒã¹ã®GPUå²ãåœãŠã®æ±ºå®ãè¡ããŸãïŒã
é·æçãªãœãªã¥ãŒã·ã§ã³ãå°å ¥ãããã°ãå°æ¥ãããã®ã«ã¹ã¿ã ããããåé€ã§ããããã«ãªããŸãã ãããŠãããã§ã®ãããŒãã©ã®ããã«æ©èœããããããããç解ã§ããã®ã§ãç§ãã¡ã劚ãããã®ã¯äœãèŠåœãããŸããã
ãã¹ãŠãæ確ã«ããããã«æéãå²ããŠããã ããããããšãããããŸãã
ããã«ã¡ã¯@lmdaly ãç§ã¯1.15ã®ãšã³ãã³ã¹ã¡ã³ããªãŒãã§ãã ãã®æ©èœã¯1.15ã§ã¢ã«ãã¡/ããŒã¿/å®å®ã¹ããŒãžãåæ¥ããäºå®ã§ããïŒ é©åã«è¿œè·¡ããŠã¹ãã¬ããã·ãŒãã«è¿œå ã§ããããã«ããç¥ãããã ããã
ã³ãŒãã£ã³ã°ãéå§ããããé©åã«è¿œè·¡ã§ããããã«ããã®å·ã«é¢é£ãããã¹ãŠã®k / kPRããªã¹ãããŠãã ããã
ãã®æ©èœã¯ç¬èªã®æ©èœã²ãŒãã«ãªããã¢ã«ãã¡çã«ãªããŸãã
/ãã€ã«ã¹ããŒã³1.15
@derekwaynecarr ïŒæäŸããããã€ã«ã¹ããŒã³ã¯ãã®ãªããžããªã§ã¯ç¡å¹ã§ãã ãã®ãªããžããªã®ãã€ã«ã¹ããŒã³ïŒ[ keps-beta
ã keps-ga
ã v1.14
ã v1.15
]
/milestone clear
ã䜿çšããŠããã€ã«ã¹ããŒã³ãã¯ãªã¢ããŸãã
察å¿ããŠããã®ïŒ
ãã®æ©èœã¯ç¬èªã®æ©èœã²ãŒãã«ãªããã¢ã«ãã¡çã«ãªããŸãã
/ãã€ã«ã¹ããŒã³1.15
PRã³ã¡ã³ãã䜿çšããŠç§ãšããåãããããã®æé ã¯ããã¡ãããå
¥æã§ãkubernetes / test-infraãªããžããªã«å¯ŸããŠåé¡ã
/ milestone v1.15
/ assign @lmdaly
@lmdaly
https://github.com/kubernetes/kubernetes/issues/72828
ç§ã®ããŒã ãšç§ã¯ãnumaã«ææãªã¢ããªã±ãŒã·ã§ã³ã®ããããžãããŒãžã£ãŒããã¹ãããããšãæ€èšããŠããŸãã
ããã§ãããã€ã質åããããŸãã
PRã®äžã§ããããã¯ããããžãããŒãžã£ã«ãšã£ãŠå®å
šãªæå³åãã§ããïŒ
ãããŠãããã¯ä»ãã¹ããããŠããŸããããããšãå®å®ããŠããŸããïŒ
@ bg-chunç§ãã¡ã¯Nvidiaã§ãåãããšãããŠããŸãã ãããã®WIPPRãå éšã¹ã¿ãã¯ã«åã蟌ã¿ããã®åšãã®CPU / GPUã«ããããžå¯Ÿå¿ã®å²ãåœãŠæŠç¥ãæ§ç¯ããŸããã ããããããšã§ãããã€ãã®åé¡ãçºèŠãããããã®PRã«é¢ããå ·äœçãªãã£ãŒãããã¯ãæäŸããŸããã
詳现ã«ã€ããŠã¯ããã¡ãã®ãã£ã¹ã«ãã·ã§ã³ã¹ã¬ãããã芧ãã ããã
https://kubernetes.slack.com/archives/C0BP8PW9G/p1556371768035800
ããã @ lmdalyç§ã¯v1.15ããã¥ã¡ã³ããªãªãŒã¹ã·ã£ããŠã§ãã
1.15ãªãªãŒã¹ã®ãã®æ¡åŒµæ©èœã®ã¢ã«ãã¡çãã¿ãŒã²ããã«ããŠããããã§ãã ããã«ã¯æ°ããããã¥ã¡ã³ãïŒãŸãã¯å€æŽïŒãå¿ èŠã§ããïŒ
5æ30æ¥æšææ¥ãŸã§ã«k / websiteïŒãã©ã³ãdev-1.15ïŒã«å¯ŸããPRãæ¢ããŠããŸãã ãããå®å šãªããã¥ã¡ã³ãã®å§ãŸãã§ãããªãã°ããã¯çŽ æŽãããã§ããããããããã¬ãŒã¹ãã«ããŒPRããåãå ¥ããããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã ð
@lmdaly 5æ30æ¥æšææ¥ãŸã§ã«ãk / websiteïŒbranch dev-1.15ïŒã«å¯ŸããPRãæ¢ããŠããŸãã ãããå®å šãªããã¥ã¡ã³ãã®å§ãŸãã§ãããªãã°ããã¯çŽ æŽãããã§ããããããããã¬ãŒã¹ãã«ããŒPRããåãå ¥ããããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã ð
ããã«ã¡ã¯@lmdaly ã ã³ãŒãããªãŒãºã¯2019幎5æ30æ¥æšææ¥@EODPSTã§ãã ãªãªãŒã¹ã«å«ãŸãããã¹ãŠã®æ¡åŒµæ©èœã¯ããã¹ããå«ããŠã³ãŒããå®å šã§ãããããã¥ã¡ã³ãã®PRãéããŠããå¿ èŠããããŸãã
https://github.com/kubernetes/kubernetes/issues/72828ãèŠãŠããã¹ãŠãããŒãžãããŠãããã©ããã確èªããŸãã
ãããã¹ãªããããããšãããã£ãŠããå Žåã¯ãè¿ä¿¡ããŠãç¥ãããã ããã ããããšãïŒ
@daminisatyaç§ã¯ããã¥ã¡ã³ãPRãããã·ã¥ããŸããã https://github.com/kubernetes/website/pull/14572
ãããæ£ããè¡ããããã©ããããããŠäœãè¿œå ã®é ç®ãè¡ãå¿ èŠããããã©ãããæããŠãã ããã 念æŒãæé£ãïŒ
ããããšã@ lmdalyâš
ããã«ã¡ã¯@lmdaly ãä»æ¥ã¯1.15ãªãªãŒã¹ãµã€ã¯ã«ã®ã³ãŒãããªãŒãºã§ãã ãã©ããã³ã°ã®åé¡https://github.com/kubernetes/kubernetes/issues/72828ãããŸã ããŒãžãããŠããªãk / kPRããŸã ããªããã1.15æ¡åŒµè¿œè·¡ã·ãŒãã§ãªã¹ã¯ãããšããŠããŒã¯ãããŠããŸãã ããããä»æ¥EODPSTã«ãã£ãŠçµ±åããããšããé«ã確信ã¯ãããŸããïŒ ãã®æç¹ä»¥éããã€ã«ã¹ããŒã³ã§ã¯ããªãªãŒã¹ããããã³ã°ã®åé¡ãšPRã®ã¿ãäŸå€ãšããŠèš±å¯ãããŸãã
/ãã€ã«ã¹ããŒã³ã¯ãªã¢
ããã«ã¡ã¯@ lmdaly @ derekwaynecarr ãç§ã¯1.16ãšã³ãã³ã¹ã¡ã³ããªãŒãã§ãã ãã®æ©èœã¯1.16ã§ã¢ã«ãã¡/ããŒã¿/å®å®ã¹ããŒãžãåæ¥ããäºå®ã§ããïŒ 1.16ãã©ããã³ã°ã¹ãã¬ããã·ãŒãã«è¿œå ã§ããããã«ãç¥ãããã ããã åæ¥ããŠããªãå Žåã¯ããã€ã«ã¹ããŒã³ããåé€ãã远跡ã©ãã«ãå€æŽããŸãã
ã³ãŒãã£ã³ã°ãéå§ããããããŸãã¯ãã§ã«ããå Žåã¯ãé©åã«è¿œè·¡ã§ããããã«ããã®å·ã«é¢é£ãããã¹ãŠã®k / kPRããªã¹ãããŠãã ããã
ãã€ã«ã¹ããŒã³ã®æ¥ä»ã¯ãEnhancement Freeze7 / 30ããã³CodeFreeze8 / 29ã§ãã
ããããšãã
@ kacole2ãªãã€ã³ããŒãããããšãã ãã®æ©èœã¯ã1.16ã§AlphaãšããŠå°å ¥ãããŸãã
é²è¡äžã®PRã®ãªã¹ãã¯ã https ïŒ
ããããšãïŒ
ããã1.16ã§ã¢ã«ãã¡çã«å°éããããšã«åæããŸãã以åã«1.15ã§ããŒãžãããã±ããã§éå§ããããã£ããã£ãããäœæ¥ãçµäºããŸãã
ããã«ã¡ã¯@lmdaly ãç§ã¯v1.16ããã¥ã¡ã³ããªãªãŒã¹ã·ã£ããŠã§ãã
ãã®æ¡åŒµæ©èœã«ã¯ãæ°ããããã¥ã¡ã³ãïŒãŸãã¯å€æŽïŒãå¿ èŠã§ããïŒ
8æ23æ¥éææ¥ãŸã§ã«k / websiteïŒãã©ã³ãdev-1.16ïŒã«å¯ŸããPRãæ¢ããŠããŸãã ãããå®å šãªããã¥ã¡ã³ãã®å§ãŸãã§ãããªãã°ããã¯çŽ æŽãããã§ããããããããã¬ãŒã¹ãã«ããŒPRããåãå ¥ããããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã
ããããšãïŒ
ããã¥ã¡ã³ãPRïŒ https ïŒ
@lmdalyããããžãããŒãžã£ãŒã¯ãç¹å®ã®ãããã®NUMAæ§æããŠãŒã¶ãŒã«éç¥ããããã®æ å ±ãŸãã¯APIãæäŸããŸããïŒ
@mJace kubectlãä»ããŠè¡šç€ºãããäœãããããã«ã€ããŠèª¬æããŸããïŒ
@lmdalyããã kubectl describe
ã¯ããã§ãã ãŸãã¯é¢é£æ
å ±ãè¿ãããã®APIã
ãããã®CPUããã³ã°ã¹ããŒã¿ã¹ãããã¹ã¹ã«ãŒVFã®numaããŒããªã©ããããã®ããããžé¢é£æ
å ±ãæäŸãããµãŒãã¹ãéçºããŠããããã§ãã
ãŸããweaveã¹ã³ãŒããªã©ã®äžéšã®ã¢ãã¿ãŒããŒã«ã¯ãAPIãåŒã³åºããŠåã£ãäœæ¥ãè¡ãããšãã§ããŸãã
管çè
ã¯ãããšãã°ãVNFãé©åãªNUMAæ§æã®äžã«ãããã©ããã確èªã§ããŸãã
TopologyManagerããã®éšåãã«ããŒãããã©ãããç¥ãããã ãã§ãã
ãŸãã¯ãTopology Managerããã®çš®ã®æ©èœããµããŒãããããšãèšç»ããŠããå Žåã«å®è¡ã§ããäœæ¥ãããå Žåã¯ã
@mJaceããããŸãããçŸåšãTopologyManagerçšã®ãããªAPIã¯ãããŸããã CPUãšããã€ã¹ãããŒãžã£ãŒã®å Žåããããã«å®éã«å²ãåœãŠãããŠãããã®ã衚瀺ãããªããããããã«åªå é äœã¯ãªããšæããŸãã
ã§ããããããã«ã€ããŠè©±ãåããå§ããŠããŠãŒã¶ãŒã«ã©ã®ãããªèŠæ¹ãããããšãã§ããããèŠãŠã¿ãã®ããããšæããŸãã
ãªãã»ã©ãCPUïŒDeviceManagerããã®æ å ±ãèŠãããšãã§ãããšæããŸããã
ãã¶ããcadvisorã¯ãã®æ
å ±ãæäŸããããã®è¯ã圹å²ã§ãã
åºæ¬çã«cadvisorã¯PIDãªã©ã®ã³ã³ããæ
å ±ãps
ls
ååŸããããã§ãã
ãŸããã³ã³ããã®ããããžé¢é£æ
å ±ã確èªããã®ãšåãæ¹æ³ã§ãã
ãããcadvisorã«å®è£
ããprãäœæããŸãã
cadvisorã§é¢é£ããåé¡ãäœæããŸããã
https://github.com/google/cadvisor/issues/2290
/å²åœ
@mJaceã®cadvisoræ¡ã«+1ã
CPU Manager
ããã³Topology Manager
ã§ã³ã³ãããŒå
ã®DPDK libã䜿çšããã«ã¯ãã³ã³ãããŒã®CPUã¢ãã£ããã£ãŒã解æããŠããdpdk libã«æž¡ããŸããã©ã¡ãããDPDKlibã®ã¹ã¬ããåºå®ã«å¿
èŠã§ãã
詳现ã«ã€ããŠã¯ãcpusãã³ã³ããã®cgroup cpusetãµãã·ã¹ãã ã§èš±å¯ãããŠããªãå Žåãcpusã§ããã»ã¹ãåºå®ããããã®sched_setaffinity
ã®åŒã³åºãã¯é€å€ãããŸãã
DPDK libã¯ã¹ã¬ããã®åºå®ã«pthread_setaffinity_np
ãå©çšãã pthread_setaffinity_np
ã¯sched_setaffinity
ã¹ã¬ããã¬ãã«ã®ã©ãããŒã§ãã
ãŸããKubernetesã®CPUãããŒãžã£ãŒã¯ãã³ã³ãããŒã®cgroupcpusetãµãã·ã¹ãã ã«æä»çãªCPUãèšå®ããŸãã
@ bg-chun cadvisorã®å€æŽã¯ãç£èŠãšããå¥ã®ç®çã«åœ¹ç«ã€ãã®ãšããŠç解ããŸããã èŠä»¶ã«å¿ããŠãã/ proc / self / statusããããCpus_AllowedããŸãã¯ãCpus_Allowed_Listãã解æããããšã«ãããã³ã³ããå ããå²ãåœãŠãããCPUãèªã¿åãããšãã§ããŸãã ãã®ã¢ãããŒãã¯ããªãã®ããã«åããŸããïŒ
Cpus_Allowed
ãããª/ proc / * / statusã®@ConnorDoyleæ
å ±ã¯ã sched_setaffinity
圱é¿ãåããŸãã ãããã£ãŠãã¢ããªã±ãŒã·ã§ã³ãäœããèšå®ãããšãããã¯Cgroupã®cpuset
ã³ã³ãããŒã©ãŒã«ãã£ãŠå®éã«èš±å¯ããããã®ã®ãµãã»ããã«ãªããŸãã
@kad ãç§ã¯ã³ã³ããå ã®ã©ã³ãã£ãŒãcpuidå€ãèŠã€ããŠDPDKããã°ã©ã ã«æž¡ãæ¹æ³ãææ¡ããŠããŸããã ãããã£ãŠãããã¯ã¹ã¬ããã¬ãã«ã®ã¢ãã£ããã£ãèšå®ãããåã«çºçããŸãã
@ConnorDoyle
ãææ¡ããããšãããããŸããæ€èšãããŠããã ããŸãã
ç§ã®èšç»ã¯ãtiny-rest-apiãµãŒããŒããããã€ããŠãæä»çãªCPUå²ãåœãŠæ
å ±ãdpdk-containerã«éç¥ããããšã§ããã
å€æŽç¹ã«ã€ããŠã¯ããŸã cadvisorã®å€æŽã¯èŠãŠããŸããããææ¡ã®ã¿ã衚瀺ãããŠããŸãã
ææ¡ã¯èšãable to tell if there is any cpu affinity set for the container.
ã®ç®æšãšã§to tell if there is any cpu affinity set for the container processes.
ä»åŸã®ä»äºã§ã¯ã
ææ¡ãèªãã åŸãç§ã¯ã¡ããã©cadvisorã¯ãCPUããã³ã°æ
å ±ã解æããããšãå¯èœã§ããã以äžã®ããã«å®¹åšã«ãããæž¡ãkubeletå Žåãããã¯çŽ æŽãããããšã ãšæã£ãç°å¢å€æ°ã®ãããªstatus.podIP
ã metadata.name
ãããã³limits.cpu
ã
ãããç§ã+1ãæ®ããäž»ãªçç±ã§ãã
@ bg-chunããªãã¯cadvisorã§ç§ã®æåã®PRããã§ãã¯ããããšãã§ããŸã
https://github.com/google/cadvisor/pull/2291
ã§åæ§ã®æ©èœãçµäºããŸããã
https://github.com/mJace/numacc
ããããcadvisorã§ãããå®è£
ããããã®é©åãªæ¹æ³ã¯æ¬åœã«ããããŸãã
ãã®ããã1ã€ã®æ°æ©èœã§PRãäœæããã ãã§ã-> PSRã衚瀺ããŸãã
ããããcadvisorã§ãããå®è£ ããããã®é©åãªæ¹æ³ã¯æ¬åœã«ããããŸãã
ãã¶ãããã®ææ¡ã®äžã§ããã«ã€ããŠè°è«ããããšãã§ããŸããïŒ ããªããæç¥ããã®æ©èœãå¿ èŠã ãšæããªã:)
1.16ã®@lmdalyã³ãŒãããªãŒãºã¯8/29æšææ¥ã§ãã æ®ãã®k / k PRã«ã€ããŠã¯ã httpsïŒ//github.com/kubernetes/kubernetes/issues/72828ã远跡ã
@ kacole2ãã®æ©èœã«å¿ èŠãªãã¹ãŠã®PRãããŒãžãããããããŒãžãã¥ãŒã«å ¥ããããŸãã
ããã«ã¡ã¯@ lmdaly -1.17æ¡åŒµæ©èœãããã«ã€ãªãããŸãã ãã§ãã¯ã€ã³ããŠããã®æ¡åŒµæ©èœã1.17ã§ã¢ã«ãã¡/ããŒã¿/å®å®ã«ç§»è¡ãããšæããããã©ããã確èªããããšæããŸãã
çŸåšã®ãªãªãŒã¹ã¹ã±ãžã¥ãŒã«ã¯æ¬¡ã®ãšããã§ãã
ãã®å Žåã¯ãé©åã«è¿œè·¡ã§ããããã«ããã®å·ã«é¢é£ãããã¹ãŠã®k / kPRããªã¹ãããŠãã ããã ð
ããããšãïŒ
/ãã€ã«ã¹ããŒã³ã¯ãªã¢
@lmdaly RDMAãã£ã¹ã«ãã·ã§ã³ã§GPUãã€ã¬ã¯ããžã®ãªã³ã¯ã¯ãããŸããïŒ
@nickolaev ããã®ãŠãŒã¹ã±ãŒã¹ãæ€èšããŠããŸãã ç§ãã¡ã¯ãããè¡ãæ¹æ³ã«ã€ããŠããã€ãã®å éšçãªèããå§ããŸããããç§ãã¡ã¯ããã«ã€ããŠååããããšæã£ãŠããŸãã
@ moshe010 @nickolaev @lmdalyãæã ã¯ããŸãã«ãRDMAãšçŽæ¥GPUã«é¢é£ãããã®ãŠãŒã¹ã±ãŒã¹ãèŠããŸãã ããã«ã€ããŠååããããšæããŸãã ãã®åšãã®ã¹ã¬ãã/ãã£ã¹ã«ãã·ã§ã³ãéå§ããããšã¯å¯èœã§ããïŒ
ããã«ã¡ã¯ïŒ NTMãšã¹ã±ãžã¥ãŒã©ã«ã€ããŠè³ªåããããŸãã ç§ãç解ããŠããããã«ãã¹ã±ãžã¥ãŒã©ãŒã¯NUMAã«ã€ããŠç¥ãããç®çã®NUMAã«ãªãœãŒã¹ïŒCPUãã¡ã¢ãªãããã€ã¹ïŒããªããšããç¹ã§ããŒããåªå ã§ããŸãã ãã®ãããããããžãŒã»ãããŒãžã£ãŒã¯ãã®ããŒãã§ã®ãªãœãŒã¹å²ãåœãŠãæåŠããŸãã ããã¯æ¬åœã§ããïŒ
@nickolaev @Deepthidharwar ãç§ã¯ãŠãŒã¹ã±ãŒã¹ã§ã°ãŒã°ã«ããã¥ã¡ã³ããå§ããŸãããããŠç§ãã¡ã¯ããã«è°è«ã移ãããšãã§ããŸãã æ¥é±äœãæçš¿ããŸãã ããã§ãããã°ã
ãã®æ©èœãèŠãŠæ¬åœã«ããããã§ãã ãŸããåäžã®NUMAããŒãã«CPUãHugepageãSRIOV-VFãããã³ãã®ä»ã®ããŒããŠã§ã¢ãªãœãŒã¹ãå¿
èŠã§ãã
ããããhugepageã¯ããã€ã¹ãã©ã°ã€ã³ã«ãã£ãŠã¹ã«ã©ãŒãªãœãŒã¹ãšããŠèªèãããŸããããã®æ©èœã¯k8sã®hugepageæ©èœãå€æŽããå¿
èŠããããŸããïŒ
@iamneha
@ConnorDoyle確èªã®ããã«ããã®æ©èœã«ã¯CPUãããŒãžã£ãŒãšããã€ã¹ãããŒãžã£ãŒã®äž¡æ¹ããã®ããããžãã³ããå¿ èŠã§ããïŒ 1.16ã§ãã¹ãããŸããããæ©èœããŸããã§ãããCPUãããŒãžã£ãŒããã®ãã³ãããåŸãããªãã£ãããã§ãããããã€ã¹åŽããã®ãã³ãã¯åŸãããªãã£ãããã§ãã
@ConnorDoyleã¯ããã«ããå°ã詳现ããããŸãïŒ
https://gist.githubusercontent.com/jianzzha/c2a66a2514c178cca76a432029ff3387/raw/264f13dfcd06f1f80c48c113aa235fab7c33d81e/hyper%2520threading%2520enabled
@jianzzha ãã©ã®ããã€ã¹ãã©ã°ã€ã³ã䜿çšããŠããŸããïŒ ããšãã°ãSR-IOVããã€ã¹ãã©ã°ã€ã³ã䜿çšããå Žåã¯ãNUMAããŒããå ±åãããŠããããšã確èªããå¿ èŠããããŸãã[1]ãåç §ããŠãã ããã
@andyzheung巚倧ãªããŒãžçµ±åã¯çŸåšè°è«ãããŠãããéå»2é±éã®sig-nodeäŒè°ã§çºè¡šãããŸããã é¢é£ãããªã³ã¯ã¯æ¬¡ã®ãšããã§ãã
https://docs.google.com/presentation/d/1H5xhCjgCZJjdTm-mGUFwqoz8XmoVd8xTCwJ1AfVR_54/edit?usp=sharing
https://github.com/kubernetes/enhancements/pull/1245
https://github.com/kubernetes/enhancements/pull/1199
@jianzzhaããã€ã¹ãã©ã°ã€ã³ããã³ããäžããŠããªãããšã«ã€ããŠã ãã©ã°ã€ã³ã¯ãåæããããã€ã¹ã«é¢ããNUMAæ å ±ãå ±åããããã«æŽæ°ãããŠããŸããïŒ ãã®ãã£ãŒã«ããããã€ã¹ã¡ãã»ãŒãžhttps://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/deviceplugin/v1beta1/api.proto#L100ã«è¿œå ããå¿ èŠããã
ã¿ããªããããšãã ä¿®æ£ãããåäœããããã«ãªããŸããã
@klueska
nvidia-gpu-device-pluginã«ã€ããŠã
Topology Mangerã®nvidia-gpu-device-pluginãæŽæ°ããã¢ã¯ãã£ããªPRïŒWIPïŒã1ã€ã ã衚瀺ãããŸãã
nvidia-gpu-divice-pluginã¯ãäžèšã®PRã§ããããžãã³ããæäŸããããã«æŽæ°ãããŸããïŒ ãŸãã¯ç§ãèŠéããŠãããã®ã¯ãããŸããïŒ
@ bg-chunã¯ããããããã¹ãã§ãã äœè ã«pingãéä¿¡ããŸããã ç¿æ¥ããããã§æ»ã£ãŠããªãå Žåã¯ããã©ã°ã€ã³ãèªåã§æŽæ°ããŸãã
@ bg-chun @ klueskaããããæŽæ°ããŸããã
@klueska @carmark
æŽæ°ãšéç¥ãããããšãããããŸãã
ã¯ãŒã¯ã¹ããŒã¹ã®ãŠãŒã¶ãŒã«sr-iov-pluginupdateãšgpu-pluginupdateã玹ä»ããŸãã
次ã®ãªãªãŒã¹ã®æ©èœåŒ·åãææ¡ããŸãã
ããã¯åºæ¬çã«ããããããä¿èšŒãããQoSã«ããå Žåã«ã®ã¿ããããžã®èª¿æŽãè¡ãããããšããå¶éãåãé€ãããšã§ãã
ãã®å¶éã«ãããçŸæç¹ã§ã¯Topology Managerã䜿çšã§ããªããªããŸããããã¯ãK8ããå°çšã®CPUãèŠæ±ããããªãããã§ãããè€æ°ã®ããŒã«ïŒGPU + SRãªã©ïŒããã®è€æ°ã®ããã€ã¹ã®ãœã±ããã調æŽãããã®ã§ãã -IOV VFãªã©ïŒ
ãŸããã¯ãŒã¯ããŒããã¡ã¢ãªã«ææã§ãªãå ŽåããŸãã¯ã¡ã¢ãªã®äœ¿çšãå¶éããããªãå ŽåïŒä¿èšŒãããQoSã®å¥ã®åºæºïŒã¯ã©ããªããŸããã
å°æ¥ã巚倧ãªããŒãžãé
眮ãããããšãæåŸ
ãããšããã®å¶éã¯IMOãããã«å¶éããããã«æããŸãã
ã調æŽå¯èœãªããªãœãŒã¹ãåå¥ã«èª¿æŽããããšã«å察ããè°è«ã¯ãããŸããïŒ ç¢ºãã®ããã«ãæä»çãªCPUã䜿çšãããŠããå Žåã®ãå¯äžã®CPUãããŒãžã£ãããã³ããåéããŠã¿ãŸãããããããç¬ç«ããŠããŠãŒã¶ãŒãããã€ã¹æã€ãœã±ããæ å ±ãå¿ èŠãšããå ŽåããŸãã¯ã¡ã¢ãªãããŒãžã£ãããŠãŒã¶ãŒãã®hugepagesãªã©ãèŠæ±ãããšãã®ããã€ã¹ãããŒãžã£ãããã³ããåéããŠã¿ãŸããã
ããããŸãã¯ãããã®èµ·åäžã«äžèŠãªè¿œå ã®èšç®è² è·ãæžå¿µãããå Žåã¯ãå ã®ãããã¬ãã«ã®æ§æãã©ã°ãæ»ããã¢ã©ã€ã¡ã³ããçºçãããã©ãããå¶åŸ¡ããŸãïŒå®è£ äžã«å»æ£ãããã®ãèŠãŠé©ããïŒ
次ã®ãªãªãŒã¹ã®æ©èœåŒ·åãææ¡ããŸãã
ããã¯åºæ¬çã«ããããããä¿èšŒãããQoSã«ããå Žåã«ã®ã¿ããããžã®èª¿æŽãè¡ãããããšããå¶éãåãé€ãããšã§ãã
ããã¯ã1.17ã®TODOãªã¹ãã®ã¢ã€ãã çªå·8ã§ãã
https://docs.google.com/document/d/1YTUvezTLGmVtEF3KyLOX3FzfSDw9w0zB-s2Tj6PNzLA/edit#heading = h.xnehh6metosd
ã調æŽå¯èœãªããªãœãŒã¹ãåå¥ã«èª¿æŽããããšã«å察ããè°è«ã¯ãããŸããïŒ ç¢ºãã®ããã«ãæä»çãªCPUã䜿çšãããŠããå Žåã®ãå¯äžã®CPUãããŒãžã£ãããã³ããåéããŠã¿ãŸãããããããç¬ç«ããŠããŠãŒã¶ãŒãããã€ã¹æã€ãœã±ããæ å ±ãå¿ èŠãšããå ŽåããŸãã¯ã¡ã¢ãªãããŒãžã£ãããŠãŒã¶ãŒãã®hugepagesãªã©ãèŠæ±ãããšãã®ããã€ã¹ãããŒãžã£ãããã³ããåéããŠã¿ãŸããã
ã©ã®ãªãœãŒã¹ãæŽåãããã©ã®ãªãœãŒã¹ãæŽåãããªãããéžæçã«kubeletã«æ瀺ããã¡ã«ããºã ãããããšãææ¡ããŠããŸããïŒã€ãŸããCPUãšGPUã®å²ãåœãŠã調æŽããããã巚倧ãªããŒãžå²ãåœãŠã¯èª¿æŽããããªãïŒã ããã«å®å šã«å察ãã人ã¯ããªããšæããŸãããããŒãã¬ãã«ã§ãã©ã°ãšããŠé 眮ãæå®ãç¶ãããšãé 眮ãããªãœãŒã¹ãšé 眮ããªããªãœãŒã¹ãéžæçã«æ±ºå®ããããã®ã€ã³ã¿ãŒãã§ã€ã¹ãéåžžã«ç ©éã«ãªãå¯èœæ§ããããŸãã
ããããŸãã¯ãããã®èµ·åäžã«äžèŠãªè¿œå ã®èšç®è² è·ãæžå¿µãããå Žåã¯ãå ã®ãããã¬ãã«ã®æ§æãã©ã°ãæ»ããã¢ã©ã€ã¡ã³ããçºçãããã©ãããå¶åŸ¡ããŸãïŒå®è£ äžã«å»æ£ãããã®ãèŠãŠé©ããïŒ
ããã§ãããä»æ§ãæŽæ°ããææ¡ãæ£åœåããããã®ãããã¬ãã«ãã©ã°ã®ååãªãµããŒãããããŸããã§ããã äžéšã®ãããã¯äœçœ®åãããå¿ èŠ/å¿ èŠã§ãããäžéšã¯å¿ èŠãªããããç§ã«ã¯ãã®æ±ºå®ããããã¬ãã«ã«ããã·ã¥ããããšã¯çã«ããªã£ãŠããŸãããå šå¡ãåæããããã§ã¯ãããŸããã
ããããžã¢ã©ã€ã³ã¡ã³ãã®QoSã¯ã©ã¹å¶éãåé€ããããã®+1ïŒãªã¹ãã«è¿œå ããŸããïŒsmiley :)ã @LevovarããªãœãŒã¹ããšã«ããããžãæå¹ã«ããããšãæ±ããŠããã®ã¯
ç§ãèŠããŠããéããKEPã«ã¯ããããžã«ãªããã€ã³ããããã®ãããã¬ãã«ã®ãã£ãŒã«ãã¯ãããŸããã§ããã ããããå°å ¥ããªãçç±ã¯ãæä»çã³ã¢ãæé»çã«æ®ãçç±ãšåãã§ããããããžã§ã¯ããšããŠã®Kubernetesã¯ãããŒãã¬ãã«ã®ããã©ãŒãã³ã¹ç®¡çã®èŠ³ç¹ãããããä»æ§ãèªç±ã«è§£éã§ããããšãæãã§ããŸãã ã³ãã¥ããã£ã®äžéšã®ã¡ã³ããŒã«ãšã£ãŠã¹ã¿ã³ã¹ãäžæºã§ããããšã¯ç¥ã£ãŠããŸããããã€ã§ããããã¯ãåã³åãäžããããšãã§ããŸãã å°æ°ã®ãŠãŒã¶ãŒã«é«åºŠãªæ©èœãæå¹ã«ããããšãšãã»ãšãã©ã®ãŠãŒã¶ãŒã«èªç¥çè² è·ã調æŽããããšã®éã«ã¯ãèªç¶ãªç·åŒµé¢ä¿ããããŸãã
èšèšã®éåžžã«åæã®æ®µéã§ã®IMOã«ã¯ãå°ãªããšãç§ã®èšæ¶ãããŸãæ©èœããå Žåã¯ãããã¬ãã«ã®ãã©ã°ããããŸããããããã¯çŽ1.13ïŒDã§ããã
ç§ã¯å人çã«ã¯åžžã«ãã¹ãŠã®ãªãœãŒã¹ã調æŽããããšããŠã倧äžå€«ã§ããããæãã¯éåžžãèµ·åããã¹ãŠã®ãããã®ã¹ã±ãžã¥ãŒã«æ±ºå®ã«é
延ãããããæ©èœã«å¯Ÿããã³ãã¥ããã£ã®åçºããããŸããã圌ãã¯æ¬åœã«åŒ·åãå¿
èŠãã©ããã
ãã®ããã2ã€ã®ãªãã·ã§ã³ãé ã«æµ®ãã³ããããã®æžå¿µã«ãäºåã«å¯ŸåŠãããããšããŠããŸãããããã€ãã®åºæºã«åºã¥ããŠãªãœãŒã¹ã°ã«ãŒãã®èª¿æŽãäºåã«ã²ãŒãããŸãïŒCPUã®å®çŸ©ã¯ç°¡åãä»ã®åºæºã¯é£ããïŒã ãŸãã¯ãæ§æãã©ã°ãå°å ¥ããŸãã
ãã ããäžè¬çãªæ¡åŒµæ©èœã«å¯Ÿããããã·ã¥ããã¯ããªãå Žåã¯ãããã§å®å šã«ã¯ãŒã«ã§ã:)
@mrbobbytables 1.17ã§TopologyManager
ãbeta
ã«åæ¥ããäºå®ã§ãã 远跡ã®åé¡ã¯ããã«ãããŸãïŒ https ïŒ
@ bg-chun @ klueskaããããæŽæ°ããŸããã
ããŒãžããããããïŒ
https://github.com/NVIDIA/k8s-device-plugin/commit/cc0aad87285b573127add4e487b13434a61ba0d6
ãããã§æ°ãããªãªãŒã¹ãäœæããŸããïŒ
https://github.com/NVIDIA/k8s-device-plugin/releases/tag/1.0.0-beta2
v1.17ã®è¿œè·¡ããŒã¿
çŽ æŽããããããããšã@derekwaynecarr ã ã·ãŒãã«è¿œå ããŸã:)
/ã¹ããŒãžããŒã¿
@lmdaly
ç§ã¯v1.17ããã¥ã¡ã³ãã·ã£ããŠã®1ã€ã§ãã
ãã®æ¡åŒµæ©èœïŒãŸãã¯v1.17ã§èšç»ãããŠããäœæ¥ïŒã«ã¯ãæ°ããããã¥ã¡ã³ãïŒãŸãã¯æ¢åã®ããã¥ã¡ã³ããžã®å€æŽïŒãå¿
èŠã§ããïŒ ããã§ãªãå Žåã¯ã1.17ãšã³ãã³ã¹ã¡ã³ããã©ãã«ãŒã·ãŒããæŽæ°ããŠãã ããïŒãŸãã¯ãç¥ãããã ãããæŽæ°ããŸãïŒ
ãããããªãã11æ8æ¥éææ¥ãŸã§ã«äºå®ãããŠããk / websiteïŒãã©ã³ãdev-1.17ïŒã«å¯ŸããPRãæ¢ããŠããã®ã¯ããã¬ã³ããªãŒãªãªãã€ã³ããŒã§ããçŸæç¹ã§ã¯ããã¬ãŒã¹ãã«ããŒPRã«ãªãå¯èœæ§ããããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã
ããããšãïŒ
@ VineethReddy02ã¯ãããã©ãã«ãŒã·ãŒããæŽæ°ã§ããã°ã1.17ã®ããã¥ã¡ã³ãã®æŽæ°ãèšç»ããŠããŸãã
ãã®åã«å¿ ããã®PRãéããŸãããªãã€ã³ããŒãããããšãã
ãã®ããã®ããã¥ã¡ã³ãã远跡ããããã®åé¡ã¯ããã«ãããŸãïŒ https ïŒ
https://github.com/kubernetes/enhancements/pull/1340
çãããç§ã¯KEPã¢ããããŒãPRãéããŠãããããžãããŒãžã£ãŒã®çµã¿èŸŒã¿ããŒãã©ãã«ïŒ beta.kubernetes.io/topology
ïŒãè¿œå ããŸããã
ã©ãã«ã¯ããŒãã®ããªã·ãŒãå
¬éããŸãã
åãã¯ã©ã¹ã¿ãŒå
ã«è€æ°ã®ããªã·ãŒãæã€ããŒããããå Žåãç¹å®ã®ããŒãã«ããããã¹ã±ãžã¥ãŒã«ããã®ã«åœ¹ç«ã€ãšæããŸãã
ã¬ãã¥ãŒããé¡ãããŠãããã§ããïŒ
ããã«ã¡ã¯@ lmdaly
ããã«ãã1.17æ¡åŒµããŒã ã®ãžã§ã¬ããŒðã 远跡ã§ããããã«ããã®ããã«å®è¡äžã®k / kPRããªã¹ãããŠãã ããã ïŒ83492ãããŒãžãããããã§ããã远跡é ç®å šäœã«ã¶ãäžãã£ãŠããé¢é£ããåé¡ãããã«ããã€ãããããã§ãã 11æ14æ¥ã«CodeFreezeã«è¿ã¥ããŸãã®ã§ããããŸã§ã«ãããã©ã®ããã«é²è¡ããŠããããææ¡ããããšæããŸãã æ¬åœã«ããããšãïŒ
@jeremyrickardããã¯ãäžèšã®1.17ã®è¿œè·¡ã®åé¡ã§ãïŒ https ïŒ
@lmdaly @derekwaynecarr
11æ8æ¥éææ¥ãŸã§ã«ãk / websiteïŒãã©ã³ãdev-1.17ïŒã«å¯Ÿããããã¥ã¡ã³ãã®ãã¬ãŒã¹ãã«ããŒPRãæ¢ããŠããŸãã ãã®æéã¯ããš2æ¥ã§ãã
ããã¥ã¡ã³ãPRã¯ããã«ãããŸãïŒ https ïŒ
@klueskaäœæ¥ã®äžéšã1.18ã«ã¶ã€ãã£ãã®ãããããŸãã ããã1.17ã§ããŒã¿çã«åæ¥ããäºå®ã§ããããããšãã¢ã«ãã¡çã®ãŸãŸã§ããå€æŽãããŸããïŒ
æ°ã«ããªãã§ãã ãããhttpsïŒ//github.com/kubernetes/kubernetes/issues/85093ã§ã1.17ã®äžéšãšããŠã§ã¯ãªãã1.18ã§ããŒã¿çã«ãžã£ã³ãããããšãããããŸããã 1.17ãã€ã«ã¹ããŒã³@klueskaã®äžéšãšããŠãã¢ã«ãã¡ããŒãžã§ã³ãžã®äž»èŠãªå€æŽãšããŠããã远跡ããŸããïŒ ãããšããåæ¥ã1.18ã«å»¶æããŸããïŒ
/ milestone v1.18
ãã@klueska
1.18æ¡åŒµããŒã ã®ãã§ãã¯ã€ã³ïŒ ããã1.18ã§ããŒã¿çã«åæ¥ããäºå®ã¯ãããŸããïŒ KEPã§æŽæ°ãå¿ èŠãªå Žåãæ¡åŒµããªãŒãºã¯1æ28æ¥ãã³ãŒãããªãŒãºã¯3æ5æ¥ã§ãã
ããããšãïŒ
ã¯ãã
@klueskaã¢ããããŒãããŠãããŠããããšãïŒ ãã©ããã³ã°ã·ãŒããæŽæ°ããŠããŸãã
@klueskaã¯ããã®ãªãªãŒã¹ã®KEPã確èªããŠãããšãã«ããã¹ãèšç»ãæ¬ èœããŠããããšã«æ°ä»ããŸããã ãªãªãŒã¹ã§ããŒã¿çã«ç§»è¡ããã«ã¯ããã¹ãèšç»ãè¿œå ããå¿ èŠããããŸãã ä»ã®ãšãããã€ã«ã¹ããŒã³ããåé€ããŸãããäŸå€ãªã¯ãšã¹ããæåºããŠKEPã«ãã¹ããã©ã³ãè¿œå ãããšãå床远å ã§ããŸãã éç¥ãé ããããšããè©«ã³ããŸãã
/ãã€ã«ã¹ããŒã³ã¯ãªã¢
@vpickardäžèšãã芧ãã ãã
@vpickardäžèšãã芧ãã ãã
@klueskaé ãäžããŠãããŠããããšãã KEPãžã®ãã¹ãèšç»ã®è¿œå ã«åãçµã¿ãäŸå€ãªã¯ãšã¹ããæåºããŸãã ç§ãã¡ã¯ç©æ¥µçã«ãã¹ãã±ãŒã¹ãéçºããŠãããããã€ãã®ãã¹ãPRãå®æœããŠããã次ã®ãããªããã€ãã®ãã¹ããé²è¡äžã§ãã
@jeremyrickardåç §çšã«ç§ã«æ瀺ã§ãããã¹ãèšç»ãã³ãã¬ãŒãã¯ãããŸããïŒ
@vpickardããªãã¯èŠãããšãã§ããŸãïŒ
https://github.com/kubernetes/enhancements/blob/master/keps/sig-storage/20190530-pv-health-monitor.md#test -plan
ãš
https://github.com/kubernetes/enhancements/blob/master/keps/sig-storage/20200120-skip-permission-change.md#test -plan
åäœãã¹ããše2eãã¹ãã®æŠèŠãå«ããŸãã
ãã¹ãã°ãªããã«è¡šç€ºããããã®ãããå Žåã¯ãå«ãããšäŸ¿å©ã§ãã
äŸå€ãæ¿èªãããŸããã
/ milestone v1.18
@jeremyrickardãã¹ããã©ã³ãçµ±åãããŸããïŒ https ïŒ
ããã«ã¡ã¯@ klueska @ vpickard ãã³ãŒãããªãŒãºã3æ5æ¥æšææ¥ã«çºå¹ããããšããç¥ããããŸãã
ãã®æ¡åŒµã®ããã«è¿œè·¡ããå¿ èŠããããã¹ãŠã®k / k PRãŸãã¯ãã®ä»ã®PRããªã³ã¯ããŠããã ããŸããïŒ
ããããšãããããŸã ïŒïŒ
ããã«ã¡ã¯@palnabarun
ããã§1.18ã®åé¡ã远跡ããŸãïŒ
https://github.com/kubernetes/kubernetes/issues/85093
çŸåšãªãŒãã³PRïŒ
https://github.com/kubernetes/kubernetes/pull/87758 ïŒæ¿èªæžã¿ããã¬ãŒãã³ã°ãã¹ãïŒ
https://github.com/kubernetes/kubernetes/pull/87759ïŒWIP ïŒ
https://github.com/kubernetes/kubernetes/pull/87650 ïŒã¬ãã¥ãŒæžã¿ãæ¿èªãå¿
èŠïŒ
https://github.com/kubernetes/kubernetes/pull/87645ïŒe2eãã¹ãPRãæ¿èªãå¿ èŠïŒ
@vpickardã¯ãç§ãèŠéãã
ããããšã
ããã§PRãšã¢ã³ãã¬ã©ã®åé¡ããªã³ã¯ããŠããã@nolanconã«æè¬ããŸãã ãã©ããã³ã°ã·ãŒãã«PRãè¿œå ããŸããã
ããã«ã¡ã¯@ palnabarun ã @ nolancon ã
E2Eãã¹ãã«é¢é£ããããã€ãã®è¿œå ã®ãªãŒãã³PRïŒ
https://github.com/kubernetes/test-infra/pull/16062 ïŒã¬ãã¥ãŒãšæ¿èªãå¿
èŠïŒ
https://github.com/kubernetes/test-infra/pull/16037 ïŒã¬ãã¥ãŒãšæ¿èªãå¿
èŠïŒ
è¿œå ã®æŽæ°ãããŠããã@vpickardã«æè¬ããŸãã :)
ããã«ã¡ã¯@lmdalyç§ã¯v1.18ããã¥ã¡ã³ãã·ã£ããŠã®1ã€ã§ãã
ãã®æ¡åŒµæ©èœïŒãŸãã¯v1.18ã§èšç»ãããŠããäœæ¥ïŒã«ã¯ãæ°ããããã¥ã¡ã³ãïŒãŸãã¯æ¢åã®ããã¥ã¡ã³ããžã®å€æŽïŒãå¿
èŠã§ããïŒ ããã§ãªãå Žåã¯ã1.18ãšã³ãã³ã¹ã¡ã³ããã©ãã«ãŒã·ãŒããæŽæ°ããŠãã ããïŒãŸãã¯ãç¥ãããã ãããæŽæ°ããŸãïŒ
ãããããªãã2æ28æ¥éææ¥ãŸã§ã«äºå®ãããŠããk / websiteïŒãã©ã³ãdev-1.18ïŒã«å¯ŸããPRãæ¢ããŠããã®ã¯ããã¬ã³ããªãŒãªãªãã€ã³ããŒã§ããçŸæç¹ã§ã¯ããã¬ãŒã¹ãã«ããŒPRã«ãªãå¯èœæ§ããããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã
ããã«ã¡ã¯@irvifa ãé ãäžããŠãããŠããããšãã ããã€ãã®å°ããªå€æŽãå ããŠãããkubernetes / websiteïŒ19050ã§PRãéããŸããã ãã®PRã¯ä»ã®ãšããWIPã§ããããŒã¿çã«ç§»è¡ããããã®åºæºãæºããããããWIPããåé€ããŸãïŒäžèšã®PRã¯ãŸã æ€èšäžã§ãïŒã
ããããšãã
ããã«ã¡ã¯@nolanconè¿ éãªå¯Ÿå¿ã«æè¬ããŸããã¹ããŒã¿ã¹ããã¬ãŒã¹ãã«ããŒPRã«å€æŽããŸããããããšãããããŸãã
@palnabarunåèãŸã§ã«ãã¬ãã¥ãŒããã»ã¹ã容æã«ããããã«ããã®ïŒ//github.com/kubernetes/kubernetes/pull/87759ã2ã€ã®PRã«åå²ããŸããã 2ã€ç®ã¯https://github.com/kubernetes/kubernetes/pull/87983ã§ã远跡ããå¿ èŠããããŸãã ããããšãã
@nolanconæŽæ°ããŠããã ãããããšãããããŸãã
äžéšã®PRã¯ãŸã ããŒãžãä¿çãããŠããããã§ãã ã¬ãã¥ãŒæ åœè ãšæ¿èªè ãPRã«åå ãããããã«ããªãªãŒã¹ããŒã ã®æ¯æŽãå¿ èŠãã©ããã確èªããããšæããŸããã äœãå¿ èŠãªå Žåã¯ãç¥ãããã ããã
åèãŸã§ã«ã3æ5æ¥ã®CodeFreezeã«éåžžã«è¿ã¥ããŠã
@nolanconæŽæ°ããŠããã ãããããšãããããŸãã
äžéšã®PRã¯ãŸã ããŒãžãä¿çãããŠããããã§ãã ã¬ãã¥ãŒæ åœè ãšæ¿èªè ãPRã«åå ãããããã«ããªãªãŒã¹ããŒã ã®æ¯æŽãå¿ èŠãã©ããã確èªããããšæããŸããã äœãå¿ èŠãªå Žåã¯ãç¥ãããã ããã
åèãŸã§ã«ã3æ5æ¥ã®CodeFreezeã«éåžžã«è¿ã¥ããŠã
@palnabarunãã1ã€ã®æŽæ°ã httpsïŒ//github.com/kubernetes/kubernetes/pull/87983ã¯çŸåšéããããŠããã远跡ããå¿ èŠã¯ãããŸããã å¿ èŠãªå€æŽã¯ãã¬ãã¥ãŒäžã®å ã®PRhttps ïŒ//github.com/kubernetes/kubernetes/pull/87759ã«å«ãŸããŠããŸãã
@nolanconãã£ãããã äžèšã§å ±æããã¢ã³ãã¬ã©ãã©ãã«ãŒã®åé¡ã远跡ããŠããŸãã :)
ããã«ã¡ã¯@nolancon ãããã¯3æ5æ¥ã®CodeFreezeããããã2æ¥ã§ãããšããããšãæãåºãããŠ
ã³ãŒãããªãŒãºã§ã¯ãé¢é£ãããã¹ãŠã®PRãããŒãžããå¿ èŠããããŸããããããªããšãäŸå€ãªã¯ãšã¹ããæåºããå¿ èŠããããŸãã
ããã«ã¡ã¯@nolancon ã
ä»æ¥ãEODã¯ã³ãŒãããªãŒãºã§ãã
https://github.com/kubernetes/kubernetes/pull/87650ãæéãŸã§ã«ã¬ãã¥ãŒããããšæã
ããã§ãªãå Žåã¯ãäŸå€ãªã¯ãšã¹ããæåºããŠãã ããã
ããã«ã¡ã¯@nolancon ã
ä»æ¥ãEODã¯ã³ãŒãããªãŒãºã§ãã
kubernetes / kubernetesïŒ87650ã¯æéãŸã§ã«ã¬ãã¥ãŒããããšæããŸããïŒ
ããã§ãªãå Žåã¯ãäŸå€ãªã¯ãšã¹ããæåºããŠãã ããã
ããã«ã¡ã¯@palnabarun ã
æ確ã«ããããã«ãEODãšã¯ãååŸ5æãŸãã¯åå0æã®PSTãæå³ããŸããïŒ ããããšã
æ確ã«ããããã«ãEODãšã¯ãååŸ5æãŸãã¯åå0æã®PSTãæå³ããŸããïŒ ããããšã
倪平æŽæšæºæååŸ5æã
PRã¯æ¿èªãããŸããããsig-nodeãããŒãžããããã«è¿œå ããå¿ èŠã®ãããã€ã«ã¹ããŒã³ããããŸããã ç§ã¯ãããããããã§pingããŸãããããŸãããã°ããã¯åããªããªããããªãã¯äŸå€ãå¿ èŠãšããŸããã =ïŒ
ãã®kepã®ãã¹ãŠã®PRãçµ±åãããããã§ãïŒãããŠæéãŸã§ã«æ¿èªãããŸããïŒãæ¡åŒµæ©èœã®è¿œè·¡ã·ãŒããæŽæ°ããŸããã ïŒç¬é¡ïŒ
/ãã€ã«ã¹ããŒã³ã¯ãªã¢
ïŒãã€ã«ã¹ããŒã³ãå®äºããããv1.18ãã€ã«ã¹ããŒã³ãããã®æ¡åŒµæ©èœã®åé¡ãåé€ããŸãïŒ
ããã«ã¡ã¯@ nolancon @ lmdaly ãããã§1.19ã®æ¡åŒµã·ã£ããŠã 1.19ã§ããã«ã€ããŠäœãèšç»ã¯ãããŸããïŒ
1.19ã§èšç»ãããŠããå¯äžã®æ¡åŒµæ©èœã¯æ¬¡ã®ãšããã§ãã
https://github.com/kubernetes/enhancements/pull/1121
æ®ãã®äœæ¥ã¯ãå¿ èŠã«å¿ããŠã³ãŒãã®ãªãã¡ã¯ã¿ãªã³ã°/ãã°ä¿®æ£ã«ãªããŸãã
ãã®åé¡ã®ææè ã@lmdalyã§ã¯ãªãç§ã«å€æŽããæ¹æ³ã¯ãããŸããïŒ
ããããšããé£çµ¡å ãæŽæ°ããŸãã
/ milestone v1.19
/ Assign @klueska
/ unassign @lmdaly
ããã§ãKevin https://prow.k8s.io/command-help
ããã«ã¡ã¯ã±ãã³ã æè¿ãKEP圢åŒãå€æŽãããïŒ1620ãå é±ããŒãžãããKEPãã³ãã¬ãŒãã«æ¬çªæºåã¬ãã¥ãŒã®è³ªåãè¿œå ãããŸããã å¯èœã§ããã°ãæéããããŠKEPãåãã©ãŒããããããã³ãã¬ãŒãã«è¿œå ãã質åã«ãçããŠ
@klueska ^^
@derekwaynecarr @klueska @johnbelamaric
ãŸãã1.19relã«æ°ããããããžããªã·ãŒãè¿œå ããäºå®ã§ãã
ããããããã¯ãŸã ææè
ãšã¡ã³ããã«ããã¬ãã¥ãŒãåããŠããŸããã
ïŒ1.19ã§äœæããã®ãé£ãããšæãããå Žåã¯ããç¥ãããã ãããïŒ
ããã«ã¡ã¯@ klueskað1.19ããã¥ã¡ã³ãã·ã£ããŠããã«ïŒ 1.19ã§èšç»ãããŠãããã®æ¡åŒµäœæ¥ã«ã¯ãããã¥ã¡ã³ãã®æ°èŠãŸãã¯å€æŽãå¿ èŠã§ããïŒ
ããã¥ã¡ã³ãã®æ°èŠ/å€æŽãå¿
èŠãªå Žåã¯ã6æ12æ¥éææ¥ãŸã§ã«k / websiteïŒãã©ã³ãdev-1.19
ïŒã«å¯Ÿãããã¬ãŒã¹ãã«ããŒPRãå¿
èŠã«ãªãããšãèŠããŠãããŠãã ããã
ããã«ã¡ã¯@klueskaã¯ãããªããããŸããã£ãŠããããšãé¡ã£ãŠããŸããããäžåºŠãã§ãã¯ã€ã³ããŠãããã«ããã¥ã¡ã³ããå¿ èŠãã©ããã確èªããŠãã ããã 確èªããŠããããŸããïŒ
ããã«ã¡ã¯@annajungã äž¡æ¹ãšãããã¥ã¡ã³ãã®å€æŽãå¿ èŠã«ãªã2ã€ã®ä¿çäžã®æ¡åŒµæ©èœããããŸãã
ãããã1.19ã«ãããã1.20ã«ããã·ã¥ãããã¯ãŸã 決å®äžã§ãã ãããã1.19ã®éä¿æããããšã«ããå Žåã6æ12æ¥ãŸã§ã«ããã¥ã¡ã³ãã®ãã¬ãŒã¹ãã«ããŒPRãäœæããããšã«ãªããŸãã
çŽ æŽãããïŒ æŽæ°ããŠããã ãããããšãããããŸããããã«å¿ããŠãã©ããã³ã°ã·ãŒããæŽæ°ããŸãã ãã¬ãŒã¹ãã«ããŒPRãäœæãããããç¥ãããã ããã ããããšãïŒ
@lmdaly @ConnorDoyle
ããã質åããã£ãŒãããã¯ãããã®ã«é©åãªå Žæã§ããããšãé¡ã£ãŠããŸãã
k8sã¯ã©ã¹ã¿ãŒv1.17ã§TopologyManager
ãšCPUManager
ãªã³ã«ããŸãã
ãããŠåœŒãã®æ¹éã¯best-effort
ãšstatic
ãããç§ã®ãããã®ãªãœãŒã¹ã§ã
resources:
requests:
cpu: 2
intel.com/sriov_pool_a: '1'
limits:
cpu: 2
intel.com/sriov_pool_a: '1'
sriov_pool_aã®PFã¯NUMAããŒã0ã«ããããããããã¯NUMAããŒã0ã®CPUã§ãå®è¡ãããã¯ãã§ãã
ãããããããã®ããã»ã¹ãNUMAããŒã1ã®CPUã§å®è¡ãããŠããããšãããããŸããã
ãŸãã taskset -p <pid>
çµæã«å¿ããŠèšå®ãããCPUã¢ãã£ããã£ãã¹ã¯ã¯ãããŸããã
äœãåé¡ããããŸããïŒ ã³ã³ããã«ã¯ãnumaããŒã0ã®CPUã«cpuã¢ãã£ããã£ãã¹ã¯ãèšå®ãããŠããå¿ èŠããããŸãã
TopoloyManager
ãæ£ããæ©èœããŠãããã©ãããç¥ãããã«ã§ããäŸããã¹ãã¯ãããŸããïŒ
@annajung Placeholder docs PRãè¿œå ãããŸããïŒ https ïŒ
ããã«ã¡ã¯@klueska ã
æææ¥ã«k-devã«éä¿¡ãããé»åã¡ãŒã«ã®ãã©ããŒã¢ãããšããŠãCodeFreezeã7æ9æ¥æšææ¥ã«å»¶é·ãããããšããç¥ããããŸãã æ¹èšãããã¹ã±ãžã¥ãŒã«ã¯ããã§ç¢ºèªã§ããŸãïŒ https ïŒ
ãã®æãŸã§ã«ãã¹ãŠã®PRãçµ±åãããããšãæåŸ
ããŠããŸãã ãäžæãªç¹ãããããŸããããç¥ãããã ããã ð
äžçªã
ãã«ã¹ãã³
ããã«ã¡ã¯@klueska ã次ã®ç· ãåããè¿«ã£ãŠããããšãå奜çã«æãåºãããŠãããŸãã
ãã¬ãŒã¹ãã«ããŒããã¥ã¡ã³ãPRã«ããŒã¿ãå
¥åãã7æ6æ¥æææ¥ãŸã§ã«ç¢ºèªã§ããããã«ããŠãã ããã
ããããšã@annajung ã ã³ãŒãã®ããªãŒãºã7æ9æ¥ã«ç§»åããã®ã§ãããã¥ã¡ã³ãã®æ¥ä»ãååãããã®ã¯çã«ããªã£ãŠããŸããïŒ ããã¥ã¡ã³ããäœæããããæ©èœãéã«åããªãã£ãå ŽåïŒãŸãã¯ããã¥ã¡ã³ãã瀺åããŠãããã®ãšã¯å°ãç°ãªã圢åŒã§äœæãããå ŽåïŒã¯ã©ããªããŸããïŒ
ããã«ã¡ã¯@klueska ãããã¯çŽ æŽããããã€ã³ãã§ãïŒ ãã¹ãŠã®ããã¥ã¡ã³ãã®ç· ãåããæ°ãããªãªãŒã¹æ¥ã§1é±é延æãããŸããããæå¹ãªãã€ã³ãããããšæããŸãã ãªãªãŒã¹ã®ããã¥ã¡ã³ããªãŒãã«é£çµ¡ããŠãè¿ä¿¡ãããŠãã ããã ãããææããŠããã ãããããšãããããŸãïŒ
ããã«ã¡ã¯@klueska ããããç§ãã¡ã®æ³šæãåèµ·ããŠãããŠããããšãã ãªãªãŒã¹ã®ããã¥ã¡ã³ãã®æ¥ä»ãšæ··åãããŠããŸãã ããªããèšã£ãããã«ããã¬ãã¥ãŒã®æºåãã§ããŠããPRãã¯ãã³ãŒããããªãŒãºããåŸãéå»ã®ãªãªãŒã¹ã«ããã¯ãã§ãã
ãã ãããªãªãŒã¹ããŒã ãšè©±ãåã£ãåŸããPRã®ã¬ãã¥ãŒæºåå®äºããæéãšããŠç· ããããšã«ããããã®1.19ãªãªãŒã¹ã®æ¥ä»ããã®ãŸãŸç¶æããããšã«ããŸããã ããã¥ã¡ã³ãããŒã ã¯æè»æ§ããããããã¥ã¡ã³ããã³ãŒããšåæããŠããããšã確èªããããã«äœåãªæéãå¿ èŠã«ãªãå¯èœæ§ã®ããããªã/ä»ã®äººãšååããŸãã ãPRã®ã¬ãã¥ãŒæºåå®äºãã®æéã¯åŒ·å¶ãããŸãããããPRã®ã¬ãã¥ãŒãšèªã¿åãã«ããããŒãžãã¯åŒ·å¶ãããŸãã
ãããããªãã®æžå¿µã«çããã®ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãïŒ ãäžæãªç¹ãããããŸãããããæ°è»œã«ãåãåãããã ããã
ãŸããæ¥ä»ã®ãã¬ã³ããªãŒãªãªãã€ã³ããŒïŒ
ãããã¥ã¡ã³ãã®ç· ãåã-ã¬ãã¥ãŒã®æºåãã§ããŠããPRãã¯7æ6æ¥ãŸã§ã«ç· ãåãããŸã
ãããã¥ã¡ã³ããå®äºããŸãã-ãã¹ãŠã®PRã確èªãããããŒãžã®æºåãã§ããŠããŸããã®æéã¯7æ16æ¥ã§ãã
ããã«ã¡ã¯@klueska ïŒwaveïŒ
ãªãªãŒã¹ããŒã ããããã远跡ã§ããããã«ãããã§ãã¹ãŠã®å®è£ PRã«ãªã³ã¯ããŠãã ããã ïŒslightly_smiling_faceïŒ
ããããšãã
@palnabarun
PR远跡https://github.com/kubernetes/enhancements/pull/1121ã¯æ¬¡ã®å Žæã«ãããŸãã
https://github.com/kubernetes/kubernetes/pull/92665
æ®å¿µãªãããæ¡åŒµæ©èœïŒ1752ã¯ãªãªãŒã¹ã«å«ãŸããªãããã远跡ããPRã¯ãããŸããã
ããã«ã¡ã¯@klueska ïŒwaveïŒãããªããèšåããäž¡æ¹ã®PRïŒhttps://github.com/kubernetes/enhancements/pull/1121ãšhttps://github.com/kubernetes/enhancements/pull/1752ïŒãããããŸãåãæ¡åŒµæ©èœãåç §ããŠãã ããã https://github.com/kubernetes/enhancements/pull/1752ã¯ããŒã¿åæ¥èŠä»¶ãæ¡åŒµãããªãªãŒã¹ã«ã¯å«ãŸããªãããã1.19ã§ãã以äžã®å€æŽã¯ãªããšæ³å®ã§ããŸããïŒ
ããããšãã ïŒslightly_smiling_faceïŒ
ã³ãŒãããªãŒãºã¯7æ9æ¥æšææ¥EODPSTã«å§ãŸããŸã
@palnabarunããã¯ãä»æ¥ãŸãã¯ææ¥çéžããïŒ92665ã®åŸç¶PRã§ãïŒ https ïŒ
ãã®åŸãäºæããªããã°ãçºçãããŸã§ããã®ãªãªãŒã¹ã®PRã¯ãªããªããŸãã
çŽ æŽãããïŒ ã¢ããããŒãããããšãããããŸãã ïŒ+1ïŒ
https://github.com/kubernetes/kubernetes/pull/92794ãç£èŠã
@annajunghttps ïŒ//github.com/kubernetes/website/pull/21607ããã§ã¬ãã¥ãŒã®æºåãæŽããŸããã
ããã§ãšãããããŸã@klueskakubernetes / kubernetesïŒ92794ãã€ãã«çµ±åãããŸãããããã«å¿ããŠãã©ããã³ã°ã·ãŒããæŽæ°ããŸãð
/ãã€ã«ã¹ããŒã³ã¯ãªã¢
ïŒãã€ã«ã¹ããŒã³ãå®äºããããv1.19ãã€ã«ã¹ããŒã³ãããã®æ¡åŒµæ©èœã®åé¡ãåé€ããŸãïŒ
ããã«ã¡ã¯@klueska
æ¡åŒµæ©èœã¯ããããªãŒãããŸãã ããã1.20ã§åæ¥ããäºå®ã¯ãããŸããïŒ
ããããšãïŒ
ãã«ã¹ãã³
åæ¥ããäºå®ã¯ãããŸãããããã®æ©èœåŒ·åã«é¢é£ããŠ1.20ã§è¿œè·¡ããå¿
èŠã®ããPRããããŸãã
https://github.com/kubernetes/kubernetes/pull/92967
1.20ã§åæ¥ããŠããŸããããä»è¡ã£ãããã«ãé¢é£ããPRããã®åé¡ã«ãªã³ã¯ãç¶ããŠãã ããã
@kikisdeliveryserviceããã»ã¹ãç解ããã®ãæäŒã£ãŠãã ããã ããããžãããŒãžã£ãŒæ©èœã¯1.20ã§åæ¥ããŠããŸããããæ°ããæ©èœãè¿œå ãããçŸåšæ©èœããŠããŸãïŒhttpsïŒ //github.com/kubernetes/enhancements/pull/1752 k / kïŒ httpsïŒ// githubã com / kubernetes / kubernetes / pull / 92967ã ããã¯ãªãªãŒã¹ããŒã ã§è¿œè·¡ããå¿ èŠããããã®ã§ããïŒ 1.20ã®ããã¥ã¡ã³ãã®æŽæ°ããŸãã¯è¿œè·¡ãããŠããä»ã®äœãã®è¿œè·¡ãç°¡çŽ åããå¯èœæ§ããããŸãã
ãã®å€æŽã¯ä»å çãªãã®ã§ãããããbeta2ãªã©ãšåŒã¶çç±ã¯ããŸããããŸããã
è¿œå æ©èœã1.19ã§åºè·ãããªãã£ããšããçŸå®ãåæ ããé¢é£ãããã³ãPRïŒ https ïŒ
Topology Manager Webããã¥ã¡ã³ããPRãæŽæ°ããŠãã¹ã³ãŒãæ©èœãè¿œå ããŸãïŒ https ïŒ
1.20ã§è¿œè·¡ã§ããå¿ ãããåæ¥ããå¿ èŠã¯ãªããšæããŸãã @kikisdeliveryserviceæ£ãããªãå Žåã¯ããã£ã€ã ã
ããã«ã¡ã¯@SergeyKanzhelev
æŽå²ãèŠããšãããã¯å®éã«ã¯ããã§ã¯ãããŸããã ç§ã¯ãããäžã§åæ¥ããªãã ãããšèšãããŸãããããã¯åé¡ãããŸããããããŠãªããã®KEPã¯è¿œè·¡ãããŠããŸããã ãã ãããã®æ¡åŒµæ©èœïŒæ¡åŒµæ©èœããŒã ã«ã¯äžæïŒã¯ãæè¿@ k-wiatrzykã«ãã£ãŠ1.20ã®ããŒã¿çãšããŠåã¿ãŒã²ãããããŸããïŒhttps://github.com/kubernetes/enhancements/pull/1950ïŒã
ãªãªãŒã¹ããã»ã¹ã掻çšãããå ŽåïŒæ¡åŒµæ©èœã®è¿œè·¡ããªãªãŒã¹ãã€ã«ã¹ããŒã³ã®äžéšã§ãããããã¥ã¡ã³ãããŒã ã«ããã远跡ããã/ããã¥ã¡ã³ãã1.20ãªãªãŒã¹ã«å«ããå Žåã¯ãæ¡åŒµæ©èœã®äŸå€ãªã¯ãšã¹ããã§ããã ãæ©ãæåºããå¿ èŠããããŸãã
ãã®æ©èœã¯ãïŒæ¡åŒµæéã®åã«ïŒïŒæ¢åã®ïŒKEPã«ãã§ã«ããŒãžãããŠããŸãã
https://github.com/kubernetes/enhancements/pull/1752
ãã®å®è£
ã§ã¯ãPRã¯ãã§ã«ãã€ã«ã¹ããŒã³ã®äžéšã§ãã
https://github.com/kubernetes/kubernetes/pull/92967
ãã以äžããã¹ãããšããããšã¯ç¥ããŸããã§ããã
誰ã«äŸå€ãæåºããå¿ èŠããããŸããããããŠæ£ç¢ºã«ã¯äœã®ããã«ïŒ
ããã«ã¡ã¯@klueskaããªããåç §ããŠããprã¯ã1.19ã®kepã«ããŒã¿ãè¿œå ããããã«6æã«ããŒãžãããŸããïŒ https ïŒ -manager.mdïŒbeta -v119
1.20ã®æ¡åŒµæéã¯10æ6æ¥ã§ããããããŒã¿çã1.20ã«ç§»åãã1.19ãžã®åç §ãåé€ãããšããå€æŽã¯ã3æ¥åã«https://github.com/kubernetes/enhancements/pull/1950ãä»ããŠããŒãžãããŸãã
äŸå€ãªã¯ãšã¹ããéä¿¡ããæé ã«ã€ããŠã¯ã https ïŒ
ç³ãèš³ãããŸããããäŸå€ãæåºããå
容ã«ã€ããŠã¯ãŸã æ··ä¹±ããŠããŸãã
ç§ã¯ãããåãã§ãã£ãŠããŸããç§ã¯ããã«äœãå«ããã¹ããããããªãã ãã§ãã
ãNodeTopologyManagerãæ©èœã¯ã1.18ã§ãã§ã«ããŒã¿çã«ç§»è¡ããŠããŸãã
1.20ã§ã¯GAã«ç§»è¡ããŠããŸããïŒããŒã¿çã®ãŸãŸã§ãïŒã
1.20ã§ããŒãžãããPRïŒã€ãŸããkubernetes / kubernetesïŒ92967ïŒã¯ãããããžãããŒãžã£ãŒã®æ¢åã®ã³ãŒããæ¹åãããã®ã§ãããalpha / beta / gaãªã©ã®ã¹ããŒã¿ã¹ã®ç¹ã§ããã³ãããšã¯é¢ä¿ãããŸããã
ç· ãåããä»æ¥ãªã®ã§ïŒå¿µã®ããïŒãCall of Exceptionã¡ãŒã«ãéä¿¡ããŸããïŒ https ïŒ
@kikisdeliveryservice @klueska @annajung
äŸå€ã®åŒã³åºããæ¿èªãããŸããã確èªã¯ããã§ç¢ºèªã§ããŸãïŒ https ïŒ
ãããã§@ K-wiatrzykïŒ@klueska远跡ã·ãŒããæŽæ°ããŸããã
ccïŒ @annajung
ãã@ k-wiatrzyk @klueska
kubernetes / kubernetesïŒ92967ã¯æ¿èªãããŠããããã§ããããªããŒã¹ãå¿ èŠã§ãã
ã³ãŒãããªãŒãºã11æ12æ¥æšææ¥ã®2æ¥åŸã«ç»å ŽããããšãæãåºããŠãã ããã ãã¹ãŠã®PRã¯ãã®æ¥ä»ãŸã§ã«ããŒãžããå¿ èŠããããŸããããããªããšãäŸå€ãå¿ èŠã«ãªããŸãã
äžçªã
ãã«ã¹ãã³
PRãçµ±åãããã·ãŒããæŽæ°ãããŸããã ïŒsmile_catïŒ
æãåèã«ãªãã³ã¡ã³ã
ãã®kepã®ãã¹ãŠã®PRãçµ±åãããããã§ãïŒãããŠæéãŸã§ã«æ¿èªãããŸããïŒãæ¡åŒµæ©èœã®è¿œè·¡ã·ãŒããæŽæ°ããŸããã ïŒç¬é¡ïŒ