加入收藏 | 设为首页 | 会员中心 | 我要投稿 江门站长网 (https://www.0750zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 评论 > 正文

如何提升Kubernetes生产力?

发布时间:2021-04-22 11:18:52 所属栏目:评论 来源:互联网
导读:操作 Kubernetes 时,处理来自不同名称空间的资源,这也是一种很常见的做法。例如,你可能希望列出一个名称空间内的所有 Pod,随后检查另一个名称空间中的服务。此时我的做法是使用 Kubernetes CLI 所支持的 --namespace 标记。例如,若要查看名为 Test 的名

操作 Kubernetes 时,处理来自不同名称空间的资源,这也是一种很常见的做法。例如,你可能希望列出一个名称空间内的所有 Pod,随后检查另一个名称空间中的服务。此时我的做法是使用 Kubernetes CLI 所支持的 --namespace 标记。例如,若要查看名为 Test 的名称空间中的所有 Pod,可以运行 kubectl get pods -n test。默认情况下,如果不提供名称空间标记,将使用默认的 Kubernetes 名称空间,即 default。

这个默认值可以在 kubeconfig 文件中修改,例如我们可以将默认名称空间设置为 test、kube-system 或其他任何名称空间。这样在查询资源时就不需要使用 --namespace 标记了。不过更改默认值的命令略微繁琐:上述命令会更改 my-context 上下文的 Namespace 字段,将其改为 my-namespace。这也意味着,举例来说,如果切换到 my-context 随后运行 kubectl get pods,将只能看到 my-namespace 名称空间下的 Pod。

除了使用 kubectx,我们还可以使用一款名为 kubens 的工具,后者可以帮助我们列出并切换至不同名称空间。一种非常简单的技巧。操作 Kubernetes 过程中,我们可能需要频繁输入 kubectl,时间一长肯定会对输入全名的繁琐过程感到厌倦。虽然每次只需要输入七个字母,但多次频繁输入总归很麻烦。

此时的技巧是,为 kubectl 设置一个更简单的别名,例如 k问集群中的服务和 Pod 时,我们需要将其暴露出来,这样才可以从公网访问它们,或在本机和集群中运行的服务之间运行 Kube 代理或转发端口。

然而有时候我们可能并不想暴露任何服务或转发端口,而只需要运行某些非常简单的 Curl 命令。为此我会通过 Bash profile 加载一个函数,借此在集群内部使用 radial/busyboxplus:curl 镜像运行一个 Pod,通过这样的方式就可以访问终端,进而可以针对集群内部的服务和 IP 运行 Curl 命令。我将这个函数称之为 kbash,用法如下:上述命令提示符下,我可以针对内部的 Kubernetes DNS 名称或 IP 地址运行 Curl 命令。如果需要退出,只需要运行 exit 即可;如果需要重新连接到该 Pod,则可运行 kbash 连接到现有 Pod。同时我还将这个函数定义到了自己的 dotfiles 中。

5. 快速打开 Grafana/Jaeger/Kiali

如果打算使用 Istio 服务网格(Service mesh),那么可能还会用到 Grafana/Jaeger/Kiali。访问这些服务时必需首先获得 Pod 名称,随后针对该 Pod 设置端口转发,最后才能打开浏览器访问转发后的地址。每次需要输入的命令都很长:

(编辑:江门站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读