亚马逊 Web 服务 (AWS) 也许会创建一个基于 Kubernetes 的云容器管理工具。根据与 AWS 商务合做伙伴的信息报告: 由于 Kubernetes 的盛行,AWS 倍感威胁。nginx
Kubernetes 是 Google 开发的开源软件, Redhat、IBM、VMWare 等大型企业均在使用它来管理其客户基础架构上的容器集群。同时,Kubernetes 也被普遍用来管理跨多台机器的人工智能 (AI) 测试。git
虽然 AWS 还是市场上主要的公有云, 但它面临着来自竞争对手微软 Azure 和谷歌公有云 (GPC) 的巨大挑战。谷歌一直特别关注机器学习和 AI 服务, 他们的首席执行官 Sundar Pichai 表示, 谷歌计划让 GPC 成为 "机器学习的最佳云"。github
所以,AWS 意识到 Kubernetes-based 云服务能够帮助他们吸引更多的 AI 业务。AWS 已经支持 Kubernetes 的容器管理和编排工具, 自身也拥有相似服务, 称为 EC2 容器服务 (ECS)。docker
有统计显示, 在 GPC 上使用 Kubernetes 更容易, 这意味着用户开始使用 AWS 软件时, 一般会切换到 Google。同时,ECS 的使用率很是低且客户不喜欢它。windows
与此同时, Kubernetes 在一个蓬勃发展的市场中仍然是领先的容器编排工具, 预计在 2020 年的营收将从去年的 7 亿 6200 万美圆增加至近 27 亿美圆。根据最近一份关于容器和云的编排的 SDxCentral 报告的调查, 64% 的受访者说他们使用的是 Kubernetes。相比之下, 36% 的人说他们在使用 Swarm, 18% 的人说他们在使用 Mesos。浏览器
据传, AWS 还将与 VMware 就开发企业数据中心软件进行谈判。若是这一状况属实, 这将会将 AWS 移动到私有云中, 并容许它与微软 Azure 栈直接竞争, 这使得企业能够在本身的数据中心中构建 Azure 公有云的私有云版本。bash
Tips 1:全面自动化配备服务器
不须要解决任何的可扩展问题,你就能够顺利地过渡到使用 Docker。你能够开始使用Docker,而不用尝试像 CI / CD,集群,负载均衡服务以及你能够想到的全部其相似部署功能。网络
Docker 只是帮助您构建和分发应用程序。全部的部署功能都须要了解基础。这意味着刚刚开始部署时,只需让开发中的 Docker 运行应用程序,而后尝试从单盒中将其复制到生产之中。架构
Tips 2:使用端口
你知道 Docker 是做为 Dockerized 服务的防火墙吗?你也能够经过端口监听来启用或禁用服务。
例如,若是你正在运行 Flask,Node 或 Rails 应用程序的服务器,则可能会在 8000 端口上进行监听,而后在端口 80(http)和/或 443(https)上设置 nginx 代理该应用程序。
若是您但愿 Web 应用程序服务器不被公开到外部世界,可是仍然能够访问同一网络上的其余容器(例如本例中的 nginx ),那么您只需运行您的容器便可 -p 8000 完成。
若是您确实但愿将 Web 应用服务器公开到外部,也很是的简单:-p 8000:8000。其格式是 HOST:CONTAINER,并会将容器的端口发布到主机,这又使外部能够访问该端口。
Ghost 1.0 在今天发布了,其中包括一个新的编辑器和一个新的安装方法。
Docker 能够轻松使用 Ghost,只需按照如下步骤操做,不到 5 分钟便可完成一个博客。
建立 Docker 镜像
我将 Ghost 1.0 的 DockerFile 放在了一块儿。因为该项目添加了 Ghost CLI,它比之前的版本简单得多。
我已经将个人图像推送到 Docker Hub:alexellis2/ghost:1.0
,因此你能够跳过下一步,除非你想本身从新构建图像。
本身构建镜像(可选)
输入:
$ git clone https://github.com/alexellis/ghost-on-docker/
$ cd ghost-on-docker/1.0/x86_64
$ docker build -t alexellis2/ghost:1.0 .复制代码
运行博客
建立完成以后就能够进行运行。
$ docker run -p 2368:2368 --name ghost -ti alexellis2/ghost:1.0复制代码
你能够在新窗口中登陆进博客:http://localhost:2368
用全新设计的仪表盘列出你的帖子。
编辑:
完成!
如今,Mac/Windows 平台上的 Docker 已经添加了监控功能,很酷对吧?今后之后,咱们不再须要猜想咱们的开发机器和测试环境的运行性能了!
首先,对于初学者来讲,咱们原本就须要随时随地关注这些内容。其次,为了真正了解环境,咱们须要了解环境中实例的运行内容以及运行方式。最后,了解环境和它对工做负载的影响是颇有必要的。
了解 Mac/Windows 平台上 Docker 的进程 咱们首先开始配置安装。如下屏幕截图来自Mac,但步骤也适用于 Windows。咱们如今将在咱们的 Docker 上启用 Daemon 指标,格式为 Prometheus。
打开 Docker 的偏好设置菜单
找到Daemon
菜单,并点击Advanced
。
在代码框内,咱们将添加一条语句来启用指标。在debug
下面添加如下代码行:"metrics-addr":"0.0.0.0:9323"
。
点击 Apply & Restart
而后等待Docker重启。
测试。打开任意浏览器访问:http://127.0.0.1:9323/metrics
。
使用 Prometheus 来监控
咱们 Mac/Windows 的 Docker 如今正在建立 Prometheus 格式的指标。
接下来,让咱们启动一个 Prometheus 堆栈,并使用这些新建立的指标。
将 Prometheus 栈克隆到本地:git clone https://github.com/vegasbrianc/prometheus.git .
编辑prometheus/prometheus.yml
文件。在文件的末尾找到static_configs
。
使用运行Docker的机器的主机名或IP输入: targets: ['hostname-here:9323']
。
保存并退出
开启Prometheus栈:docker-compose up -d
配置 Grafana
在浏览器中打开Grafana:http://0.0.0.0:3000
。
登陆:用户名admin
,密码foobar
。
登陆后,系统将用绿色按钮提示添加数据源。点击Add Data Source
。
在数据源中输入: Name: Prometheus
Tpye: Prometheus
URL: http://prometheus:9090
Access: Leave default
HTTP Auth: Basic Auth
user: admin
password: foobar
点击 Save & Test
。
点击右上角的 Grafana 图标,将鼠标悬停在仪表板上,而后选择导入。Load
。
除了数据源的最后一个字段,其余内容都填充完毕了。
咱们设置了 Docker Daemon 记录指标,配置并启动了 Prometheus 堆栈以使用这些指标,最后导入了 Grafana 仪表板做为起点。您如今应该可以建立一些有趣的图形和报告了。
这一期的『航海日志』就到这里,下期再浪~
参考连接
https://www.sdxcentral.com/articles/news/aws-plan-battle-google-using-kubernetes/2017/07/
https://nickjanetakis.com/blog/
https://blog.alexellis.io/try-ghost-1-0-in-docker/
https://www.brianchristner.io/how-to-monitor-docker-for-mac-windows/
做者介绍
杨雪颖 Misha:DaoCloud 技术顾问,能文能撸码の通用型选手,兼 Labs 吉祥物。
上期回顾:
用 Docker 现代化你的传统企业!|航海日志 Vol.22