搭建两个容器:Web App容器和mysql容器

一、环境准备

在VirtualBox中搭建一个CentOS虚拟机作为基础环境,快速安装K8S步骤:

  • 关闭CentOS自带防火墙
  1. systemctl disable firewalld
  2. systemctl stop firewalld
  • 安装etcd和K8S软件(会自动安装Docker)
  1. yum install -y etcd kubenetes
  • 安装完软件后,修改两个配置文件
  1. Docker配置文件为/etc/sysconfig/docker,其中OPTIONS的内容设置为:
  2. OPTIONS='--selinux-enabled=false --insecure-registry gcr.io'
  3. K8S apiServer配置文件为/etc/kubenetes/apiserver,把--adminisson_control参数中的ServiceAccount删除
  • 按顺序启动所有的服务
  1. systemctl start etcd
  2. systemctl start docker
  3. systemctl start kube-apiserver
  4. systemctl start kube-controller-manager
  5. systemctl start kube-scheduler
  6. systemctl start kubelet
  7. systemctl start kube-proxy

一个单机的K8S搭建完成

二、启动mysql服务

1、创建MySQL服务的RC文件:mysql-rc.yaml

2、将mysql发布到K8S

  1. $ kubectl create -f mysql-rc.yaml
  2. $ kubectl get rc // 查看刚才创建的RC
  3. $ kubectl get pods // 查看pod的创建情况
  4. $ docker ps | grep mysql // 查看运行的容器

3、创建一个与mysql关联的服务(是因为K8S需要通过service来随机访问各个容器,因为容器在pod中随时会down掉,ip在变化,需要通过对外服务域名来访问)

1、创建MySQL服务的svc文件:mysql-svc.yaml

2、将mysql服务发布到K8S

  1. $ kubectl create -f mysql-svc.yaml
  2. $ kubectl get svc

这样mysql服务就ok了

三、启动myweb服务

同步骤二的启动mysql服务

参考《Kubenetes权威指南》