首页 > 其他分享 >推荐工具!使终端便于 DevOps 和 Kubernetes 使用

推荐工具!使终端便于 DevOps 和 Kubernetes 使用

时间:2023-08-14 10:36:05浏览次数:32  
标签:kubectl Git Kubernetes DevOps alias 终端 使用 工具

如果你熟悉 DevOps 和 Kubernetes 的使用,就会知道命令行界面(CLI)对于管理任务有多么重要。好在现在市面上有一些工具可以让终端在这些环境中更容易使用。在本文中,我们将探讨可以让工作流程简化的优秀工具,帮助你在 DevOps 和 Kubernetes 中自如地浏览终端。
 

Zsh

Zsh (Z Shell)是一款功能强大、高度可定制的命令行 shell 和终端模拟器,与 Bash 等传统 shell 相比,它具有更强的功能和更高的效率。Zsh 提供以下选项,因此深受开发人员和 DevOps 工程师的青睐。
 

ohmyzsh

Oh My Zsh 是一个开源、社区驱动的框架,用于管理 Zsh 配置。您可以使用curl 安装它,如下所示:

sh -c "$(curl -fsSL <https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh>)"

 

zsh-syntax-highlighting

zsh-syntx-highlighting 是 Zsh shell 的一个插件,可在输入时为命令及其参数提供实时语法高亮显示。它有助于直观地区分不同类型的命令、选项、路径和变量,从而更容易发现错误并理解终端中命令的结构。
 

请按安装指南进行操作:

https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md
 

这是我的终端在安装工具前后的样子:

安装前
 

安装后
 

zsh-autosuggestions

zsh-autosuggestions 是 Zsh shell 的一个有用插件,可在用户键入命令时提供智能命令建议。它会分析你的命令历史记录,并为完成命令提供预测性建议。
 

请参考安装指南:

https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md
 

这是我的终端在安装该工具前后的样子:

安装前
 

安装后

Terraform

如果你使用 Terraform 和 Terragrunt 作为基础架构代码工具,那么在使用 Terraform 和 Terragrunt 时,你可能会发现以下相关工具非常有用。
 

tfswitch and tgswitch

Tfswitch 和 tgswitch 是命令行工具,可简化不同版本的 Terraform 和 Terragrunt 基础设施即代码工具之间的切换。它们允许开发人员和操作人员针对不同的项目或环境轻松管理和切换不同版本的 Terraform 和 Terragrunt。
 

在 Mac 上,您可以按如下方式安装这些工具:

brew install warrensbox/tap/tfswitch
brew install warrensbox/tap/tgswitch

 

注意:在 Mac 上使用 Zsh 安装 Terraform 和 Terragrunt 时,若要使用 tfswitch 和 tgswitch,可能需要在 .zshrc 文件中添加以下一行。

export PATH=$HOME/bin:/usr/local/bin:$PATH

 

Infracost

Infracost 是一款功能强大的工具,可帮助您估算和跟踪 Terraform 等平台中基础设施即代码(IaC)的成本。通过分析基础架构配置文件,Infracost 可提供实时成本估算,让您做出明智的决策,并通过识别潜在的成本节约机会来优化云计算支出。
 

该工具还有一个 Visual Studio Code (VSCode) 扩展。
 

这就是我在一个项目中运行的结果:


 

TfSec

TFSec 是专为 Terraform 代码设计的安全扫描工具。它有助于识别代码基础架构中潜在的安全漏洞和违反最佳实践的行为,让你主动解决安全问题,确保符合行业标准和组织政策。
 

你可以在 Mac 上安装,如下所示:

brew install tfsec

 

这是在我的项目运行的结果:


 

Git

如果您使用 Git,这里我还将推荐一些工具能够让您的工作更加轻松便捷。
 

Git aliases

为 Git 使用别名有很多好处,包括通过减少重复输入冗长 Git 命令的需要来提高生产力和效率。如果你经常使用 Git,建议在 .zshrc 文件中定义常用 Git 命令的别名。下面是一个示例,可以帮助你开始使用 Git:

# Git aliases
alias gs='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
alias gpl='git pull'
alias gb='git branch'

 

通过在 shell 配置文件(如 .bashrc 或 .zshrc)中定义这些别名,只需键入别名而不是完整的 Git 命令就能执行常见操作,从而在日常 Git 工作流程中节省时间和精力。
 

GitLens

GitLens 是 VSCode 的一个有用的扩展,它在使用 Git 存储库时提供有价值的见解和附加功能。它使用户能够轻松跟踪更改、查看提交详细信息并直接在代码编辑器中了解代码作者身份,从而增强协作并更轻松地导航和探索项目历史记录。
 

在 Visual Studio Code 中启用 GitLens 扩展后,您将看到代码作者身份的清晰指示:


 

Git Graph

Git Graph 是 Visual Studio Code 的一个用户友好型扩展,能直观地显示 Git 仓库的提交历史。通过它,您可以轻松直观地查看分支、合并和提交情况,对项目的开发时间轴有一个有用的概览,并能更简单地浏览和理解 Git 仓库的结构。
 

Kubernetes

由于 Kubernetes 的复杂性,人们创建了许多额外的工具来帮助 DevOps 团队有效地利用它。这些工具旨在简化流程,让 DevOps 专业人员能够无缝地使用 Kubernetes 并优化他们的部署和管理任务。
 

Kubernetes aliases

就像为 Git 命令使用别名一样,为 Kubernetes 命令使用别名也有好处。别名能让 Kubernetes 命令的使用更简单、更高效,在与 Kubernetes 集群和资源交互时省时省力。
 

alias k='kubectl'
# For switching context between different clusters
alias kswitch-maryam='kubectl config use-context maryam'
alias kswitch-mary='kubectl config use-context mary'
alias kpod='kubectl get pods -A'
alias knode='kubectl get nodes'
alias kdesp='kubectl describe pod'
alias kdp='kubectl delete pod'
alias kgd='kubectl get deployments'

 

这些只列出了几个例子,你还可以根据常用的 Kubernetes 命令自定义别名。将这些别名添加到 shell 配置文件(如 .bashrc 或 .zshrc)中,就可以使用这些快捷方式快速、轻松地执行 Kubernetes 命令。
 

kube-ps1

Kube-ps1 可为您的命令提示符提供有关当前 Kubernetes 上下文的相关信息。在使用多个 Kubernetes 集群和管理不同集群上下文时十分有用。该工具直观地突出显示了活动集群上下文的详细信息,帮助用户避免潜在的错误,并在导航和与 Kubernetes 环境交互时更加清晰。
 

您可以按如下方式在 Mac 上安装它:

brew install kube-ps1

 

如果使用 Zsh,请确保在 .zshrc 文件中添加以下内容:

plugins=(
  kube-ps1
)
PROMPT='$(kube_ps1)'$PROMPT # or RPROMPT='$(kube_ps1)'

 

这就是该工具可视化当前活动上下文和命名空间的方式:


 

kubecolor

Kubecolor 是一个便捷易用的工具,通过颜色和格式增强 Kubernetes 命令的输出,使其更易于阅读和理解。Kubecolor 提高了可见性,并有助于在使用 Kubernetes 时快速识别重要信息。(这也是日常使用 Kubernetes 时的一个救星工具!)
 

在 Mac 上安装如下,并确保将第二行添加到 .zshrc 中,以便与 kubectl 自动完成功能配合使用:

brew install hidetatz/tap/kubecolor
# get zsh complete kubectl
source <(kubectl completion zsh)
alias kubectl=kubecolor
# make completion work with kubecolor
compdef kubecolor=kubectl

 

这里是一个说明该工具如何为 Kubernetes 命令的输出着色的示例:


 

kubectx + kubens

Kubectx + kubens 是管理 Kubernetes 上下文和命名空间的优秀工具。Kubectx 允许用户在不同的 Kubernetes 上下文之间切换,而 Kubens 则简化了特定上下文内的命名空间之间的切换,使得更轻松地使用多个集群并高效地组织资源。
 

K9s

K9s 是一款用户友好型命令行工具,为管理 Kubernetes 集群提供了一个可视化仪表盘。它提供了一个简单直观的界面,用于查看资源、pod、日志和事件并与之交互,使 DevOps 专业人员能更轻松地监控 Kubernetes 部署并排除故障。
 

k8s Lens

K8s Lens是一款用户友好型桌面应用程序,为管理和监控 Kubernetes 集群提供了图形界面。它提供了资源、pod 和节点的可视化表示,允许用户轻松浏览 Kubernetes 环境并与之交互,方便开发人员和管理员使用 Kubernetes。
 

popeye

Popeye 是一款好用的命令行工具,能分析 Kubernetes 集群,并就潜在问题或错误配置提供有价值的建议。它能扫描集群配置、命名空间、部署和 pod,找出违反最佳实践、资源效率低下和安全问题,帮助用户确保 Kubernetes 部署得到优化和良好维护。
 

以下是 Popeye 在扫描集群时提供的示例信息:


 

在 Mac 上安装该工具如下:

brew install derailed/popeye/popeye

 

Kube-shell

Kube-shell 是 Kubernetes CLI 的集成 shell。它提供友好的用户界面,可视化显示集群资源,允许用户轻松导航、监控和管理其 Kubernetes 部署,而无需依赖命令行界面。
 

Kube-Capacity

Kube-Capacity 是一款可让您深入了解 Kubernetes 集群的资源使用情况和容量的工具。它能帮助您了解集群资源是如何分配和利用的,让您能够优化资源分配、规划扩展,并确保 Kubernetes 环境中的高效资源管理。
 

参考链接:
https://awstip.com/tools-to-make-your-terminal-devops-and-kubernetes-friendly-64d27a35bd3f

标签:kubectl,Git,Kubernetes,DevOps,alias,终端,使用,工具
From: https://www.cnblogs.com/sealio/p/17627937.html

相关文章

  • 近源渗透之大白菜获取终端权限
    0x00实验环境攻击设备:usb(空的U盘)靶场:windows笔记本 0x01实验前提(1)制作U盘启动盘。到官网下载:https://www.dabaicai.com/(认准官网)  (2)安装完成后直接一键制作USB启动盘:选择装机版(1.2G)  (3)首先初始化U盘   (4)然后“一键制作USB启动盘”: (5)制作成功之后,就......
  • Docker与DevOps的无敌组合,引爆你的创新潜能
    ......
  • 更现代的终端工具 Wrap
    Warp:Yourterminal,reimagined编辑体验更好,是文本编辑器,而不是命令行。功能丰富,引入了block的概念(notion无处不在的感觉),可以基于命令行与输出,扩展更多功能支持AI辅助(这年头的新工具,AI已经是起步价了吗)更详细的说明,可以直接看首页的视频介绍不过,一点遗憾的是,目前只......
  • 小版本更新kubernetes
    小版本更新kubernetes背景最近一段时间躺平了没有更新我的博客文档。感谢各位小伙伴一直以来的支持。此脚本基于https://github.com/cby-chen/Kubernetes/仓库内的安装部署文档。此脚本仅会升级k8s相关组件其他组件不进行升级。使用此脚本务必是使用该文档进行部署的集群......
  • 小版本更新kubernetes
    小版本更新kubernetes背景最近一段时间躺平了没有更新我的博客文档。感谢各位小伙伴一直以来的支持。此脚本基于https://github.com/cby-chen/Kubernetes/仓库内的安装部署文档。此脚本仅会升级k8s相关组件其他组件不进行升级。使用此脚本务必是使用该文档进行部署的集群......
  • Mac终端光标移动快捷键
    Mac终端光标移动快捷键记录,供自己使用操作快捷键移动光标至行首CTRL+A第一次按时,移动光标至行首;再次按时,回到原有位置CTRL+X移动光标至行尾CTRL+E光标向左移动一个字符CTRL+B光标向左移动一个单词ESC+B光标向右移动一个字符CTRL+F光标向右移......
  • Mac下终端密钥登录linux服务器
    通常我们登录Linux有两种方法:密码或密钥密码登录每次都要输入用户名密码比较麻烦,而使用密钥则可以避免这个问题一、创建密钥对打开终端,输入以下命令ssh-keygen-trsa-C'[email protected]'-t指定密钥类型,默认即rsa,可以省略-C设置注释文字,比如你的邮箱或者服务......
  • 观察混合云环境中 Kubernetes 可观测性的 6 种有效策略
    在混合云环境中观察Kubernetes需要理解分布式系统的行为和性能。我下面这篇文章中的六个策略可以帮助实现这一目标。2023年,原生云应用和平台迅速增长。组织不断努力最大化其应用程序的潜力,确保无缝的用户体验,并推动业务增长。混合云环境的兴起和容器化技术(如Kubernetes)的采用,彻底改......
  • 外设移除区别/终端记录/重设密码/python测试/数据拷贝最大限度
    1.1【卸载】【弹出】【安全移除驱动器】区别【卸载】只是解除挂载(可以直接重新挂载)【弹出】弹出读卡器里面的存储卡(需要重新插入存储卡)【安全移除驱动器】断掉设备电源,移除设备(需要重新插入设备)1.2记录你的终端操作──script   (点击详细)如果过程不是很长,一屏以内的话一......
  • Linux终端命令行提示符PS1格式修改
    zsh先确定你是用的shell类型,运行echo$SHELL如果你使用的是zsh,那么修改/etc/zshrc其中有一行设置PS1的值的,修改为PS1="%n@%m%1~%#"其它的zsh中转义变量%T系统时间(时:分)%*系统时间(时:分:秒)%D系统日期(年-月-日)%n你的用户名%B-%b开始到结束使用粗体打印%......