如何构建Piel.io的微服务交付第一篇:搭建Rancher Server

简介:

几个月前,我们开始尝试在我们的网站Piel.io上使用Rancher来构建我们的第一个微服务,在此期间,Rancher发布了1.0版。所以我觉得这是一个很好的时间点,我将通过三篇blog跟大家分享一下我们是如何通过Rancher来构建Piel.io的微服务交付的。


本文希望可以帮助到那些刚刚接触Rancher的用户,对Rancher已经十分熟悉的技术大拿们可以跳过。第一篇,我将介绍下如何搭建自己的Rancher Server。第二篇,我将介绍下如何构建、配置以及整合自己的Docker Registry。第三篇,我们将讨论下如何通过Stack向企业提供一个可用的平台,可用于描述、部署和管理多种的业务应用。


首先,准备一台虚拟机。我是从vutlr.com上购买了一个Ubuntu 14.04 LTS. 


前提:安装Docker 


wKiom1iBXpjhf-A6AAAGZC3-p9c269.png


安装完成后,用docker –v命令进行验证:


wKioL1iBXqXA1NKdAAAH2vYKRIA996.png


成功,可以继续。


接下来下载最新的Rancher,我们可以不指定Tag。所有可以使用的Tag可从此获得:https://hub.docker.com/r/rancher/server/tags/ 


wKiom1iBXrmDQmZhAAAFkkw2nOM246.png

wKioL1iBXsyALH8eAAA8EGYl96o382.png



成功!


容器环境下,可以通过volume来配置数据保持。我们先创建一个目录:


wKioL1iBXtmxyE0iAAAFmqc_PE4284.png


运行刚才已下载的Rancher image

注:docker run可以直接下载Rancher image,为了让大家了解整个过程我在此把这两步拆解了


wKiom1iBXueSQIRNAAAWqawTDYo225.png


看上去已经成功了,我们来验证一下:


wKiom1iBX4LxPkjJAAAe7XOk9kY533.png


启动了,但名字有点丑陋(Docker的自动命名导致),所以我干掉了这个容器,重新运行命令并增加 --name rancher-server参数。


wKioL1iBX5Oj77n3AAA3MulZ7Eo945.png


接下来访问Rancher Server主页:


wKiom1iBX6yzbgaQAAFYb7PU3Bg243.png


好极了,现在Rancher Server已经启动,可以通过8080端口访问并配置了数据保持,当我们升级或者迁移Rancher Server时所有的配置都可以被保存。


接下来我把主题从浅色设置为了深色,你可以跳过此步骤。


wKioL1iBX8HSQhcUAAAS5ngKgfk201.png


同时,我们还可以通过页面右下角的设置切换显示语言,可进行一键切换。(已提供中文支持)


wKiom1iBX9Hy9G_1AAF51r3Eebs946.png


现在任何人都可以通过此URL访问到Rancher,所以我启用了Github认证(Rancher目前支持AD、Github、本地账户以及OpenLDAP四种认证方式)。


系统管理 > 访问控制


根据页面说面完成访问控制配置,我在此就不再重复说明了。


wKiom1iBX_HSv_ksAAH13OXNcGI642.png


输入客户端ID以及客户端秘钥,Github认证页面将弹出并要求确认和授权。


配置完成后,我们已经成功设置了Rancher Server的访问控制。


wKioL1iBYAbgds7UAAE9C-d5g1o461.png


让我们重启回顾下我们完成了哪些工作:


我们下载了Rancher Server 1.2.0-pre3的容器镜像并使其运行在端口8080,启动了数据保持方便日后的升级和运维操作。同时启用了通过github进行认证的访问控制。 


下一篇文章,我会创建一个Docker Registry并且介绍如何在Rancher中使用它。




本文转自 RancherLabs 51CTO博客,原文链接:http://blog.51cto.com/12462495/1893294
相关文章
|
2月前
|
负载均衡 Java API
《深入理解Spring》Spring Cloud 构建分布式系统的微服务全家桶
Spring Cloud为微服务架构提供一站式解决方案,涵盖服务注册、配置管理、负载均衡、熔断限流等核心功能,助力开发者构建高可用、易扩展的分布式系统,并持续向云原生演进。
|
9月前
|
机器学习/深度学习 设计模式 API
Python 高级编程与实战:构建微服务架构
本文深入探讨了 Python 中的微服务架构,介绍了 Flask、FastAPI 和 Nameko 三个常用框架,并通过实战项目帮助读者掌握这些技术。每个框架都提供了构建微服务的示例代码,包括简单的 API 接口实现。通过学习本文,读者将能够使用 Python 构建高效、独立的微服务。
|
弹性计算 Kubernetes API
构建高效后端服务:微服务架构的深度剖析与实践####
本文深入探讨了微服务架构的核心理念、设计原则及实现策略,旨在为开发者提供一套系统化的方法论,助力其构建灵活、可扩展且易于维护的后端服务体系。通过案例分析与实战经验分享,揭示了微服务在提升开发效率、优化资源利用及增强系统稳定性方面的关键作用。文章首先概述了微服务架构的基本概念,随后详细阐述了其在后端开发中的应用优势与面临的挑战,最后结合具体实例,展示了如何从零开始规划并实施一个基于微服务的后端项目。 ####
|
弹性计算 持续交付 API
构建高效后端服务:微服务架构的深度解析与实践
在当今快速发展的软件行业中,构建高效、可扩展且易于维护的后端服务是每个技术团队的追求。本文将深入探讨微服务架构的核心概念、设计原则及其在实际项目中的应用,通过具体案例分析,展示如何利用微服务架构解决传统单体应用面临的挑战,提升系统的灵活性和响应速度。我们将从微服务的拆分策略、通信机制、服务发现、配置管理、以及持续集成/持续部署(CI/CD)等方面进行全面剖析,旨在为读者提供一套实用的微服务实施指南。
|
机器学习/深度学习 运维 监控
动态服务管理平台:构建高效、灵活的微服务架构基石
动态服务管理平台:构建高效、灵活的微服务架构基石
234 17
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
750 5
|
监控 安全 持续交付
构建高效微服务架构:策略与实践####
在数字化转型的浪潮中,微服务架构凭借其高度解耦、灵活扩展和易于维护的特点,成为现代企业应用开发的首选。本文深入探讨了构建高效微服务架构的关键策略与实战经验,从服务拆分的艺术到通信机制的选择,再到容器化部署与持续集成/持续部署(CI/CD)的实践,旨在为开发者提供一套全面的微服务设计与实现指南。通过具体案例分析,揭示如何避免常见陷阱,优化系统性能,确保系统的高可用性与可扩展性,助力企业在复杂多变的市场环境中保持竞争力。 ####
195 2
|
监控 持续交付 API
深入理解微服务架构:构建高效、可扩展的系统
深入理解微服务架构:构建高效、可扩展的系统
250 4
|
消息中间件 监控 安全
构建高效微服务架构:最佳实践与挑战
在现代软件开发中,微服务架构因其高度的可扩展性、灵活性和敏捷性而受到青睐。本文深入探讨了构建高效微服务架构的关键策略,包括服务的划分、通信机制、数据管理、部署与监控等方面的最佳实践。同时,文章也分析了在实施过程中可能遇到的挑战,如服务间的依赖管理、数据一致性问题、安全考量及性能优化等,并提出了相应的解决方案。通过实际案例分析,本文旨在为开发者提供一套实用的指南,帮助他们在构建微服务系统时能够有效规避风险,提升系统的健壮性和用户体验。
|
监控 持续交付 数据库
构建高效的后端服务:微服务架构的深度解析
在现代软件开发中,微服务架构已成为提升系统可扩展性、灵活性和维护性的关键。本文深入探讨了微服务架构的核心概念、设计原则和最佳实践,通过案例分析展示了如何在实际项目中有效地实施微服务策略,以及面临的挑战和解决方案。文章旨在为开发者提供一套完整的指导框架,帮助他们构建出更加高效、稳定的后端服务。

热门文章

最新文章