日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

kubernetes一步一步搭建与https访问

發布時間:2023/12/19 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 kubernetes一步一步搭建与https访问 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文鏈接:https://blog.csdn.net/xxb249/article/details/79437989

(1)kubernetes一步一步搭建

眾所周知,kubernetes(簡稱k8s)是用于管理docker集群的,最近一段時間一直在折騰環境問題,在此寫一篇博客,來幫助像我一樣的小白,避免走彎路。

一、環境

集群環境

角色

IP地址

版本號

Docker版本

系統版本

master

192.63.63.1/24

v1.9.1

17.12.0-ce

Centos7.1

node1

192.63.63.10/24

v1.9.1

17.12.0-ce

Centos7.1

node2

192.63.63.20/24

v1.9.1

17.12.0-ce

Centos7.1

Master節點必需組件

組件名稱

作用

版本號

etcd

非關系型數據庫

v1.9.1

kube-apiserver

核心組件,所有組件均與其通信,提供Http Restful接口

v1.9.1

kube-controller-manager

集群內部管理中心,負責各類資源管理,如RC,Pod,命名空間等

v1.9.1

kube-scheduler

調度組件,負責node的調度

v1.9.1

?Node節點必需組件

組件名稱

作用

版本號

kubelet

Node節點中核心組件,負責執行Master下發的任務

v1.9.1

kube-proxy

代理,負責kubelet與apiserver網絡。相當于負載均衡,將請求轉到后端pod中

v1.9.1

?二、安裝

? 在看《Kubernetes權威指南》通過yum install方式安裝。截止目前(2018-02-27)通過yum安裝的版本是1.5.2,而最新版本是1.9.1。兩個版本之間差異還是比較大,主要差異kubelet配置文件中不在支持api-server參數。

雖然yum安裝的不是最新版本,但是我們還是可以借鑒一些內容,例如systemd腳本服務,k8s各個配置文件。

2.0?安裝etcd

上面介紹了etcd是數據庫,用于存儲k8s相關數據。etcd并不屬于k8s組件,因此需要單獨安裝一下,安裝很方便,通過yum安裝即可。目前yum安裝的最新版本是3.2.11。

[root@localhost ~]# yum install etcd

2.1?下載并安裝

最新版本下載地址,只需下載Server Binaries。因為node節點必需的組件,也包含在這個Server Binaries中。下載完畢后,進行解壓并把可執行文件拷貝到系統目錄中

[root@localhost packet]# [root@localhost packet]# tar -zxf kubernetes-server-linux-amd64.tar.gz [root@localhost packet]# ls kubernetes kubernetes-server-linux-amd64.tar.gz opensrc [root@localhost packet]# [root@localhost packet]# cd kubernetes/server/bin [root@localhost bin]# cp apiextensions-apiserver cloud-controller-manager hyperkube kubeadm kube-aggregator kube-apiserver kube-controller-manager kubectl kubelet kube-proxy kube-scheduler mounter /usr/bin [root@localhost bin]

?

2.2?配置systemd服務

??下面這些文件均來自kubernetes1.5.2 rpm包,存放目錄為/usr/lib/systemd/system

[root@localhost system]# cat kube-apiserver.service [Unit] Description=Kubernetes API Server Documentation=https://github.com/GoogleCloudPlatform/kubernetes After=network.target After=etcd.service[Service] EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/apiserver User=kube ExecStart=/usr/bin/kube-apiserver \$KUBE_LOGTOSTDERR \$KUBE_LOG_LEVEL \$KUBE_ETCD_SERVERS \$KUBE_API_ADDRESS \$KUBE_API_PORT \$KUBELET_PORT \$KUBE_ALLOW_PRIV \$KUBE_SERVICE_ADDRESSES \$KUBE_ADMISSION_CONTROL \$KUBE_API_ARGS Restart=on-failure Type=notify LimitNOFILE=65536[Install] WantedBy=multi-user.target[root@localhost system]# [root@localhost system]# cat kube-controller-manager.service [Unit] Description=Kubernetes Controller Manager Documentation=https://github.com/GoogleCloudPlatform/kubernetes[Service] EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/controller-manager User=kube ExecStart=/usr/bin/kube-controller-manager \$KUBE_LOGTOSTDERR \$KUBE_LOG_LEVEL \$KUBE_MASTER \$KUBE_CONTROLLER_MANAGER_ARGS Restart=on-failure LimitNOFILE=65536[Install] WantedBy=multi-user.target [root@localhost system]# [root@localhost system]# [root@localhost system]# cat kubelet.service [Unit] Description=Kubernetes Kubelet Server Documentation=https://github.com/GoogleCloudPlatform/kubernetes After=docker.service Requires=docker.service[Service] WorkingDirectory=/var/lib/kubelet EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/kubelet ExecStart=/usr/bin/kubelet \$KUBE_LOGTOSTDERR \$KUBE_LOG_LEVEL \$KUBELET_API_SERVER \$KUBELET_ADDRESS \$KUBELET_PORT \$KUBELET_HOSTNAME \$KUBE_ALLOW_PRIV \$KUBELET_ARGS Restart=on-failure KillMode=process[Install] WantedBy=multi-user.target [root@localhost system]# [root@localhost system]# [root@localhost system]# cat kube-proxy.service [Unit] Description=Kubernetes Kube-Proxy Server Documentation=https://github.com/GoogleCloudPlatform/kubernetes After=network.target[Service] EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/proxy ExecStart=/usr/bin/kube-proxy \$KUBE_LOGTOSTDERR \$KUBE_LOG_LEVEL \$KUBE_MASTER \$KUBE_PROXY_ARGS Restart=on-failure LimitNOFILE=65536[Install] WantedBy=multi-user.target [root@localhost system]# [root@localhost system]# [root@localhost system]# cat kube-scheduler.service [Unit] Description=Kubernetes Scheduler Plugin Documentation=https://github.com/GoogleCloudPlatform/kubernetes[Service] EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/scheduler User=kube ExecStart=/usr/bin/kube-scheduler \$KUBE_LOGTOSTDERR \$KUBE_LOG_LEVEL \$KUBE_MASTER \$KUBE_SCHEDULER_ARGS Restart=on-failure LimitNOFILE=65536[Install] WantedBy=multi-user.target [root@localhost system]#

2.3?配置k8s

??通過systemd服務配置文件可知需創建/etc/kubernetes目錄以及相關文件

[root@localhost kubernetes]# ls apiserver config controller-manager kubelet proxy scheduler [root@localhost kubernetes]# [root@localhost kubernetes]# cat config ### # kubernetes system config # # The following values are used to configure various aspects of all # kubernetes services, including # # kube-apiserver.service # kube-controller-manager.service # kube-scheduler.service # kubelet.service # kube-proxy.service # logging to stderr means we get it in the systemd journal KUBE_LOGTOSTDERR="--logtostderr=true"# journal message level, 0 is debug KUBE_LOG_LEVEL="--v=0"# Should this cluster be allowed to run privileged docker containers KUBE_ALLOW_PRIV="--allow-privileged=false"# How the controller-manager, scheduler, and proxy find the apiserver KUBE_MASTER="--master=http://127.0.0.1:8080" [root@localhost kubernetes]#

????Apiserver需要將--insecure-bind-address地址修改為0.0.0.0(修改為大網ip地址),接收任意地址的連接。

[root@localhost kubernetes]# cat apiserver ### # kubernetes system config # # The following values are used to configure the kube-apiserver # # The address on the local server to listen to. KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"# The port on the local server to listen on. # KUBE_API_PORT="--port=8080"# Port minions listen on # KUBELET_PORT="--kubelet-port=10250"# Comma separated list of nodes in the etcd cluster KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"# Address range to use for services KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"# default admission control policies #KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota" KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"# Add your own! KUBE_API_ARGS="" [root@localhost kubernetes]#

????????Kubelet配置文件,最重要的配置是執行apiserver所在的地址,但是在v1.8版本之后不再支持--api-servers,因此需要注釋掉,那么問題來了,kubelet是如何指定api-server地址呢?

[root@localhost kubernetes]# cat kubelet ### # kubernetes kubelet (minion) config# The address for the info server to serve on (set to 0.0.0.0 or "" for all interfaces) KUBELET_ADDRESS="--address=127.0.0.1"# The port for the info server to serve on KUBELET_PORT="--port=10250"# You may leave this blank to use the actual hostname KUBELET_HOSTNAME="--hostname-override=127.0.0.1"# location of the api-server ##KUBELET_API_SERVER="--api-servers=http://127.0.0.1:8080"# pod infrastructure container KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=docker.io/kubernetes/pause"# Add your own! KUBELET_ARGS="--fail-swap-on=false --cgroup-driver=cgroupfs --kubeconfig=/var/lib/kubelet/kubeconfig"

下面幾個配置文件內容基本是空,沒有什么內容。

[root@localhost kubernetes]# cat controller-manager ### # The following values are used to configure the kubernetes controller-manager# defaults from config and apiserver should be adequate# Add your own! KUBE_CONTROLLER_MANAGER_ARGS="" [root@localhost kubernetes]# [root@localhost kubernetes]# cat proxy ### # kubernetes proxy config# default config should be adequate# Add your own! KUBE_PROXY_ARGS=" [root@localhost kubernetes]# [root@localhost kubernetes]# cat scheduler ### # kubernetes scheduler config# default config should be adequate# Add your own! KUBE_SCHEDULER_ARGS="--loglevel=0"

以上配置均是在master節點中進行配置,配置完成后這樣k8s就是一個單節點集群--既運行master也運行node的環境。只不過node還有問題,下面介紹。

三、http方式

??前面已經介紹過,在v1.8版本之后kubelet不再支持api-server參數,那么在新版本kubelet如何才能與api-server進行通信呢?是通過kubeconfig參數,指定配置文件(這個地方是一個大坑,坑了我好長一段時間)。

??在/etc/kubernetes/kubelet配置文件中有一個配置項,

KUBELET_ARGS="--fail-swap-on=false --cgroup-driver=cgroupfs --kubeconfig=/var/lib/kubelet/kubeconfig"

??指定kubeconfig所在的目錄,內容如下:

[root@localhost kubernetes]# [root@localhost kubernetes]# cat /var/lib/kubelet/kubeconfig apiVersion: v1 clusters: - cluster:server: http://127.0.0.1:8080name: myk8s contexts: - context:cluster: myk8suser: ""name: myk8s-context current-context: myk8s-context kind: Config preferences: {} users: [] [root@localhost kubernetes]#

解釋一下上面內容:

????1)?clusters -?代表集群,支持多個集群。里面需要制定server,即api-server所在地址。此處也支持https方式,后面詳細介紹。

????2)?contexts -?集群上下文,支持多個上下文

????3)?current-context -?表示當前使用的上下文

?其他字段在介紹https方式時在進行說明。

至此,單節點集群部署完成,我們需要啟動各個服務。

[root@localhost k8s]# systemctl start docker [root@localhost k8s]# systemctl start etcd [root@localhost k8s]# systemctl start kube-apiserver [root@localhost k8s]# systemctl start kube-controller-manager [root@localhost k8s]# systemctl start kube-scheduler [root@localhost k8s]# systemctl start kubelet [root@localhost k8s]# systemctl start kube-proxy [root@localhost k8s]#

驗證環境是否正常:

[root@localhost k8s]# [root@localhost k8s]# kubectl get nodes NAME STATUS ROLES AGE VERSION 127.0.0.1 Ready <none> 16d v1.9.1 [root@localhost k8s]# [root@localhost k8s]#

以上內容只是master節點上配置,下面我們在node1中配置http方式訪問api-server。

????首先需要將kubelet、kube-proxy進程以及先關配置文件拷貝到node1中,然后把可執行程序以及配置文件拷貝到對應目錄中:

[root@node1 k8s_node]# [root@node1 k8s_node]# ls bin-file/ config-file/ bin-file/: kubelet kube-proxy config-file/: config kubeconfig kubelet kubelet.service kube-proxy.service proxy [root@node1 k8s_node]# [root@node1 k8s_node]# [root@node1 k8s_node]# mv bin-file/kubelet bin-file/kube-proxy /usr/bin [root@node1 k8s_node]# mkdir /etc/kubernetes [root@node1 k8s_node]# mv config-file/config config-file/kubelet config-file/proxy /etc/kubernetes/ [root@node1 k8s_node]# mv config-file/kubelet.service config-file/kube-proxy.service /usr/lib/systemd/system [root@node1 k8s_node]# [root@node1 k8s_node]# mkdir /var/lib/kubelet [root@node1 k8s_node]# mv config-file/kubeconfig /var/lib/kubelet/ [root@node1 k8s_node]#

重點:

1)修改/var/lib/kubelet/kubeconfig文件中server的ip地址,修改為http://192.63.63.1:8080

2)修改/etc/kubernetes/kubelet文件中KUBELET_HOSTNAME將其修改為"--hostname-override=node1"

分別啟動服務docker、kubelet、kube-proxy,然后在master進行驗證:

[root@localhost ~]# [root@localhost ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION 127.0.0.1 Ready <none> 17d v1.9.1 node1 Ready <none> 5m v1.9.1 [root@localhost ~]#

當出現name是node1,且status是Ready,則表示部署成功。

至此,k8s部署且http方式介紹完

(2)k8s實現https方式通訊

http方式是不安全,如果內部使用還可以,若是部署到外部則需要使用https增加安全性。下面介紹如何在node2上采用https方式。

???????上面說到/var/lib/kubelet/kubeconfig文件,并非手動創建,而是通過命令行kubectl config進行配置,配置完成之后就會自動生成。

??簡單介紹一下ApiServer認證,認證一共有三種方式:

??1)Https雙向認證,是雙向認證啊,不是單向認證(最安全)。

??2)Http Token認證

??3)Http Base認證,用戶名和密碼

??我們之前介紹http方式是沒有任何認證措施的,也就是說只要能訪問master的主機都可以與其進行通信。特別說明:kubectl命令行工具既同時支持CA雙向認證也支持簡單認證(http base或者token)兩種模式與apiserver進行通信,但其他組件只能配置成一種模式。

??下面開始進行各類證書的生成以及kubeconfig文件的生成。

??證書生成,可采用openssl,也可以采用CFSSL工具。下面這篇博客,采用的是CFSSL工具:http://www.cnblogs.com/netsa/p/8126155.html

我比較熟悉openssl,因此介紹openssl使用方式

一、?生成各類證書

0)環境配置

[root@localhost ~]# mkdir kube-ca [root@localhost kube-ca]# [root@localhost kube-ca]# mkdir -p ./{certs,private,newcerts} [root@localhost kube-ca]# touch ./index.txt [root@localhost kube-ca]# echo 01 > ./serial [root@localhost kube-ca]#

修改openssl配置文件,主要是擴展x509,設置多ip。

[root@localhost kube-ca]# vi /etc/pki/tls/openssl.cnf [ CA_default ] #dir = /etc/pki/CA # Where everything is kept dir = /etc/kubernetes/kube-ca # 重新指定目錄 certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. #unique_subject = no # Set to 'no' to allow creation of# several ctificates with same subject. new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crlnumber = $dir/crlnumber # the current crl number# must be commented out to leave a V1 CRL crl = $dir/crl.pem # The current CRL private_key = $dir/private/cakey.pem # The private key RANDFILE = $dir/private/.rand # private random number file x509_extensions = usr_cert # 擴展x509_extension是usr_cert項[usr_cer] subjectAltName = @alt_names#擴展多個IP [alt_names] IP.1 = 127.0.0.1 IP.2 = 192.168.1.105 IP.3 = 192.63.63.1 IP.4 = 192.63.63.20

1)生成CA根證書

生成https私鑰

[root@localhost kube-ca]# [root@localhost kube-ca]# openssl genrsa -out private/ca.key 2048 Generating RSA private key, 2048 bit long modulus ..................................+++ .......................................................................+++ e is 65537 (0x10001) [root@localhost kube-ca]#

生成https證書

[root@localhost kube-ca]# openssl req -new -x509 -key private/ca.key -out certs/ca.crt You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:CN State or Province Name (full name) []:BeiJing Locality Name (eg, city) [Default City]:BeiJing Organization Name (eg, company) [Default Company Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server's hostname) []:mykubeca.io Email Address []:abcd@abc.com [root@localhost kube-ca]#

其中Common Name 是隨意指定mykubeca.io。

2)生成apiserver證書

生成服務端私鑰

[root@localhost kube-ca]# mkdir apiserver [root@localhost kube-ca]# openssl genrsa -out apiserver/apiserver.key 2048 Generating RSA private key, 2048 bit long modulus ...............+++ ................+++ e is 65537 (0x10001) [root@localhost kube-ca]#

2)修改/etc/kubernetes/apiserver配置文件,在KUBE_API_ARGS中增加如下配置:

--client-ca-file=/etc/kubernetes/ca/ca.crt --tls-private-key- file=/etc/kubernetes/ca/apiserver.key --tls-cert-file=/etc/kubernetes/ca/apiserver.crt

重啟apiserver,apiserver默認監聽端口是6443端口,通過curl進行校驗:

[root@localhost kube-ca] curl https://192.63.63.1:6443/api/v1/nodes --cert/etc/kubernetes/kube-ca/client/client.crt --key /etc/kubernetes/kube-ca/client/client.key--cacert /etc/kubernetes/kube-ca/certs/ca.crt -v

如果能正常顯示數據,則認為證書配置成功,否則證書配置失敗。

1.2.2?修改node節點

1)Node節點,一般運行kubelet、kube-proxy兩個組件,為了方便二者使用同一份客戶端證書。將ca根證書,client私鑰和證書拷貝到node2中/etc/kubernets/ca目錄中。

2)創建kebeconfig文件,依次執行一下命令,會生成兩個文件kubelet.kubeconfig和kube-proxy.kubeconfig

--------------------- 本文來自 xxb249 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/xxb249/article/details/79449434?utm_source=copy

export KUBE_APISERVER="https://192.63.63.1:6443"kubectl config set-cluster kubernetes \ -- certificate-authority=/etc/kubernetes/ca/ca.crt \ --server=${KUBE_APISERVER} \ -- kubeconfig=kubelet.kubeconfig kubectl config set-credentials kubelet \ --client- certificate=/etc/kubernetes/ca/client.crt \ --client-key=/etc/kubernetes/ca/client.key \ --kubeconfig=kubelet.kubeconfig kubectl config set-context default \ --cluster=kubernetes \ --user=kubelet \ --kubeconfig=kubelet.kubeconfig kubectl config use-context default -- kubeconfig=kubelet.kubeconfig kubectl config set-cluster kubernetes \ --certificate- authority=/etc/kubernetes/ca/ca.crt \ --server=${KUBE_APISERVER} \ --kubeconfig=kube- proxy.kubeconfig kubectl config set-credentials kube-proxy \ --client- certificate=/etc/kubernetes/ca/client.crt \ --client-key=/etc/kubernetes/ca/client.key \ --kubeconfig=kube-proxy.kubeconfig kubectl config set-context default \ -- cluster=kubernetes \ --user=kube-proxy \ --kubeconfig=kube-proxy.kubeconfig kubectl config use-context default --kubeconfig=kube-proxy.kubeconfig

將文件kubele.kubeconfig拷貝到/var/lib/kubelet以及文件kube-proxy.kubeconfig拷貝到/var/lib/kube-proxy中,如果沒有上述目錄則創建。

3)修改配置文件,

修改/etc/kubernetes/kubelet文件,在KUBELET_ARGS中增加--kubeconfig=/var/lib/kubelet/kubelet.kubeconfig

修改修改/etc/kubernetes/proxy文件,在KUBELET_ARGS中增加--kubeconfig=/var/lib/kubelet/kube-proxy.kubeconfig

重新啟動kubelet和kube-proxy服務,然后在master節點中,查看nodes信息:

--------------------- 本文來自 xxb249 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/xxb249/article/details/79449434?utm_source=copy

[root@localhost ~]#[root@localhost ~]# kubectl get nodesNAME STATUS ROLES AGE VERSION127.0.0.1 Ready <none> 17d v1.9.1node1 Ready <none> 5m v1.9.1node2 Ready <none> 1m v1.9.1[root@localhost ~]#

下面是kubelet.kubeconfig和kube-proxy.kubeconfig文件內容如下:

[root@localhost kube-proxy]# cat /var/lib/kubelet/kubelet.kubeconfigapiVersion: v1clusters:- cluster: certificate-authority: /etc/kubernetes/ca/ca.crt server: https://192.169.122.1:6443 name: kubernetescontexts:- context: cluster: kubernetes user: kubelet name: defaultcurrent-context: defaultkind: Configpreferences: {}users:- name: kubelet user: as-user-extra: {} client-certificate: /etc/kubernetes/ca/client.crt client-key: /etc/kubernetes/ca/client.key[root@localhost kube-proxy]# [root@localhost kube-proxy]# cat /var/lib/kube-proxy/kube-proxy.kubeconfigapiVersion: v1clusters:- cluster: certificate-authority: /etc/kubernetes/ca/ca.crt server: https://192.169.122.1:6443 name: kubernetescontexts:- context: cluster: kubernetes user: kube-proxy name: defaultcurrent-context: defaultkind: Configpreferences: {}users:- name: kube-proxy user: as-user-extra: {} client-certificate: /etc/kubernetes/ca/client.crt client-key: /etc/kubernetes/ca/client.key[root@localhost kube-proxy]#

二、遇到問題

問題1:
[root@localhost controller]# curl https://127.0.0.1:443/api/v1/nodes --cert /etc/kubernetes/kube-ca/client/client.crt --key /etc/kubernetes/kube-ca/client/client.key --cacert /etc/kubernetes/kube-ca/certs/ca.crt -v
* About to connect() to 127.0.0.1 port 443 (#0)
*? ?Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*? ?CAfile: /etc/kubernetes/kube-ca/certs/ca.crt
? CApath: none
* NSS error -12190 (SSL_ERROR_PROTOCOL_VERSION_ALERT)
* Peer reports incompatible or unsupported protocol version.
* Closing connection 0

curl: (35) Peer reports incompatible or unsupported protocol version.

解決方法:

更新以下軟件:
yum update nss nss-util nspr

yum update curl

問題2:之前通過kubectl get nodes提示無法找到master之類錯誤(具體是啥錯誤不清楚了)

解決方式1:kubectl get nodes --kubeconfig=XXX 指定kubeconfig文件,可以參考kubelet的文件

解決方式2:kubectl默認讀取~/.kube/config,這個config文件里面有設置server地址。其實這個config文件就是kubeconfig文件。

至此,https方式訪問介紹完成,后面介紹token和basic方式。

--------------------- 本文來自 xxb249 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/xxb249/article/details/79449434?utm_source=copy

總結

以上是生活随笔為你收集整理的kubernetes一步一步搭建与https访问的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。