六一快樂!!!
什么是k8s,我不想解釋,百度資料有很多,本系列只踩坑,不科普。
問題描述:
做Hello World的例子,結果get pods一直顯示沒有資源?
應用配置代碼:
apiVersion : v1
kind : ReplicationController
metadata :
name : mysql
spec :
replicas : 2
selector :
app : mysql
template :
metadata :
labels :
app : mysql
spec :
containers :
- name : mysql
image : mysql
ports :
- containerPort : 3306
env :
- name : MYSQL_ROOT_PASSWORD
value : "123456"
創建rc
# kubectl create -f mysql-rc.yaml
replicationcontroller "mysql" created
# kubectl get rc
NAME DESIRED CURRENT READY AGE
mysql 2 0 0 11s
myweb 2 0 0 5s
# kubectl get pods
No resources found.
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
分析
創建了rc之后,雖然命令行提示成功了,但是pods一直沒有創建,也檢查了docker,mysql的鏡像沒有拉取。又仔細看了一邊rc的結果,current和ready列的值是0,應該先解決current為0的問題。
google解決方案
- executed command :
openssl genrsa -out /tmp/serviceaccount.ket 2048
- modified the /etc/kubernetes/apiserver file to add following :
KUBE_API_ARGS="--service_account_key_file=/tmp/serviceaccount.key"
- modified the /etc/kubernetes/controller-manager and add following:
KUBE_CONTROLLER_MANAGER_ARGS="--service_account_private_key_file=/tmp/serviceaccount.key"
- restarted the kube-apiserver and kube-controller-manager services to restart the services
service kube-apiserver restart
service kube-controller-manager restart
參考:
https://blog.csdn.net/jinzhencs/article/details/51435020
https://github.com/kubernetes/kubernetes/issues/11355#issuecomment-127378691
