Cloudant 数据层





0/5 (0投票)
IBM Cloudant Data Layer Local Edition 是一个数据库管理系统 (DBMS) 平台,旨在为您自己的数据中心提供类似 IBM Cloudant Database as a service (DBaaS) 的功能。
引言
尺寸和速度 > 数据和计算 > 存储和计算能力 > 云和可扩展性
每天,世界各地都在新建数据中心,云存储空间不断扩展,价格也随之下降。企业正在将其宝贵数据迁移到云端,以获得无限的空间、更强的处理能力、服务可用性、可扩展性、移动性、冗余和数据持久性,从而充实其业务。
并非所有客户都愿意信任云安全,或者能够承担在所有运行时间内保持在线的责任。他们无需因此而忍受其业务中缺乏云服务。这就是为什么云服务提供商经常提供私有云服务或本地部署解决方案。
背景
IBM Cloudant Data Layer Local Edition
IBM Cloudant Data Layer Local Edition 是一个数据库管理系统 (DBMS) 平台,旨在为您自己的数据中心提供类似 IBM Cloudant Database as a service (DBaaS) 的功能。
Cloudant Local 将 Cloudant Managed DBaaS 的丰富功能、行为和工具打包,供各种规模的企业使用。它提供弹性可扩展性,因为它运行在廉价的服务器上,您可以轻松地在集群中添加或删除服务器来平衡流量波动。它还提供多数据中心和数据移动性服务,通过在数据中心之间或移动设备之间复制数据,以便数据更靠近用户,从而实现快速访问。最后,它提供自适应部署选项,让您可以根据应用程序开发路线图的需求来匹配数据层。
此外
- 您可以在私有云环境中运行 Cloudant Local,以实现最大的隐私性。
- 您可以在公共云平台上的公共云中运行 Cloudant Local,以实现地理位置和流量目标。
- 您可以在混合云(私有云和公共云的组合)中运行 Cloudant Local,以实现最佳的成本、覆盖范围、服务和合规性。
要求
Cloudant Local 需要最少五台服务器才能创建集群
- 1 个主负载均衡器
- 1 个故障转移负载均衡器
- 3 台数据库服务器
它运行在 64 位操作系统上 - Debian (6.0.10)、Ubuntu Server (12.04.4)、Red Hat Enterprise Linux Server (6.5) 或 CentOS (6.5)
Cloudant 开发者版
在本帖中,我们将安装 Cloudant 开发者版。这是一个功能齐全的 Cloudant Local 版本,仅供开发用途授权。限制在于您无法创建集群,并且只能有一个节点。另一方面,与Cloudant Local 的硬件和软件要求安装相比,硬件和软件要求更少。
使用代码
必备组件
由于 Cloudant 开发者版旨在用作开发者的设计和测试工具,因此它被打包为 Docker 标准化的软件开发单元。使用 Docker 部署它非常简单,并允许我们选择最佳的工作环境。
我将展示如何在 Ubuntu 和 Windows 10 上安装 Cloudant 开发者版,但首先我们需要安装 Docker。
在 Ubuntu 上安装 Docker
在 Linux 上安装 Docker 通常涉及验证和准备工作(正如 Linux 软件通常那样)
在开始之前,我们需要了解两件事
- 内核版本:Docker 可以安装在内核版本高于 3.10 的 64 位 Ubuntu 版本上
- 发行版本:我们需要为下载命名软件包。
接下来的步骤是
- 更新软件包信息并安装 https 和 CA 证书
$ sudo apt-get update $ sudo apt-get install apt-transport-https ca-certificates
- 添加新的 GPG 密钥(在找到证书指纹之前跳过此步骤)
$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
注意:当请求存储库拉取时,证书指纹将显示为错误消息。
- 编辑或创建 /etc/apt/sources.list.d 中的 docker.list 文件 - 根据您的 Ubuntu 版本,您需要将文件内容设置为以下之一
Ubuntu Precise 12.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-precise main
Ubuntu Trusty 14.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-trusty main
Ubuntu Wily 15.10
deb https://apt.dockerproject.org/repo ubuntu-wily main
Ubuntu Xenial 16.04 (LTS)
deb https://apt.dockerproject.org/repo ubuntu-xenial main
要编辑文件,您需要 root 权限。
- 运行 APT 软件包更新
$ sudo apt-get update
- 我们需要清除旧的存储库(如果存在)
$ sudo apt-get purge lxc-docker
- 设置新的存储库供 APT 拉取 Docker
$ apt-cache policy docker-engine
- 安装附加软件包以扩展 Docker 功能。根据您的 Ubuntu 版本,此步骤可能需要执行一个或多个命令
Ubuntu Precise 12.04 (LTS)
Ubuntu Trusty 14.04 (LTS)
$ sudo apt-get install linux-image-extra-$(uname -r)
Ubuntu Wily 15.10
Ubuntu Xenial 16.04 (LTS)
- 最后更新,安装并运行 Docker
$ sudo apt-get update $ sudo apt-get install docker-engine $ sudo service docker start
- 检查 Docker 是否运行正常
$ sudo docker run hello-world
这便是 Ubuntu 上 Docker 安装的全部内容
在 Windows 10 上安装 Docker
它就像其他 Windows 安装一样简单
- 从 Docker 网站下载并开始安装
- 接受许可协议
- 完成安装并检查 Docker
安装 Cloudant 开发者版
安装 Docker 后,对于 Windows 和 Ubuntu 环境,Cloudant 开发者版的安装都非常快速简单。这是一个包含许可协议在内的四步安装过程。
- 从 Docker 存储库拉取 Cloudant 开发者版
docker pull ibmcom/cloudant-developer
- 使用默认设置启动 Cloudant Local
docker run --privileged --detach --volume cloudant:/srv --name cloudant-developer --publish 8080:80 --hostname cloudant.dev ibmcom/cloudant-developer
- 接受许可协议
docker exec -ti cloudant-developer cast license –console
- 清除数据库
docker exec cloudant-developer cast database init -v -y -p pass
最后,您现在拥有了一个完全可用的本地版 Cloudant 数据库
在 Ubuntu 上
以及在 Windows 10 上
重复所有这些步骤,您将欣喜地发现 Cloudant Local 的工作速度有多快,过程有多顺畅。
您还可以设计和测试索引和搜索查询,而不会有生产环境中停机的风险。
本地测试
在之前的帖子中,我们创建了简单的 IoT 示例,用于将数据存储在 Cloudant 数据库中,并且我们对收集的数据进行了一些演示索引和搜索。现在,我们可以重用所有这些示例,将其应用于开发者机器上的本地安装。例如,模拟器代码现在可以将数据本地提交到安装在 Windows 10 下的 Cloudant 开发者版。这样,我们将拥有一个与公共网络隔离的开发环境,并拥有适用于源代码管理和离线模式的解决方案,以避免数据冲突。
代码中的变化是地址不再是 Cloudant DBaaS URL,而是 localhost。
#region CreateHttpClient private static HttpClient CreateHttpClient(HttpClientHandler handler, string user, string database) { return new HttpClient(handler) { BaseAddress = new Uri(string.Format("https://:8080/{1}/", user, database)) }; } #endregion CreateHttpClient
仅此一项更改,我们就得到了预期的结果
- 处理速度快,因为它不通过网络传输任何数据
- 完全访问所有 Cloudant DB 功能
关注点
IBM Cloudant 为我们提供了一整套工具和服务,用于高效的应用程序和业务开发。我们可以依靠每个路线图阶段的高质量解决方案来规划结果和增长。IBM Cloudant 开发者版让开发者能够舒适地在其首选操作系统和工具集上工作
IBM Cloudant Data Layer Local 版满足了企业在隐私、可访问性和价格方面的期望。
IBM Cloudant Managed DBaaS 让我们拥有云的自由。
新的通用 No-SQL 数据库平台使我们能够一次开发,并在移动设备和个人设备、私有集群或云中重用代码,为用户提供快速的结果。