摘要:進入,在任意一個地方創建一個文件如編輯這個,我們只需簡單寫三個字符串重新啟動,啟動時加入這個參數在其他機子上,我們再次執行命令,并加上是不是成功了
1.證書
之前的文章里我們為了成功使用heapster而自建了證書:進入master機器的/var/run/kubernetes/目錄,執行如下的幾個命令:
openssl genrsa -out ca.key 2048 openssl req -x509 -new -nodes -key ca.key -subj "/CN=abc.com" -days 5000 -out ca.crt openssl genrsa -out server.key 2048 openssl req -new -key server.key -subj "/CN=kubernetes" -out server.csr openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 5000
其中第一個subj里/CN可以隨便寫一個,而第二個subj中的/CN必須是apiserver所在機器的hostname(如果僅用于內部的service,這里可以填kubernetes),這里建議兩個/CN不要相同,親測相同的情況下證書是簽名無效的。在該機器上執行:
echo $HOSTNAME
就知道要寫什么了。
apiserver的啟動參數中加入:
--admission_control=ServiceAccount(加入這個參數后,k8s會給每個namespace都設置至少一個secret,secret作為一個存儲介質,可以存儲證書,token,甚至配置文件) --client_ca_file=/var/run/kubernetes/ca.crt(加入這個參數后,每個namespace的默認的secret中都會記錄ca.crt) --tls-private-key-file=/var/run/kubernetes/server.key --tls-cert-file=/var/run/kubernetes/server.crt
controller-manager的啟動參數中加入:
--service_account_private_key_file=/var/run/kubernetes/server.key --root-ca-file="/var/run/kubernetes/ca.crt"
我們要實現的目的是在任意一臺機器上(ping得到master)可以執行apiserver的https API。這里我們必須:
1.將ca.crt復制到該機器上;
2.在該機器上添加一條master機器的hostname到其IP的hosts。
這種情況下,我們訪問https的api:
curl --cacert ca.crt -X GET https://vm-56-65:6443/api/v1/namespaces/default/pods -v
會提示:
unauthorized.
這說明我們還需要token。
2.tokentoken的形式有多種,可以參考這兩篇:
http://wangzhezhe.github.io/b...
http://segmentfault.com/a/119...
這里就介紹最簡單的一種。
進入master,在任意一個地方創建一個token文件如:
/etc/kubernetes.io/heapster/token
編輯這個token,我們只需簡單寫三個字符串:
huang123,huang,huang
重新啟動apiserver,啟動時加入這個參數:
--token_auth_file=/etc/kubernetes.io/heapster/token
在其他機子上,我們再次執行curl命令,并加上-H:
curl --cacert ca.crt -X GET https://vm-56-65:6443/api/v1/namespaces/default/pods -H "Authorization: Bearer huang123" -v
是不是成功了?
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/32429.html
摘要:的服務治理平臺發源于早期的個人項目。客戶端發現模式要求客戶端負責查詢注冊中心,獲取服務提供者的列表信息,使用負載均衡算法選擇一個合適的服務提供者,發起接口調用請求。系統和系統之間,少不了數據的互聯互通。隨著微服務的流行,一個系統內的不同應用進行互聯互通也是常態。 PowerDotNet的服務治理平臺發源于早期的個人項目Power.Apix。這個項目借鑒了工作過的公司的服務治理方案,站在...
摘要:舉個例子,我們在這種狀態下創建一個,然后執行在中會發現有了字段,并且裝載了一個是的,這個就是我們這個下的。 注:本案例在我的部署環境下是可行的,但不保證在所有環境下都可行。我盡可能講得直白而詳細,因為我自己也才剛開始接觸,已經做過深入研究的可以瀏覽,若有什么錯誤,煩請指正,感激不盡! 我的環境: K8S1.0.0+flannel+docker1.6的分布式集群。 這里先不贅述fla...
摘要:舉個例子,我們在這種狀態下創建一個,然后執行在中會發現有了字段,并且裝載了一個是的,這個就是我們這個下的。 注:本案例在我的部署環境下是可行的,但不保證在所有環境下都可行。我盡可能講得直白而詳細,因為我自己也才剛開始接觸,已經做過深入研究的可以瀏覽,若有什么錯誤,煩請指正,感激不盡! 我的環境: K8S1.0.0+flannel+docker1.6的分布式集群。 這里先不贅述fla...
摘要:異步加載異步加載指的是為指定加載的回調函數,在的主體資源加載完畢之后,將自動調用該回調函數。 幾種加載js的方式 同步加載 異步加載 延遲加載 同步加載 用的最多的一種方式,又稱阻塞模式,會阻止瀏覽器的后續處理,停止后續的解析,只有當當前加載完成,才能進行下一步操作。所以默認同步執行才是安全的。但這樣如果js中有輸出document內容、修改dom、重定向等行為,就會造成頁面堵塞。...
閱讀 1854·2021-11-25 09:43
閱讀 1493·2021-09-02 15:21
閱讀 3457·2019-08-30 15:52
閱讀 1503·2019-08-30 12:48
閱讀 1299·2019-08-30 10:57
閱讀 2933·2019-08-26 17:41
閱讀 682·2019-08-26 11:59
閱讀 1372·2019-08-26 10:41