Kubernetes(k8s)是Google開源的容器集群管理系統(谷歌內部:Borg)。在Docker技術的基礎上,為容器化的應用提供部署運行、資源調度、服務發現和動態伸縮等一系列完整功能,提高了大規模容器集群管理的便捷性。
問題:
Node節點ip是集群內私有ip,只能通過API server[master]-------->kube proxy[Node],所以外部無法直接取得Node內Pod中container里程序運行的日志(文件)。
必須從master節點入手,然后通過Node ip地址(私有地址)進入Node,通過docker cp將Pod節點內container運行的日志,復制到宿主節點(Node),在通過scp將Node中文件復制到master節點。可取。
取日志步驟
- 獲得master節點ip,ssh root@ip 登錄到master節點
- 獲得Node節點的ip2(平台如PaaS,是可以通過UI看到的),也就是Pod節點的宿主機的ip, ssh root@ip2
- 獲得運行進程的container id,通過docker ps,找到運行進程對應的container id即可,假設為containerID
- docker cp containerID:/home/tmp /tmp ,將containerID中的文件復制到宿主機
- scp -r /tmp root@ip:/tmp ,將宿主機文件復制到master節點
- 通過ftp將master節點文件down到本地