Centos7 k8s安装
Posted Time-Traveler
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7 k8s安装相关的知识,希望对你有一定的参考价值。
安装docker和k8s:
-
切换yum原:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache
-
centos7 默认使用firewall为防火墙,而Kubernetes的Master与工作Node之间会有大量的网络通信,安全的做法是在防火墙上配置各种需要相互通讯的端口号,在一个安全的内部网络环境中可以关闭防火墙服务
systemctl disable firewalld.service systemctl stop firewalld.service
-
安装:
yum install etcd kubernetes -y
-
Kubernetes修改apiserver的配置文件,在/etc/kubernetes/apiserver中,去掉 ServiceAccount 选项。否则会在往后的pod创建中,会出现类似以下的错误:
去掉 ServiceAccount 选项vim /etc/kubernetes/apiserver
-
更改docker镜像源,切到阿里的源:
sudo vim /etc/docker/daemon.json # 添加阿里源 { "registry-mirrors": ["https://md4nbj2f.mirror.aliyuncs.com"] }
-
启动服务:
systemctl start etcd systemctl start docker systemctl start kube-apiserver.service systemctl start kube-controller-manager.service systemctl start kube-scheduler.service systemctl start kubelet.service systemctl start kube-proxy.service
创建rc的yaml:
vim mysql-rc.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: mysql
spec:
replicas: 1
selector:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql
ports:
- containerPort: 3306
env:
- name: MYSQL_ROOT_PASSWORD
value: "123456"
创建pod:
kubectl create -f mysql-rc.yaml
查看pod创建进度:
kubectl get pod
如果一直处于creating状态,则可以用describe查看具体信息:
kubectl describe pod pod_name # pod_name 来自于上面get pod后显示的name
如果发现以下错误:
open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: no such file
参考前面一篇文章:https://blog.csdn.net/ALakers/article/details/116332297
如果稍等一小会儿是Running的话则创建成功,环境应该没什么问题了,参考下一篇K8s部署自己的应用程序。
以上是关于Centos7 k8s安装的主要内容,如果未能解决你的问题,请参考以下文章