无极4《Q2404-8305 》编写软件是困难的。平衡运输需求和保证质量带来了挑战。此外,您还必须注意保持代码的可读性和可维护性。
这并不容易。
除了单纯的开发之外,维护一个运行中的应用程序仍然比较困难。为用户服务需要及时响应问题。为了应对问题,你需要知道它们的存在。简而言之:编写软件是困难的;运行软件通常比较困难。
这就是我们监控的原因。
当您的系统表现出需要纠正的行为时,您需要了解它。监控是任何关心持续为用户服务的组织的生命线。在过去,监视可以交给操作团队——手工工作和基本工具——他们监视单个或少数服务器上的日志。但我们已经不再生活在那个世界里了。
快进到今天。在现代组织中,云本地部署、无服务器平台和容器编配引擎使得系统组件的类型和数量激增,从而可能产生问题。这为用户和专业技术人员提供了很棒的体验,但也使得有效监控变得更加困难。
在使用Kubernetes时,监视需要预先考虑、努力和优秀的工具,以确保您能够看到系统中正在发生的事情。当问题浮出水面时,提醒和自我修复对你的成功至关重要。
在接下来的部分中,无极4注册登录网址我们将探索用于监视通过Kubernetes部署的容器工作负载的选项,以及您必须做出的决策。
提示:使用Stackify Retrace立即查找应用程序错误和性能问题
通过集成错误、日志和代码级性能洞察,很容易对代码进行故障排除和优化。
今天免费试用
可见性
要了解系统中发生了什么,第一步是公开指标和日志。可见性是必要的,但对监视来说还不够。不过,这只是个开始。没有可见性,就不可能进行监视。
使用Kubectl
Kubernetes可见性的起点是您已经用于与集群交互的命令行工具。Kubectl是一种方便的工具,您可以在工作站上使用它查看和管理容器、pods、部署、服务以及Kubernetes中的所有资源的状态。它是你的第一个也是最好的朋友。
Kubectl允许您向集群上的REST API发出命令。kubectl命令是这样的:
kubectl [command] [TYPE] [NAME] [flags]
将kubectl用于可见性的一个示例是列出集群中的部署。
kubectl get deployments
这个命令将显示部署,每个部署预期有多少pods,有多少已经就绪和可用,以及部署活动了多长时间。
您可以通过kubectl发出的命令非常丰富且数量众多。这只是许多查询集群以查看发生了什么情况的方法的一个小开端。有关如何使用kubectl的更多信息,请参阅Kubernetes文档。
使用kubectl深入了解给定pod中给定容器中发生的事情的另一种方法是使用logs命令。它的形式是:
kubectl logs pod-name container-name
与Linux/Unix中的tail命令一样,您可以对kubectl日志使用-f (follow)来流化日志输出。对于开发人员和操作专业人员来说,这是一种熟悉的观察事件进展的方式。它对于故障诊断很有用,但通常过于狭窄,并且只关注单个pods和容器,无法用于一般的监控策略。
使用仪表板
很高兴您可以使用kubectl检查Kubernetes资源的状态。还有其他可见性选项。仪表板是用于Kubernetes集群的web用户界面。它不是通过设置Kubernetes集群自动部署的,但是很容易添加,您可以用Dashboard做很多kubectl可以做的事情。它并没有取代命令行用户界面,特别是对于自动部署和管理来说,无极四荣耀注册但是它提供了另一个具有良好可视性和可访问性的选项。
通常,仪表板改变Kubernetes资源状态的功能最好不要使用。您希望由自动化部署管道创建、更新和管理不可变的服务和部署。仪表盘允许您更改内容,但并不意味着您应该这样使用它。
尽管如此,Dashboard还是有用的。当您想要查看集群、节点、存储和工作负载状态的可视化表示时,它是一个很好的资源,可以从整体上查看集群,并能够深入了解特定资源的更详细信息。
探针
的理由选择Kubernetes作为平台来运行你的集装箱工作负载的方式需要你想要的系统状态和使它成为现实。您使用清单来描述希望系统如何运行,Kubernetes负责实现该状态。
但是,要知道您的应用程序在Kubernetes创建的容器中运行良好,您需要提供一些帮助。Kubernetes自动监视容器的运行状况。当您指定您想要在pods中运行的容器时,您可以在它们上指定探测。
探测是对容器的测试。它们有三种类型:活跃、准备就绪和启动。启动探测在大多数情况下并不有趣,您需要了解的是活性和准备性探测。您可以使用探测器在容器内发出命令或HTTP请求(或其他网络连接操作),以验证容器正在运行并准备接受工作。
这是监视的基础——Kubernetes为您进行监视,以确保您有健康的容器为您工作。
监控应用程序
追溯
Stackify Retrace可以帮助您监视工作负载。它在大多数环境下都能工作。库伯涅茨也不例外。通过按照说明将Retrace安装到集群中,您将获得对部署kubernetes的系统中所发生的一切所需的所有可见性。此外,您还可以在一个地方查看整个集群的指标、日志和应用程序性能监视指标。
您可以使用许多选项和各种各样的工具来监视您的系统。Retrace的突出之处在于,它为您提供了一个方便的仪表板、节点和容器的机器特征、结构化日志记录和性能跟踪。由于它可以将多个源的监视信息导入到一个仪表板中,因此它非常适合Kubernetes。
云提供商
大多数组织将通过大型公共云计算提供商来运行Kubernetes。这些巨头都提供了大量的工具来监视节点和集群本身,无极四注册以及应用程序性能和日志记录。除了在集群中使用Retrace之外,您还需要熟悉云提供商提供的可用选项。
出去监视
您必须知道在您部署的系统中发生了什么。当问题出现时,他们需要修复,而修复需要在用户完全注意到问题之前出现。
监控是软件系统可靠操作的核心。在使用Kubernetes时,监视与在任何其他类型的平台中一样重要。尽管监视在所有部署模型中都同样重要,但是Kubernetes集群由于资源的动态特性而带来了一些独特的挑战。
请记住,在使用Kubernetes时,有一些有用的工具可以弥补这一差距,使监视变得愉快。确保你知道并利用:
kubectl,优秀的Kubernetes命令行界面
仪表板,Kubernetes的web用户界面
你的容器的活跃性和准备性探测器
应用程序性能监控解决方案,如Retrace
云供应商提供的工具和仪表板
不过,监控不仅仅是工具。这也是一种心态。良好的监控要求您关心为用户发生的事情,并尽可能为用户提供最佳的体验。有了构建像Kubernetes这样优秀的系统和工具的愿望,您就可以开始创造价值了。