搭建云平台和DevOps实践环境

本文涉及的产品
.cn 域名,1个 12个月
简介: 本文的目标是通过安装部署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任务

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




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


目录
相关文章
|
10天前
|
运维 Devops 持续交付
DevOps实践:持续集成与持续部署的黄金法则
在软件工程领域,DevOps作为一种文化和实践的集合,旨在加强开发(Dev)与运维(Ops)之间的协作与整合。本文深入探讨了持续集成(Continuous Integration, CI)和持续部署(Continuous Deployment, CD)的概念、重要性以及实施策略,同时结合真实案例分析其在实际运维工作中的应用效果。文章旨在为读者提供一套系统的方法论,以实现软件开发流程的自动化、效率提升及风险降低。 【7月更文挑战第17天】
|
3天前
|
运维 监控 Devops
DevOps实践:持续集成与持续部署的黄金路径
在数字化时代,快速迭代和高质量软件交付成为企业竞争的核心。本文深入探讨了DevOps文化下,持续集成(CI)与持续部署(CD)的最佳实践,旨在为读者提供一套实现高效、自动化的软件发布流程的方法论。通过分析现代软件开发的挑战,结合具体案例,本文详细阐述了如何构建一个灵活、高效的CI/CD流水线,以及如何利用监控和反馈机制不断优化这一过程。文章不仅适合运维人员阅读,同时也为软件开发者和项目经理提供了宝贵的参考。
|
3天前
|
机器学习/深度学习 运维 监控
DevOps实践:从自动化部署到性能监控的全面解析
在当今快速发展的软件行业中,DevOps已经成为提升效率和质量的关键。本文将深入探讨DevOps的核心概念、实施步骤及其带来的益处,同时通过实际案例分析展示如何成功实施DevOps流程,并讨论面临的挑战及未来发展趋势。
|
4天前
|
运维 监控 安全
DevOps实践:构建高效运维团队的五大策略
在当今快速发展的IT领域,DevOps已成为提升软件开发和运维效率的关键。本文将深入探讨如何通过实施五大策略来构建一个高效的运维团队,包括自动化流程、持续改进、协作文化、监控与响应以及安全优先。这些策略旨在帮助组织缩短开发周期,提高软件质量,同时确保系统的稳定性和安全性。
20 5
|
2天前
|
运维 监控 Devops
DevOps文化在团队中的推广与实践:加速创新与提升效率的密钥
【7月更文挑战第25天】DevOps文化在团队中的推广与实践是提升软件开发效率、增强团队协作、提高产品质量和推动创新的关键。通过领导支持、教育培训、自动化工具引入、持续反馈和跨功能团队协作等策略,企业可以逐步构建起高效、响应性强、持续改进的DevOps文化。在这个竞争激烈的市场环境中,DevOps文化将帮助团队更好地应对挑战,实现持续的成功和成长。
|
4天前
|
运维 监控 Devops
DevOps实践:构建高效运维流程
【7月更文挑战第23天】在当今快速发展的信息技术时代,DevOps作为一种文化和实践,正在彻底改变软件开发和运维的方式。本文将深入探讨如何通过实施DevOps原则和工具来构建高效的运维流程,旨在帮助读者理解DevOps的核心概念、实施步骤以及面临的挑战,并提供实用的解决方案和最佳实践。文章将重点介绍自动化部署、持续集成、监控和反馈机制等关键要素,以促进团队协作,提升软件交付速度和质量。
|
6天前
|
运维 监控 安全
DevOps实践:从理论到企业级应用的转化之路
【7月更文挑战第21天】在数字化转型的大潮中,DevOps作为一种提升软件开发与运维效率的方法论,正逐步成为企业IT战略的核心。本文将从DevOps的基本概念出发,深入探讨其在企业级应用中的实践路径,包括文化理念转变、工具链的选择与集成、持续交付的实施步骤以及监控与反馈机制的建立。通过分析成功案例,旨在为读者提供一条清晰的DevOps转型路线图,帮助技术团队和运维人员理解并实施DevOps,以实现快速迭代和高效运营的目标。
|
10天前
|
运维 监控 Devops
DevOps实践:持续集成与持续部署在现代软件开发中的作用
【7月更文挑战第17天】本文将深入探讨DevOps文化下的两大核心实践——持续集成(CI)和持续部署(CD)。我们将从理论与实操的角度,剖析这两个概念如何转变软件开发流程、提升产品质量与开发效率。文章旨在为读者提供一套清晰的指导原则,帮助他们在实际工作中更好地实施CI/CD,以适应快速变化的市场需求。
|
10天前
|
运维 Devops jenkins
DevOps文化下的自动化测试实践
【7月更文挑战第17天】随着DevOps文化的兴起,自动化测试成为软件开发过程中不可或缺的一环。本文将深入探讨自动化测试在DevOps环境中的实施策略、工具选择和最佳实践,旨在帮助读者理解如何通过自动化测试提高软件交付的速度与质量。
|
2天前
|
监控 数据可视化 Devops
DevOps的心脏:持续集成与持续部署(CI/CD)的实践之道
在软件开发的快节奏竞赛中,DevOps作为提升交付速度和软件质量的关键战略,其核心组成部分——持续集成(Continuous Integration, CI)与持续部署(Continuous Deployment, CD)——已经成为现代企业追求敏捷性和竞争力的标配。本篇文章将深入探讨如何有效实施CI/CD,通过实际案例分析、统计数据支持以及最佳实践指南,为读者呈现一个全景式的CI/CD实践路径。
12 0