kubernetes之二:集群环境搭建

本文介绍如何从零开始安装配置Kubernetes环境,并通过minikube搭建本地集群。接着,编写一个简单的Node.js程序,构建Docker镜像,最后将其部署到minikube集群上并通过Service暴露该应用。

一、安装kubernetes并配置环境

安装minikube
$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.15.0/minikube-darwin-amd64
$ chmod +x minikube
$ sudo mv minikube /usr/local/bin/
安装kubectl
$ curl -Lo kubectl http://storage.googleapis.com/kubernetes-release/release/v1.5.1/bin/darwin/amd64/kubectl
$ chmod +x kubectl
$ sudo mv kubectl /usr/local/bin/
安装docker-machine-driver-xhyve
$ brew install docker-machine-driver-xhyve
$ sudo chown root:wheel $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
$ sudo chmod u+s $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
启动Minikube集群
$ minikube start --vm-driver=xhyve
设置Minikube 环境
$ kubectl config use-context minikube
验证kubectl配置
$ kubectl cluster-info

二、创建Node.js应用程序并构建镜像

编写node.js程序

vi server.js

var http = require('http');

var handleRequest = function(request, response) {
  console.log('Received request for URL: ' + request.url);
  response.writeHead(200);
  response.end('Hello World!');
};
var www = http.createServer(handleRequest);
www.listen(8080);
编写Dockerfile

vi Dockerfile

这里使用了国内nodejs镜像,拉取image比较快

FROM index.tenxcloud.com/tenxcloud/nodejs
EXPOSE 8080
COPY server.js .
CMD node server.js
将Dockerfile构建到Minikube的Docker主机上
$ eval $(minikube docker-env)

注意:如果不在使用Minikube主机时,可以通过运行eval $(minikube docker-env -u)来撤消此更改。

构建镜像
$ docker build -t hello-node:v1 .

三、将上面构建的镜像部署到Minikube集群上

kubectl run命令部署构建的image
$ kubectl run hello-node --image=hello-node:v1 --port=8080
查看部署的pod状态
kubectl get pods

输出

NAME                         READY     STATUS    RESTARTS   AGE
hello-node-714049816-ztzrb   1/1       Running   0          6m
创建Service使得部署的pod可以被”外网”访问
$ kubectl expose deployment hello-node --type=LoadBalancer
访问minikube地址查看部署的pod

输入下面命令,打开默认游览器访问minikube主机地址

$ minikube service hello-node
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值