使用Eclipse Che v6.0.0 + OCP v3.6,创建工作区时,引导程序已损坏

时间:2018-02-26 08:01:04

标签: openshift eclipse-che

我通过与以下问题相同的程序构建了Eclipse Che v6.0.0 + OCP v3.6(v3.6.173.0.96)的环境。
Workspace of MultiUser Eclipse-che can not be started on OCP

我确认可以使用OCP 3.6启动Workspace pod。 但是,工作区屏幕无法在浏览器中显示。 浏览器中将显示以下消息。

Could not start workspace wksp-vryu. Reason: Bootstrapping of machine dev-machine reached timeout

在OpenShift的浏览器控制台中,当我使用Workspace pod执行以下命令时,我注意到引导程序大小错误。
执行命令的结果如下。

$ cd /tmp/bootstrapper
$ ls -al
total 32
drwxr-xr-x. 2 user root    69 Feb 26 05:32 .
drwxrwxrwt. 4 root root    49 Feb 26 05:32 ..
-rwxr-xr-x. 1 user root   250 Feb 26 05:32 bootstrapper
-rw-r--r--. 1 user root   100 Feb 26 05:32 bootstrapper.log
-rw-r--r--. 1 user root 23906 Feb 26 05:32 config.json

引导程序的内容如下:

$ cat bootstrapper                                                                                                                                                     
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">                                                                                                                     
<html><head>                                                                                                                                                           
<title>404 Not Found</title>                                                                                                                                           
</head><body>                                                                                                                                                          
<h1>Not Found</h1>                                                                                                                                                     
<p>The requested URL /agent-binaries/linux_amd64/bootstrapper/bootstrapper was not found on this server.</p>                                                           
</body></html>                                                                                                                                                         

在工作区pod中,我们使用Che Server的pod的环境变量中的CHE_INFRA_KUBERNETES_BOOTSTRAPPER_BINARY__URL手动执行wget命令。我可以成功下载boostrapper。

$ wget http://<My Route name>-<My Project Name>.<My Prefix>/agent-binaries/linux_amd64/bootstrapper/bootstrapper
--2018-02-26 06:19:25--  http://<My Route name>-<My Project Name>.<My Prefix>/agent-binaries/linux_amd64/bootstrapper/bootstrapper
Resolving <My Route name>-<My Project Name>.<My Prefix> (<My Route name>-<My Project Name>.<My Prefix>)... <Che Server's Node IP>
Connecting to <My Route name>-<My Project Name>.<My Prefix> (<My Route name>-<My Project Name>.<My Prefix>)|<Che Server's Node IP>|:80... connected.
HTTP request sent, awaiting response... 200
Length: 6146825 (5.9M)
Saving to: ‘bootstrapper’

bootstrapper        100%[===================>]   5.86M  --.-KB/s    in 0.08s

2018-02-26 06:19:26 (73.1 MB/s) - ‘bootstrapper’ saved [6146825/6146825]

$ ls -l
total 6032
-rw-r--r--. 1 user root 6146825 Jan 31 15:07 bootstrapper
-rw-r--r--. 1 user root      49 Feb 26 06:15 bootstrapper.log
-rw-r--r--. 1 user root   23906 Feb 26 06:15 config.json

我该如何解决这个问题呢? 如果有信息需要帮助,请告诉我。

1 个答案:

答案 0 :(得分:0)

CHE_INFRA_KUBERNETES_BOOTSTRAPPER_BINARY__URL仅在Eclipse Che 6.1.0中引入。相关PR https://github.com/eclipse/che/pull/8559。 因此,Che服务器代码需要CHE_INFRA_OPENSHIFT_BOOTSTRAPPER_BINARY__URL并且它的值不正确。

我认为您使用的脚本与6.0.0 Che不兼容。请尝试部署Che 6.1.0。建议使用与Che具有相同版本的部署脚本。因此,请尝试使用checkout标记。