OpenShift-CLI


OpenShift CLI 用于从命令行管理 OpenShift 应用程序。OpenShift CLI 能够管理端到端应用程序生命周期。一般来说,我们会使用 OC(OpenShift 客户端)与 OpenShift 进行通信。

OpenShift CLI 设置

为了在不同的操作系统上设置 OC 客户端,我们需要执行不同的步骤顺序。

适用于 Windows 的 OC 客户端

步骤 1 - 从以下链接下载 oc cli https://github.com/openshift/origin/releases/tag/v3.6.0-alpha.2

步骤 2 - 将包解压缩到计算机上的目标路径上。

步骤 3 - 编辑系统的路径环境变量。

C:\Users\xxxxxxxx\xxxxxxxx>echo %PATH%

C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\Program Files 
(x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Program Files 
(x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;

C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\
v1.0\;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files 
(x86)\ATI Technologies\ATI.ACE\C

ore-Static;C:\Program Files\Intel\Intel(R) Management Engine 
Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine 
Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;

步骤 4 - 验证 Windows 上的 OC 设置。

C:\openshift-origin-client-tools-v3.6.0-alpha.2-3c221d5-windows>oc version
oc v3.6.0-alpha.2+3c221d5
kubernetes v1.6.1+5115d708d7
features: Basic-Auth

适用于 Mac OS X 的 OC 客户端

我们可以将 Mac OS 安装二进制文件下载到与 Windows 相同的位置,然后将其解压缩到某个位置,并在环境 PATH 变量下设置可执行文件的路径。

或者

我们可以使用 Home brew 并使用以下命令进行设置。

$ brew install openshift-cli

适用于 Linux 的 OC 客户端

在同一页面下,我们有Linux安装的tar文件,可以用来安装。稍后,可以设置一个路径变量指向该特定的可执行位置。

https://github.com/openshift/origin/releases/tag/v3.6.0-alpha.2

使用以下命令解压缩 tar 文件。

$ tar –xf < path to the OC setup tar file >

运行以下命令检查身份验证。

C:\openshift-origin-client-tools-v3.6.0-alpha.2-3c221d5-windows>oc login
Server [https://localhost:8443]:

CLI 配置文件

OC CLI 配置文件用于管理多个 OpenShift 服务器连接和身份验证机制。该配置文件还用于存储和管理多个配置文件以及在它们之间进行切换。正常的配置文件如下所示。

$ oc config view
apiVersion: v1
clusters:
   - cluster:
      server: https://vklnld908.int.example.com
   name: openshift
   
contexts:
- context:
   cluster: openshift
   namespace: testproject
   user: alice
   name: alice
current-context: alice
kind: Config
preferences: {}
users:
- name: vipin
   user:
      token: ZCJKML2365jhdfafsdj797GkjgjGKJKJGjkg232

设置 CLI 客户端

用于设置用户凭证

$ oc config set-credentials <user_nickname>
[--client-certificate = <path/to/certfile>] [--client-key=<path/to/keyfile>]
[--token = <bearer_token>] [--username = <basic_user>] [--password = <basic_password>]

用于设置集群

$ oc config set-cluster <cluster_nickname> [--server = <master_ip_or_fqdn>]
[--certificate-authority = <path/to/certificate/authority>]
[--api-version = <apiversion>] [--insecure-skip-tls-verify = true]

例子

$ oc config set-credentials vipin --token = ZCJKML2365jhdfafsdj797GkjgjGKJKJGjkg232

用于设置上下文

$ oc config set-context <context_nickname> [--cluster = <cluster_nickname>]
[--user = <user_nickname>] [--namespace = <namespace>]

CLI 配置文件

在单个 CLI 配置文件中,我们可以有多个配置文件,其中每个配置文件都有不同的 OpenShift 服务器配置,稍后可用于在不同的 CLI 配置文件之间切换。

apiVersion: v1
clusters: --→ 1
- cluster:
   insecure-skip-tls-verify: true
   server: https://vklnld908.int.example.com:8443
   name: vklnld908.int.example.com:8443
- cluster:
   insecure-skip-tls-verify: true
   server: https://vklnld1446.int.example.com:8443
   name: vklnld1446.int.example.com:8443
contexts: ---→ 2
- context:
   cluster: vklnld908.int.example.com:8443
   namespace: openshift-project
   user: vipin/vklnld908.int.example.com:8443
   name: openshift-project/vklnld908.int.example.com:8443/vipin
- context:
   cluster: vklnld908.int.example.com:8443
   namespace: testing-project
   user: alim/vklnld908.int.example.com:8443
   name: testproject-project/openshift1/alim
current-context: testing-project/vklnld908.int.example.com:8443/vipin - 3
kind: Config
preferences: {}

users:
- name: vipin/vklnld908.int.example.com:8443
user: ---→ 4
   token: ZCJKML2365jhdfafsdj797GkjgjGKJKJGjkg232

在上面的配置中,我们可以看到它从集群开始分为四个主要部分,集群定义了两个OpenShift主机实例。第二个上下文部分定义了两个名为 vipin 和 alim 的上下文。当前上下文定义当前正在使用哪个上下文。如果我们更改此处的定义,则可以将其更改为其他上下文或配置文件。最后,定义了用户定义及其身份验证令牌,在我们的例子中是 vipin。

如果我们想检查当前使用的配置文件,可以使用 -

$ oc status
oc status
In project testing Project (testing-project)
$ oc project
Using project "testing-project" from context named "testing-
project/vklnld908.int.example.com:8443/vipin" on server "https://vklnld908.int.example.com:8443".

如果我们想切换到其他 CLI,可以使用以下命令从命令行完成。

$ oc project openshift-project
Now using project "Openshift-project" on server "
https://vklnld908.int.example.com:8443".

使用上面的命令,我们可以在配置文件之间切换。在任何时候,如果我们希望查看配置,我们可以使用 $ oc config view 命令。