《四》公司项目部署到Kubernetes平台

准备工做与注意事项

参考文档:https://github.com/lizhenliang php

1、部署的项目状况
一、业务架构及服务(dubbo,spring cloud)
二、第三方服务,例如mysql,redis,zookeeper,eruka,mq
三、服务之间怎么通讯?
四、资源消耗:硬件资源,带宽。html

2、部署项目时用到的K8S资源
一、使用namespace进行不一样项目隔离,或者隔离不一样环境(test,prod,dev)
二、无状态应用(deployment)
三、有状态应用(statefulset,pv,pvc)
四、暴露外部访问(Service,ingress)
五、secret,configmapjava

3、项目基础镜像node

4、编排部署mysql

镜像为交付物。nginx

一、项目构建(java)。CI/CD环境这个阶段自动完成(代码拉取->代码编译构建->镜像打包->推送到镜像仓库)。
二、编写yaml文件,使用这个镜像
1)deployment部署web
2)statefulset部署mysql
3)镜像认证拉取secret
4)service & ingressgit

5、工做流程github

kubectl -> yaml -> 镜像仓库拉取镜像 -> Service(集群内部访问)/Ingress 暴露给外部用户web

如下是php-demo
一、登陆到node任意一个节点上(node:192.168.1.23),下载php实验代码,而后再将她推到镜像仓库(harbor)redis

git clone https://github.com/lizhenliang/php-demo

二、mysql 独立出来,不在pod中,在192.168.1.25上安装mariadb
1)yum -y install mariadb mariadb-server && systemctl start mariadb
2)mysql_secure_installation 设置密码 123456
3)create database wordpress; #新建数据库
4)grant all on . to 'root'@'%' identified by '123456'; #开放root访问权限

三、更改配置php-demo/wp-config.php 中的数据库链接信息

四、如下的意思就是一、获取 lizhenliang/nginx-php:latest 这个镜像。二、做者信息:jacker 三、把当前的代码添加到镜像的/usr/local/nginx/html这个里面

《四》公司项目部署到Kubernetes平台

[root@docker php-demo]# vi Dockerfile
FROM lizhenliang/nginx-php:latest
MAINTAINER jacker
ADD . /usr/local/nginx/html

五、开始构建镜像(.:默认就是dockerfile文件)

先要登陆到harbor上,才有权限
docker login 192.168.1.25

[root@docker php-demo]# docker build -t 192.168.1.25/project/php-demo .

六、开始推到harbor上
docker push 192.168.1.25/project/php-demo

七、登陆harbor 192.168.1.25查看

八、如今到主节点上建立pod
1)在master上要有权限拉取镜像,方法以下:https://blog.csdn.net/xukangkang1hao/article/details/80839834
获取以下:
《四》公司项目部署到Kubernetes平台

2)建立命名空间
kubectl apply -f namespace.yaml
3)建立拉取镜像权限的秘钥
kubectl apply -f registry-pull-secret.yaml
4)建立service来暴露端口服务
kubectl apply -f service.yaml
5)建立ingress来让域名访问,ingress关联到的是servicename
kubectl apply -f ingress.yaml
6 ) 建立deployment
kubectl apply -f deployment.yaml

设置好标签,为了能够回滚
《四》公司项目部署到Kubernetes平台

验证:
《四》公司项目部署到Kubernetes平台

域名绑定到任意一个节点上:
《四》公司项目部署到Kubernetes平台

访问:http://php.ctnrs.com/ 验证

相关文章
相关标签/搜索