MicroShift is Developer Preview software only.
For more information about the support scope of Red Hat Developer Preview software, see Developer Preview Support Scope.CLI 工具
了解如何使用 MicroShift 的命令行工具
摘要
第 1 章 红帽构建的 MicroShift CLI 工具 复制链接链接已复制到粘贴板!
用户在红帽使用 MicroShift 构建的同时构建、部署和管理应用程序和集群。
红帽构建的 MicroShift 可以使用不同的命令行界面(CLI)工具,通过允许用户从终端执行各种管理和开发操作来简化这些任务。这些工具提供简单的命令来管理部署,并与系统的每个组件交互。
除了内置的 microshift 命令类型和 Linux CLI 工具外,如果您已经熟悉了 OpenShift Container Platform 和 Kubernetes,可以使用带有启用命令子集的可选 OpenShift CLI (oc) 工具。
第 2 章 OpenShift CLI 入门 复制链接链接已复制到粘贴板!
要使用 OpenShift CLI (oc)工具,您必须独立于您的 {microshift-short} 安装下载并安装它。
2.1. 安装 OpenShift CLI 复制链接链接已复制到粘贴板!
您可以通过下载二进制文件或使用 Homebrew 来安装 OpenShift CLI (oc)。
2.1.1. 通过下载二进制文件安装 OpenShift CLI 复制链接链接已复制到粘贴板!
您可以安装 OpenShift CLI (oc)来使用命令行界面与红帽构建的 MicroShift 交互。您可以在 Linux、Windows 或 macOS 上安装 oc。
如果安装了旧版本的 oc,则无法使用 Red Hat build of MicroShift 4.12 中的所有命令。下载并安装新版本的 oc。
在 Linux 上安装 OpenShift CLI
您可以按照以下流程在 Linux 上安装 OpenShift CLI(oc)二进制文件。
红帽构建的 MicroShift 版本编号与 OpenShift Container Platform 版本号匹配。使用与 {microshift-short} 版本匹配的 oc 二进制文件,并具有适当的 RHEL 兼容性。
流程
- 导航到红帽客户门户网站上的 OpenShift Container Platform 下载页面。
- 从 产品变体 下拉列表中选择架构。
- 从 版本 下拉列表中选择适当的版本。
- 点 OpenShift v4.12 Linux Client 条目旁的 Download Now 来保存文件。
解包存档:
tar xvf <file>
$ tar xvf <file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
oc二进制文件放到PATH 中的目录中。要查看您的
PATH,请执行以下命令:echo $PATH
$ echo $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
安装 OpenShift CLI 后,可以使用 oc 命令:
oc <command>
$ oc <command>
在 Windows 上安装 OpenShift CLI
您可以按照以下流程在 Windows 上安装 OpenShift CLI(oc)二进制文件。
红帽构建的 MicroShift 版本编号与 OpenShift Container Platform 版本号匹配。使用与 {microshift-short} 版本匹配的 oc 二进制文件,并具有适当的 RHEL 兼容性。
流程
- 导航到红帽客户门户网站上的 OpenShift Container Platform 下载页面。
- 从 版本 下拉列表中选择适当的版本。
- 点 OpenShift v4.12 Windows Client 条目旁的 Download Now 来保存文件。
- 使用 ZIP 程序解压存档。
将
oc二进制文件移到PATH 中的目录中。要查看您的
PATH,请打开命令提示并执行以下命令:path
C:\> pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow
安装 OpenShift CLI 后,可以使用 oc 命令:
oc <command>
C:\> oc <command>
在 macOS 上安装 OpenShift CLI
您可以按照以下流程在 macOS 上安装 OpenShift CLI(oc)二进制文件。
红帽构建的 MicroShift 版本编号与 OpenShift Container Platform 版本号匹配。使用与 {microshift-short} 版本匹配的 oc 二进制文件,并具有适当的 RHEL 兼容性。
流程
- 导航到红帽客户门户网站上的 OpenShift Container Platform 下载页面。
- 从 版本 下拉列表中选择适当的版本。
- 点 OpenShift v4.12 macOS Client 条目旁的 Download Now 来保存文件。
- 解包和解压存档。
将
oc二进制文件移到 PATH 的目录中。要查看您的
PATH,请打开终端并执行以下命令:echo $PATH
$ echo $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
安装 OpenShift CLI 后,可以使用 oc 命令:
oc <command>
$ oc <command>
2.1.2. 使用 Homebrew 安装 OpenShift CLI 复制链接链接已复制到粘贴板!
对于 macOS,您可以使用 Homebrew 软件包管理器安装 OpenShift CLI(oc)。
先决条件
-
已安装 Homebrew(
brew)。
流程
运行以下命令来安装 openshift-cli 软件包:
brew install openshift-cli
$ brew install openshift-cliCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.3. 使用 RPM 安装 OpenShift CLI 复制链接链接已复制到粘贴板!
对于 Red Hat Enterprise Linux (RHEL),如果您的红帽帐户上已有有效的 MicroShift 订阅,您可以将 OpenShift CLI (oc)安装为 RPM。
先决条件
- 必须具有 root 或 sudo 权限。
流程
使用 Red Hat Subscription Manager 注册:
subscription-manager register
# subscription-manager registerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 获取最新的订阅数据:
subscription-manager refresh
# subscription-manager refreshCopy to Clipboard Copied! Toggle word wrap Toggle overflow 列出可用的订阅:
subscription-manager list --available --matches '*OpenShift*'
# subscription-manager list --available --matches '*OpenShift*'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在上一命令的输出中,找到红帽构建的 MicroShift 订阅的池 ID,并将订阅附加到注册的系统:
subscription-manager attach --pool=<pool_id>
# subscription-manager attach --pool=<pool_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 启用红帽构建 MicroShift 4.12 所需的存储库。
subscription-manager repos --enable="rhocp-4.12-for-rhel-8-x86_64-rpms"
# subscription-manager repos --enable="rhocp-4.12-for-rhel-8-x86_64-rpms"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意不支持将 OpenShift CLI(
oc)安装为 Red Hat Enterprise Linux(RHEL)9 的 RPM。您必须通过下载二进制文件来安装 OpenShift CLI for {op-system-base} 9。安装
openshift-clients软件包:yum install openshift-clients
# yum install openshift-clientsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
安装 CLI 后,就可以使用oc命令:
oc <command>
$ oc <command>
第 3 章 配置 OpenShift CLI 复制链接链接已复制到粘贴板!
根据您的偏好配置 oc 以使用它。
3.1. 启用 tab 自动完成功能 复制链接链接已复制到粘贴板!
您可以为 Bash 或 Zsh shell 启用 tab 自动完成功能。
3.1.1. 为 Bash 启用 tab 自动完成 复制链接链接已复制到粘贴板!
安装 OpenShift CLI (oc)后,您可以启用 tab 自动完成功能,以便在按 Tab 键时自动完成 oc 命令或建议选项。以下流程为 Bash shell 启用 tab 自动完成功能。
先决条件
-
已安装 OpenShift CLI (
oc)。 -
已安装软件包
bash-completion。
流程
将 Bash 完成代码保存到一个文件中:
oc completion bash > oc_bash_completion
$ oc completion bash > oc_bash_completionCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将文件复制到
/etc/bash_completion.d/:sudo cp oc_bash_completion /etc/bash_completion.d/
$ sudo cp oc_bash_completion /etc/bash_completion.d/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您也可以将文件保存到一个本地目录,并从您的
.bashrc文件中 source 这个文件。
开新终端时 tab 自动完成功能将被启用。
3.1.2. 为 Zsh 启用 tab 自动完成功能 复制链接链接已复制到粘贴板!
安装 OpenShift CLI (oc)后,您可以启用 tab 自动完成功能,以便在按 Tab 键时自动完成 oc 命令或建议选项。以下流程为 Zsh shell 启用 tab 自动完成功能。
先决条件
-
已安装 OpenShift CLI (
oc)。
流程
要在
.zshrc文件中为oc添加 tab 自动完成功能,请运行以下命令:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
开新终端时 tab 自动完成功能将被启用。
第 4 章 使用 oc 工具 复制链接链接已复制到粘贴板!
如果您已熟悉 OpenShift Container Platform 和 Kubernetes,可以使用可选的 OpenShift CLI (oc) 工具。
4.1. 关于 OpenShift CLI 复制链接链接已复制到粘贴板!
通过 OpenShift 命令行界面(CLI),oc 命令,您可以从终端部署和管理 MicroShift 项目的红帽构建。OpenShift CLI 在以下情况下是理想的选择:
- 直接使用项目源代码
- 编写红帽构建的 MicroShift 操作
- 管理项目,同时受带宽资源的限制
4.2. 在 Red Hat build of MicroShift 中使用 OpenShift CLI 复制链接链接已复制到粘贴板!
查看以下部分以了解如何使用 oc CLI 在红帽构建的 MicroShift 中完成常见任务。
4.2.1. 查看 pod 复制链接链接已复制到粘贴板!
使用oc get pods命令查看当前项目的 pod。
当您在 pod 中运行 oc 且没有指定命名空间时,默认使用 pod 的命名空间。
oc get pods -o wide
$ oc get pods -o wide
输出示例
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE cakephp-ex-1-build 0/1 Completed 0 5m45s 10.131.0.10 ip-10-0-141-74.ec2.internal <none> cakephp-ex-1-deploy 0/1 Completed 0 3m44s 10.129.2.9 ip-10-0-147-65.ec2.internal <none> cakephp-ex-1-ktz97 1/1 Running 0 3m33s 10.128.2.11 ip-10-0-168-105.ec2.internal <none>
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
cakephp-ex-1-build 0/1 Completed 0 5m45s 10.131.0.10 ip-10-0-141-74.ec2.internal <none>
cakephp-ex-1-deploy 0/1 Completed 0 3m44s 10.129.2.9 ip-10-0-147-65.ec2.internal <none>
cakephp-ex-1-ktz97 1/1 Running 0 3m33s 10.128.2.11 ip-10-0-168-105.ec2.internal <none>
4.2.2. 查看 pod 日志 复制链接链接已复制到粘贴板!
使用oc logs命令查看特定 pod 的日志。
oc logs cakephp-ex-1-deploy
$ oc logs cakephp-ex-1-deploy
输出示例
--> Scaling cakephp-ex-1 to 1 --> Success
--> Scaling cakephp-ex-1 to 1
--> Success
4.2.3. 列出支持的 API 资源 复制链接链接已复制到粘贴板!
使用oc api-resources命令查看服务器上支持的 API 资源列表。
oc api-resources
$ oc api-resources
输出示例
NAME SHORTNAMES APIGROUP NAMESPACED KIND bindings true Binding componentstatuses cs false ComponentStatus configmaps cm true ConfigMap ...
NAME SHORTNAMES APIGROUP NAMESPACED KIND
bindings true Binding
componentstatuses cs false ComponentStatus
configmaps cm true ConfigMap
...
4.3. 获得帮助 复制链接链接已复制到粘贴板!
您可以通过以下方式获得 CLI 命令和红帽构建的 MicroShift 资源的帮助信息。
使用
oc help --flag来获取有关特定 CLI 命令的信息:示例:获取
oc create命令的帮助信息oc create --help
$ oc create --helpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
oc explain命令查看特定资源的描述信息和项信息:示例:查看
Pod资源的文档oc explain pods
$ oc explain podsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.4. 红帽构建的 MicroShift 中的 oc 命令错误 复制链接链接已复制到粘贴板!
并非所有 OpenShift Container Platform CLI 工具(oc)命令都与 MicroShift 部署的红帽构建相关。当您使用 oc 对不受支持的 API 发出请求调用时,oc 二进制文件通常会生成有关无法找到资源的错误消息。
输出示例
例如,当运行以下 new-project 命令时:
oc new-project test
$ oc new-project test
可能会出现信息:
Error from server (NotFound): the server could not find the requested resource (get projectrequests.project.openshift.io)
Error from server (NotFound): the server could not find the requested resource (get projectrequests.project.openshift.io)
当 get projects 命令运行时,可以会产生另一个错误,如下所示:
oc get projects error: the server doesn't have a resource type "projects"
$ oc get projects
error: the server doesn't have a resource type "projects"
第 5 章 使用 oc 和 kubectl 命令 复制链接链接已复制到粘贴板!
Kubernetes 命令行界面(CLI)kubectl 可以用来对 Kubernetes 集群运行命令。因为 Red Hat build of MicroShift 是一个经过认证的 Kubernetes 发行版本,所以您可以使用 Red Hat build of MicroShift 附带的受支持的 kubectl 二进制文件,或使用 oc 二进制文件来获取扩展功能。
5.1. oc 二进制文件 复制链接链接已复制到粘贴板!
oc 二进制文件提供与 kubectl 二进制文件相同的功能,但它被扩展为原生支持额外的红帽构建的 MicroShift 功能,包括:
路由资源
Route资源对象特定于红帽构建的 MicroShift 发行版本,基于标准 Kubernetes 原语构建。附加命令
例如,借助附加命令
oc new-app可以更轻松地使用现有源代码或预构建镜像来启动新的应用程序。
如果安装了旧版本的 oc 二进制文件,则无法使用 Red Hat build of MicroShift 4.12 中的所有命令。如果需要最新的功能,您必须下载并安装与红帽构建的 MicroShift 服务器版本对应的 oc 二进制文件的最新版本。
非安全 API 更改至少涉及两个次发行版本(例如,4.1 到 4.2 到 4.3)来更新旧的 oc 二进制文件。使用新功能可能需要较新的 oc 二进制文件。一个 4.3 服务器可能会带有版本 4.2 oc 二进制文件无法使用的功能,而一个 4.3 oc 二进制文件可能会带有 4.2 服务器不支持的功能。
|
X.Y ( |
X.Y+N footnote:versionpolicyn[其中 N 是一个大于或等于 1 的数字] ( | |
| X.Y (Server) |
|
|
| X.Y+N footnote:versionpolicyn[] (Server) |
|
|
完全兼容。
oc 客户端可能无法访问服务器的功能。
oc 客户端可能会提供与要访问的服务器不兼任的选项和功能。
5.2. kubectl 二进制文件 复制链接链接已复制到粘贴板!
提供 kubectl 二进制文件的目的是为来自标准 Kubernetes 环境的新红帽构建的 MicroShift 用户或者希望使用 kubectl CLI 的用户支持现有工作流和脚本。kubectl 的现有用户可以继续使用二进制文件与 Kubernetes 原语交互,而无需更改红帽构建的 MicroShift 集群。
如果您下载了 oc 二进制文件,则 kubectl 二进制文件会包括在存档中。
如需更多信息,请参阅 kubectl 文档。
第 6 章 OpenShift CLI 命令参考 复制链接链接已复制到粘贴板!
本参考提供了 OpenShift CLI (oc) 命令的描述和示例命令。您必须具有 cluster-admin 或同等权限才能使用这些命令。
运行 oc adm -h 以列出所有管理员命令或运行 oc <command> --help 获取特定命令的更多详情。
使用 oc <command> --help 列出所有 oc 命令的详情。并非所有 oc 命令都适用于使用 MicroShift 的红帽构建。
6.1. oc command list for Red Hat build of MicroShift 复制链接链接已复制到粘贴板!
以下列出了几个 oc 命令示例,可用于管理、部署和观察红帽构建的 MicroShift 节点。
6.1.1. oc apply 复制链接链接已复制到粘贴板!
通过文件名或 stdin 将配置应用到资源
用法示例
6.1.2. oc delete 复制链接链接已复制到粘贴板!
通过文件名、stdin、资源和名称或者资源和标签选择器删除资源
用法示例
6.1.3. oc get 复制链接链接已复制到粘贴板!
显示一个或多个资源
用法示例