一、环境准备
1.在主节点上下载jdk8、zookeeper
jdk8可以在官网下载,下载好后需要配置环境变量JAVA_HOME
zookeeper自行下载,下载好后需要改data路径
2.为主节点和从节点都下载docker
3.为主节点下载k8s
docker和k8s可以参考实验3
二、将consumer和provider打包
1.将项目中zookeeper的地址改为主节点服务器的ip:port
2.工件打包
三、将provider完成部署
1.将provider.jar上传到服务器
scp provider.jar root@xxx.xxx.xxx.xxx:/root/provider
2.将provider打包成docker镜像
先编写DockerFile文件,和provider.jar放在同一路径下
From openjdk:8MAINTAINER rainbowADD provider.jar provider.jarEXPOSE 8080ENTRYPOINT ["java","-jar","provider.jar"]
再命令行打包
docker build -t provider -f DockerFile .
3.登录docker并上传镜像
docker login
docker tag provider USERNAME/providerdocker push USERNAME/provider
4.部署provider
新建provider.yaml
apiVersion: v1kind: Servicemetadata: name: providerspec: type: NodePort ports: - port: 80 targetPort: 8080 nodePort: 31615 selector: app: provider--- apiVersion: apps/v1kind: Deploymentmetadata: name: providerspec: replicas: 1 selector: matchLabels: app: provider template: metadata: labels: app: provider spec: containers: - name: provider image: rainbow1991/provider ports: - containerPort: 8080
使用以下命令部署
kubectl create -f ./provider.yaml
使用下面命令查看结点情况
kubectl get podskubectl get deployment
5.打开zookeeper
./zkServer.sh start
四、制作consumer镜像
1.将consumer.jar上传到服务器
scp consumer.jar root@122.9.7.78:/root/consumer
2.将consumer打包成docker镜像
先编写DockerFile文件,和consumer.jar放在同一路径下
From openjdk:8MAINTAINER rainbowADD consumer.jar consumer.jarEXPOSE 8080ENTRYPOINT ["java","-jar","consumer.jar"]
再命令行打包
docker build -t consumer -f DockerFile .
3.启动consumer服务
java -jar consumer.jar
五、扩容
kubectl scale Deployment provider --replicas=10