微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Kubernetes中使用curl发布请求获取shell?

如何解决如何在Kubernetes中使用curl发布请求获取shell?

我正在使用json创建一个pod规范,运行时将为我在底层节点上提供一个外壳,如下所示。

overrides=$(cat <<EOF
{
    "apiVersion": "v1","kind": "Pod","Metadata": {
      "name": "admin-shell"
    },"spec": {
      "containers": [
        {
          "name": "admin-shell","securityContext": {
          "privileged": true
          },"image": "alpine:latest","args": ["chroot","/kdet","/bin/bash"],"stdin": true,"stdinOnce": true,"tty": true,"volumeMounts": [{
            "name": "kdet","mountPath": "/kdet"
          }]
      }],"volumes": [{
        "name": "kdet","hostPath": {
          "path": "/","type": "Directory"
        }
      }]        
    }
}
EOF
)

kubectl run --image alpine:latest --rm --restart=Never --overrides="$foo" -ti test
If you don't see a command prompt,try pressing enter.
[root@admin-shell /]# exit
exit
pod "admin-shell" deleted

但是,当我尝试使用带有保存在api.json中的配置的curl启动Pod时,正在创建Pod,但是我没有上一步中的外壳。

>curl -k $APISERVER/api/v1/namespaces/default/pods \
-XPOST -H 'Content-Type: application/json' \
[email protected] \
--header "Authorization: Bearer $TOKEN"

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2900    0  2250  100   650  13005   3757 --:--:-- --:--:-- --:--:-- 16763

{
  "phase": "Pending","qosClass": "BestEffort"
}

您能帮我如何使用curl取得外壳吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。