搭建云平台和DevOps实践环境

简介: 本文的目标是通过安装部署Docker Data Center和Jenkins,搭建一个mini的云平台和DevOps实践环境。基于这套实践环境,可以部署微服务体系和提升DevOps实践能力。1 整体规划1.1 拓扑架构1.2 基础设置硬件配置最低:2核 CPU,4G 内存,30G 硬盘。

本文的目标是通过安装部署Docker Data Center和Jenkins,搭建一个mini的云平台和DevOps实践环境。
基于这套实践环境,可以部署微服务体系和提升DevOps实践能力。

1 整体规划

1.1 拓扑架构

img_74d8d3f181287b6f599399b96425ee92.png

1.2 基础设置

硬件配置
最低:2核 CPU,4G 内存,30G 硬盘。
建议:8核 CPU,16G 内存,100G 硬盘。

编号 IP OS 主机名 角色 环境 说明
A 192.168.1.101 CentOS7.4 ddc_node01 Manager Global 运行UCP和Jenkins的节点
B 192.168.1.102 CentOS7.4 ddc_node02 Worker Global 运行DTR的节点
C 192.168.1.103 CentOS7.4 ddc_node03 Worker Data 运行有状态服务容器的节点
D 192.168.1.104 CentOS7.4 ddc_node04 Worker Dev 运行无状态服务容器和GFS Server的节点
E 192.168.1.105 CentOS7.4 ddc_node05 Worker Dev 运行无状态服务容器和GFS Server的节点

1.3 DDC

DDC是Docker Data Center的简称,是Docker公司推出的容器化数据中心管理平台。它的编排核心是swarm,包含2个主要组件UCP和DTR。
与K8s和Mesos DC/OS对比,DDC更加简洁和易用;安装包都是免费的,商业许可按节点收费。

组件 全称 安装节点 版本 说明
UCP Universal Control Plane 192.168.1.101 3.0.0 管理节点,服务,镜像,容器,网络,数据卷等。
DTR Docker Trusted Registry 192.168.1.102 2.5.0 管理内部docker镜像库。

1.4 配套组件

组件名 安装节点 说明
Jenkins 192.168.1.101 配置CICD任务。
GlusterFS 192.168.1.104
192.168.1.105
为mysql容器提供持久化存储。
GitLab 公司内网服务器 源码库。
Nexus 公司内网服务器 Maven依赖库。
DNS 公司内网服务器 如果公司没有,在任意节点上装一个DNS Server。

1.5 域名配置

自定义域名 yourdomain.com
CNAME ucp.yourdomain.com 192.168.1.101
dtr.yourdomain.com 192.168.1.102
jenkins.yourdomain.com 192.168.1.101

1.6 镜像规划

基础镜像 通用镜像 应用镜像
base common app
openjdk redis
mysql
jhipster-registry
jhipster-console
jhipster-logstash
jhipster-elasticsearch
jhipster-alerter
jhipster-curator
jhipster-dashboard
jhipster-zipkin
microservice1
microservice2

2 组件安装

2.1 准备工作

安装UCP和DTR时会从docker公共镜像库下载几十个镜像文件,如果不能访问store.docker.com,可以先把镜像文件下载到本地,然后离线安装。
如何离线安装UCP和DTR,请参考这里

2.2 UCP安装

安装节点 192.168.1.101
域名设置 https://ucp.yourdomain.com
管理账号 admin,密码会在安装时提示。

在安装节点上执行命令:

 $ docker container run --rm -it --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp:3.0.0 install --host-address 192.168.1.101 --interactive

更加完整的UCP安装文档,请参考这里

2.3 DTR安装

安装节点 192.168.1.102
域名设置 https://dtr.yourdomain.com
管理账号 admin,密码和UCP一致。

在安装节点上执行命令:

$ docker run -it --rm docker/dtr:2.5.0 install --dtr-external-url https://dtr.yourdomain.com --ucp-node tx-aaw001 --ucp-username admin --ucp-url https://ucp.yourdomain.com --ucp-insecure-tls

更加完整的DTR安装文档,请参考这里

2.4 安装CA认证

UCP会从DTR上拉取镜像来启动服务,UCP要获取DTR的CA证书;安装完UCP和DTR后,在UCP节点上执行以下命令:

$ curl -k https://dtr.devops.rootcloud.com/ca -o /etc/pki/ca-trust/source/anchors/dtr.devops.rootcloud.com.crt 
$ update-ca-trust
$ systemctl restart docker.service

2.5 GlusterFS安装

安装模式 安装位置
宿主机 192.168.1.104 (master)
192.168.1.105

​更加完整的GlusterFS安装文档,请参考这里

2.6 Jenkins安装

a, 安装软件包
软件包 安装模式 版本 安装节点 安装路径
openjdk 宿主机 1.8 192.168.1.101 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.***
maven 宿主机 3.5.3 192.168.1.101 /usr/local/maven/apache-maven-3.5.3
docker 宿主机 17.06.2-ee-10 192.168.1.101 /usr/bin/
b, 安装jenkins
安装模式 安装节点 *端口
宿主机 192.168.1.101 8088

Jenkins安装明细,请参考这里

c, Jenkins全局设置
菜单 项目 内容
系统管理 - 插件管理 搜索gitlab, git, maven,docker相关的插件 直接安装重要插件:Maven Integration,Maven Artifact ChoiceListProvider (Nexus),GitLab,Gitlab Hook,Build Authorization Token Root,CloudBees Docker Build and Publish,Docker-build-step,Docker。
系统管理 - 配置 配置gitlab插件和git插件 参考这里
系统管理 - 系统配置 Maven项目配置 - Local Maven Repository maven安装时设置的本地库:/var/lib/maven/repo
系统管理 - 全局工具配置 Maven Configuration - Default settings provider /usr/local/maven/apache-maven-3.5.4/conf/settings.xml
Maven Configuration - Default global settings provider /usr/local/maven/apache-maven-3.5.4/conf/settings.xml
JDK - JDK安装 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.***
Maven - Maven安装 /usr/local/maven/apache-maven-3.5.4/
Git - Git安装 /usr/local/git/bin/git
注意:路径里包括可执行文件的名字(最后那个git)
Docker - Docker 安装 name: docker17.06.2-ee-10,Installation root: /usr/bin/
d, 创建Jenkins任务

更加完整的任务配置说明,请参考这里




你现在的气质里,藏着你走过的路,读过的书,爱过的人。


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
1月前
|
运维 安全 Devops
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
在数字化转型的浪潮中,企业对于IT基础设施的要求越来越高,不仅需要快速响应市场变化,还要确保系统的稳定与安全。本文深入探讨了如何通过融合DevOps文化和容器化技术来构建一个高效、稳定且易于管理的云基础设施。通过实际案例分析,阐述了持续集成/持续部署(CI/CD)流程的优化、自动化测试、监控以及日志管理等关键环节的实施策略,旨在为运维专业人员提供一套切实可行的解决方案。
29 3
|
1月前
|
运维 Kubernetes Devops
构建高效可靠的云基础设施:DevOps与容器化技术融合实践
【2月更文挑战第30天】 在当今快速迭代和竞争激烈的软件开发领域,传统的IT运维模式已难以满足业务发展的需要。本文将探讨如何通过整合DevOps文化和容器化技术,构建一个既高效又可靠的云基础设施。文章首先回顾了DevOps的核心理念及其对运维工作流的影响,接着深入讨论了容器化技术的优势和挑战,并提出了一套结合两者的实施方案。最后,通过案例分析展示了该方案在实际环境中的应用效果和潜在益处。
|
11天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
13天前
|
运维 Devops 持续交付
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
【4月更文挑战第13天】 在当今快速迭代和持续部署的软件开发环境中,传统的IT运维模式已难以满足业务发展的需求。本文聚焦于如何通过融合DevOps理念与容器化技术,构建一个高效、稳定且易于管理的云基础设施。文章将探讨持续集成/持续交付(CI/CD)流程的优化、容器化技术的最佳实践、以及微服务架构下的应用管理,以期为企业提供一种改进运维效率、加速产品上市时间,同时保障系统稳定性的解决方案。
|
28天前
|
运维 Kubernetes Devops
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
随着企业数字化转型的不断深入,传统的IT运维模式已经难以满足快速迭代和持续交付的需求。本文将探讨如何通过结合DevOps文化与容器化技术,构建一个既高效又稳定的云基础设施。文章首先概述了DevOps的核心理念及其在现代运维中的重要性,然后详细介绍了容器化技术,特别是Docker和Kubernetes在实现微服务架构中的应用。最后,文中通过案例分析展示了这一融合实践如何在真实环境中提升运维效率和系统稳定性。
21 7
|
1月前
|
运维 Kubernetes 监控
构建高效稳定的云基础设施:DevOps与容器化技术融合实践
在当今云计算时代,企业追求敏捷性、可扩展性以及成本效益的云基础设施。本文将探讨如何通过DevOps文化与容器化技术的融合,打造一个既高效又稳定的运维环境。文章不仅阐述了DevOps和容器化技术各自的优势,还提供了一个具体的实施案例,展示了这种结合如何优化资源利用、提高部署速度并降低运维复杂性。
|
3月前
|
运维 监控 Devops
构建协同创新的未来:DevOps文化与实践
在当今快节奏的技术世界中,DevOps文化和实践成为了企业实现卓越软件交付和持续创新的关键。本文将探讨DevOps的核心原则、实施步骤以及它如何促进团队协作、提高效率,并引领着未来协同创新的道路。
28 2
|
4月前
|
存储 安全 Devops
DevOps 中 API 治理的工程问题和落地实践案例
API 的全生命周期管理与 Devops 是紧密相关的,Devops 中的各个环节都会对 API 治理有一定的业务诉求,很多时候企业需要一体化的 API 管理平台来提供相应的业务能力。 在 Devops 工作流中进行 API 全生命周期管理时,成功交付的核心其实就是为企业提供工程问题的解决能力。那么所谓工程问题都有哪些呢?
79 0
DevOps 中 API 治理的工程问题和落地实践案例
|
7月前
|
存储 IDE API
在云平台 ABAP 编程环境上编写第一段 ABAP 程序
在云平台 ABAP 编程环境上编写第一段 ABAP 程序
84 0
|
7月前
|
安全 Devops 测试技术
DevOps高效开发管理-云效实践初体验
本实验带您体验通过云效产品,实现快速持续交付。
2032 0

热门文章

最新文章