简介:
bluemix是基于kubernetes来服务的免费云空间。绑定信用卡后可以创建一个月的集群,一个月后会被删除。
下面示例介绍如何使用kubernetes dashboard来创建一个容器,并提供给公网服务。
示例教程为部署一个apache官方镜像,并映射80端口给公网服务。
一:创建集群
如下图位置,创建资源
或者点击左上角的然后选择仪表板
选择Kubernetes Service,两个位置一样,如下图所示
继续创建,如下图
选择资源位置,选择集群类型为免费,给定一个集群名称,然后创建集群。如下图所示。
自动进入集群概况,查看工作程序节点
等待状态
当工作状态变为正常,且有公共IP,则表示集群创建完毕。入下图所示。
二:部署镜像
我不教你们那些下载客户端,配置客户端,生成token……………………
简单的使用图形GUI来部署一个apache镜像。
记下你的公共IP,然后访问Kubernetes仪表板,如下图所示:
直接创建服务即可,如下图:
选择创建应用
应用名称随便自己写一个,容器镜像,是hub.docker.com里面的,本例是httpd,apache的官方镜像。
服务一定要选外部,这样才可以被外部访问,端口和目标端口都填80,镜像开放的是80,所以容器开放的也是80,外部访问也用80。容器组个数为1。
高级选项可以选择特权模式,环境变量。
点击部署后即可。
三:配置外部IP
首先记下你的公共IP,看前面有个地方告诉你。
概述中会看到服务下面的apache,我们刚创建的服务,不是绿色对号。
点击右边的三个点,编辑yaml文件。
其实只添加一行外部公共IP即可。
原有代码入下:
{ "kind": "Service", "apiVersion": "v1", "metadata": { "name": "apache", "namespace": "default", "selfLink": "/api/v1/namespaces/default/services/apache", "uid": "7f6fbe12-0603-11e9-882d-************", "resourceVersion": "35434", "creationTimestamp": "2018-12-22T16:06:10Z", "labels": { "k8s-app": "apache" } }, "spec": { "ports": [ { "name": "tcp-80-80-4wg7q", "protocol": "TCP", "port": 80, "targetPort": 80, "nodePort": 32145 } ], "selector": { "k8s-app": "apache" }, "clusterIP": "172.***.***.***", "type": "LoadBalancer", "sessionAffinity": "None", "externalTrafficPolicy": "Cluster" }, "status": { "loadBalancer": {} } }
增加后如下:
{ "kind": "Service", "apiVersion": "v1", "metadata": { "name": "apache", "namespace": "default", "selfLink": "/api/v1/namespaces/default/services/apache", "uid": "7f6fbe12-0603-11e9-882d-************", "resourceVersion": "35434", "creationTimestamp": "2018-12-22T16:06:10Z", "labels": { "k8s-app": "apache" } }, "spec": { "ports": [ { "name": "tcp-80-80-4wg7q", "protocol": "TCP", "port": 80, "targetPort": 80, "nodePort": 32145 } ], "selector": { "k8s-app": "apache" }, "clusterIP": "172.***.***.***", "type": "LoadBalancer", "externalIPs": [ #这行增加 "168.***.***.***1" #这是你的公共IP ], #这行增加 "sessionAffinity": "None", "externalTrafficPolicy": "Cluster" }, "status": { "loadBalancer": {} } }
点击更新即可
四:验证
访问你的公共IP,即可测试。
apache的官方镜像,貌似,也就这么一句话,告诉你,工作正常。
结束语:
虽然只有一个月的时间,但是胜在免费,速度快。
想干什么,就看你了。
主要是修改一下yaml让服务知道监听哪个IP地址的信息。
推荐一个docker镜像
jackadam/bluemix