错误:无法从服务器读取版本

时间:2015-07-22 20:30:04

标签: kubernetes

尝试在本地运行<ul id="input_9_34" class="gfield_checkbox"> <li class="gchoice_9_34_1"> <input id="HI1" type="checkbox" tabindex="22" value="10'x10'|950" data-price="950" data-qty="Q1" name="HI1" onChange="updateTotal();"> <label id="label_9_34_1" for="HT1" price=" +$950.00"> 10'x10' inline <span class="ginput_price"> +$950.00</span> </label> | Quantity: <input type="text" name="Q" id="Q1" value="0" class="quantity" onChange="updateTotal();"> </li> <li class="gchoice_9_34_2"> <input id="HI2" type="checkbox" tabindex="23" value="10'x10'|975" data-price="975" data-qty="Q2" name="HI2" onChange="updateTotal();"> <label id="label_9_34_2" for="HT2" price=" +$975.00"> 10'x10' - 1 corner (very limitied supply) <span class="ginput_price"> +$975.00</span> </label> | Quantity: <input type="text" name="Q" id="Q2" value="0" class="quantity" onChange="updateTotal();"> </li> <li class="gchoice_9_34_3"> <input id="HI3" type="checkbox" tabindex="24" value="10'x10'|1000" data-price="1000" data-qty="Q3" name="HI3" onChange="updateTotal();"> <label id="label_9_34_3" for="HT3" price=" +$1,000.00"> 10'x10' - 2 corner (very limitied supply) <span class="ginput_price"> +$1,000.00</span> </label> | Quantity: <input type="text" name="Q" id="Q3" value="0" class="quantity"> </li> <li class="gchoice_9_34_4"> <input id="HI4" type="checkbox" tabindex="25" value="10'x15'|1435" data-price="1435" data-qty="Q4" name="HI4" onChange="updateTotal();"> <label id="label_9_34_4" for="HT4" price=" +$1,435.00"> 10'x15' - 1 corner or inline <span class="ginput_price"> +$1,435.00</span> </label> | Quantity: <input type="text" name="Q4" id="Q4" value="0" class="quantity"> </li> <li class="gchoice_9_34_5"> <input id="HI5" type="checkbox" tabindex="26" value="10'x20'|1900" data-price="1900" data-qty="Q5" name="HI5" onChange="updateTotal();"> <label id="label_9_34_5" for="HT5" price=" +$1,900.00"> 10'x20' - 1 corner or inline <span class="ginput_price"> +$1,900.00</span> </label> | Quantity: <input type="text" name="Q5" id="Q5" value="0" class="quantity"> </li> <li class="gchoice_9_34_6"> <input id="HI6" type="checkbox" tabindex="27" value="10'x30'|2850" data-price="2850" data-qty="Q6" name="HI6" onChange="updateTotal();"> <label id="label_9_34_6" for="HT6" price=" +$2,850.00"> 10'x30' - 1 corner or inline <span class="ginput_price"> +$2,850.00</span> </label> | Quantity: <input type="text" name="Q6" id="Q6" value="0" class="quantity"> </li> <li class="gchoice_9_34_7"> <input id="HI7" type="checkbox" tabindex="28" value="20'x20'|3800" data-price="3800" data-qty="Q7" name="HI7" onChange="updateTotal();"> <label id="label_9_34_7" for="HT7" price=" +$3,800.00"> 20'x20' - 2 corner endcap <span class="ginput_price"> +$3,800.00</span> </label> | Quantity: <input type="text" name="Q7" id="Q7" value="0" class="quantity"> </li> <li class="gchoice_9_34_8"> <input id="HI8" type="checkbox" tabindex="29" value="20'x20'|4000" data-price="4000" data-qty="Q8" name="HI8" onChange="updateTotal();"> <label id="label_9_34_8" for="HT8" price=" +$4,000.00"> 20'x20' - 4 corner island <span class="ginput_price"> +$4,000.00</span> </label> | Quantity: <input type="text" name="Q8" id="Q8" value="0" class="quantity"> </li> <li class="gchoice_9_34_9"> <input id="HI9" type="checkbox" tabindex="30" value="20'x30'|5650" data-price="5650" name="HI9" onChange="updateTotal();"> <label id="label_9_34_9" for="HT9" data-qty="Q9" price=" +$5,650.00"> 20'x30' - 2 corner encap <span class="ginput_price"> +$5,650.00</span> </label> | Quantity: <input type="text" name="Q9" id="Q9" value="0" class="quantity"> </li> </ul> Total Price: <input name="price" id="price" type="text" readonly="readonly" class="total">时出现以下错误。

kubectl

我知道这与kubectl配置有关,但我对如何解决它感到茫然。 2天前,我正在尝试使用GKE并确实将配置设置为指向GCE。我尝试删除此配置文件,然后获取Vagrant with CoreOS locally。这个error: couldn't read version from server: Get http://localhost:8080/api: dial tcp 127.0.0.1:8080: connection refused引发了一个类似的错误,抱怨无法连接。

审核vagrant up的适当方法是什么,以便它可以连接到API并返回信息?

5 个答案:

答案 0 :(得分:13)

tl; dr gcloud container get-credentials --cluster=CLUSTER_ID --zone=YOURZONE

所以有一点背景:kubectl工具是由谷歌开发的,但实际上并没有直接集成到谷歌云中,当你告诉它安装组件时,谷歌云只是帮助你获得兼容的版本。 / p>

如果您获得Get http://localhost:8080/api: dial tcp 127.0.0.1:8080: connection refused,可能是因为kubectl工具根本没有配置或配置错误。我相信它所做的是假设你只在某种程度上在本地设置了kubernetes,在这种情况下你不会这样做,因为它都在谷歌云上(因此是神秘的错误)。 / p>

您可以通过运行kubectl config view来验证您的kubectl配置错误。如果配置正确,您应该看到集群中的几个条目,带有IP地址,在用户中,您应该看到每个项目的用户,等等。如果您没有看到任何排序(即空集群,和空用户)然后你配置错误;如果您没有看到正在尝试处理的特定群集的条目,您还会遇到神秘的问题。

令人讨厌的是,很多gcloud命令会默默地为你自动配置它,所以如果你按照像hello wordpress教程这样的东西看起来你不必这样做,并且某种程度上kubectl与gcloud进行通信,但没有任何类似的事情发生。失去这种配置也很容易。

告诉gcloud给你kubectl配置运行以下内容:

gcloud container get-credentials --cluster=CLUSTER_ID --zone=YOURZONE

对于群集ID运行gcloud container clusters list

Zone is&#34; europe-west1-d&#34;或者你选择的任何东西。

答案 1 :(得分:6)

以上解决方案不再有效。您需要执行以下操作:

gcloud container clusters get-credentials <cluster-name> \
    [--zone=<zone-of-cluster> --project=<project-id>]

答案 2 :(得分:0)

我正在使用Google容器引擎(GKE)并且也遇到了这个错误。就我而言,这是因为我忘了先创建一个容器集群。

如果您create a cluster using the gcloud command,它会为您设置配置。

gcloud container clusters create my-cluster-name

答案 3 :(得分:0)

在Ubuntu Trusty上使用大多数默认配置进行本地部署时,我也遇到了此错误。原来api-server没有启动,因为有些bug DenyEscalatingExec特别适用于k8s v1.1.7中的ubuntu

https://github.com/kubernetes/kubernetes/issues/14474 https://github.com/kubernetes/kubernetes/issues/14627

我在执行~/kubernetes-1.1.7/cluster/ubuntu/config-default.sh

之前删除文件kube-up.sh中的指令,重建了没有它的群集
# Admission Controllers to invoke prior to persisting objects in cluster
export ADMISSION_CONTROL=NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,DenyEscalatingExec,SecurityContextDeny

DenyEscalatingExec需要从该行中删除,因此,在启动群集后,它不会成为/etc/default/kube-apiserver中的标记。

免责声明:我不确定DenyEscalatingExec的作用,我发现这对我解决这个特殊问题很有帮助。

答案 4 :(得分:-1)

这是不稳定的,只需参考documentation。目前正在......

public static void printResults(NamingEnumeration<SearchResult> results)
            throws NamingException {
        while (results.hasMoreElements()) {
            SearchResult res = results.next();
            Attributes atbs = res.getAttributes();
            Attribute nameAttr = atbs.get("cn");
            String name = (String) nameAttr.get();

            Attribute descriptionAtr = atbs.get("description");
            String description = (String) descriptionAtr.get();
            System.out.println(description);

            System.out.println("Name is :" + name + ",description is :"
                    + description);

        }
    }

/* Get all people whose sn is not equal to Kumaran */
    public static void getAllExcludeKumaran() throws NamingException {
        SearchControls searcCon = new SearchControls();
        searcCon.setSearchScope(SearchControls.SUBTREE_SCOPE);
        NamingEnumeration<SearchResult> results = context.search(
                "ou=people,dc=example,dc=com", "(!(sn=Kumaran))", searcCon);
        printResults(results);
    }