heimao0307 前情提要:在之前的帖子中看到下图回复(时间:2019年11月19日) 问题: 没有用过2.1版本,直接用的是3.0。隔了一年了,请问应用商店里的Harbor可以用在生产环境中吗? 如果想用应用商店里的Harbor实现高可用,应该如何部署? 感谢!
hlwanghl 一般情况是够用的,因为 Harbor 基本不会出现镜像拉不下来之类的问题,但也要根据自己的情况而定,各自的生产环境也都不太一样。我知道的很多用户生产环境会在 ks 集群之外单独部署一套 Harbor,而不是同一个 ks 集群上既有业务又有 Harbor,来避免由于 ks 与 Harbor 之间出现类似“死锁”的问题,比如 ks 集群上一些服务需要从 Harbor 推拉镜像,而 Harbor 本身也需要 ks 集群运行正常。 这是 Harbor 官方的高可用文档,https://github.com/goharbor/harbor-helm/blob/master/docs/High%20Availability.md,简单说就是需要先保证有高可用的存储、高可用的 redis、以及高可用的 PostgreSQL,可以根据实际情况看需不需要去做。
tiger-ye hlwanghl 比如 ks 集群上一些服务需要从 Harbor 推拉镜像,而 Harbor 本身也需要 ks 集群运行正常,大佬,这种情况可以举个例子么,不是很明白,我们也在考虑 部署在一起还是分开部署
hlwanghl tiger-ye 就是一个鸡生蛋的问题。 k8s 启动的时候需要拉取一些 docker 镜像,比如 kube-apiserver,kube-scheduler 等,但这时候 Harbor 还没启动,Harbor 需要等 k8s 启动起来才能正常。就卡住了。 当然一般情况 k8s 的这些 docker 镜像在本地是有的,如果没有也可以从公网拉取。 极端情况下,如果是在离线环境,或者本地的镜像由于一些原因丢失或损坏了,可能会有麻烦。