K8S: (一)CentOS 单机部署

修改软件源

二、安装k8s修改配置

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache

安装k8s,etcd,docker

yum install -y etcd kubernetes

启动下列服务:

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

三、拉取启动镜像

安装mysql

docker pull mysql:5.7

创建文件: 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:5.7
        ports: 
        - containerPort: 3306
        env:
        - name: MYSQL_ROOT_PASSWORD
          value: "123456"
kubectl create -f mysql-rc.yaml

查看mysql具体启动情况:

kubectl describe pod mysql

下载安装证书:

wget [http://mirror.centos.org/centos/7/os/x86\_64/Packages/python-rhsm-certificates-1.19.10-1.el7\_4.x86\_64.rpm](http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm)
rpm2cpio python-rhsm-certificates-1.19.10-1.el7\_4.x86\_64.rpm | cpio -iv --to-stdout ./etc/rhsm/ca/redhat-uep.pem | tee /etc/rhsm/ca/redhat-uep.pem
#rpm2cpio命令用于将rpm软件包转换为cpio格式的文件,cpio命令主要是用来建立或者还原备份档的工具程序,cpio命令可以复制文件到归档包中,或者从归档包中复制文件。

删除并重新生成mysql的rc:

kubectl delete -f mysql-rc.yaml

kubectl get pods

kubectl create -f mysql-rc.yaml
kubectl describe pod mysql
kubectl get pods

创建文件:mysql-svc.yaml:

apiVersion: v1
kind: Service
metadata: 
  name: mysql
spec:
  ports:
    - port: 3306
  selector:
    app: mysql
kubectl create -f mysql-svc.yaml

拉取并运行tomcat的demo镜像:

docker pull kubeguide/tomcat-app:v1

创建文件:myweb-rc.yaml:

apiVersion: v1
kind: ReplicationController
metadata:
  name: myweb
spec:
  replicas: 5
  selector:
    app: myweb
  template:
    metadata:
      labels:
        app: myweb
    spec:
      containers:
      - name: myweb
        image: docker.io/kubeguide/tomcat-app:v1
        ports: 
        - containerPort: 8080
        env:
        - name: MYSQL_SERVICE_HOST
          value: "10.254.65.209"    #<===这里的mysql地址需要填写service的mysql地址,执行kubectl get svc 查看
        - name: MYSQL_SERVICE_PORT
          value: "3306"

创建文件:myweb-svc.yaml:

apiVersion: v1
kind: Service
metadata: 
  name: myweb
spec:
  type: NodePort
  ports:
    - port: 8080
      nodePort: 30001   #外部端口映射
  selector:
    app: myweb
kubectl create -f myweb-rc.yaml
kubectl create -f myweb-svc.yaml

、外部访问与查看数据
访问:http://127.0.0.1:30001/demo/

K8S: (一)CentOS 单机部署

发表评论

您的电子邮箱地址不会被公开。

滚动到顶部