Ops:命名规范
前言
好的命名规范见名知义,可以极大的提高工作效率,对于运维工作的标准化至关重要,这里,分享本DevOps小组内讨论的命名规范,希望有参考意义,如果小伙伴们有好的建议或补充,欢迎留言。
1. ansible inventory 命名规范
1.1. 目录结构命名规范
inventory/
|-- all-vars
|-- Aproject
| |-- dev
| |-- online
| |-- pre
| `-- test
`-- Bproject
|-- dev
|-- online
|-- pre
`-- test
1.2. 主机条目命名规范
1.2.1. 主机条目:项目名-环境-模块-ip 例如:hnds-online-app-242(运营商无关,以-连接)
1.2.2. 主机组:
项目名-环境[-模块]-* 例如:hnds-online-web-*; hnds-online-*(开发测试不做分组,*只匹配主机条目)
项目名-环境-模块-功能 例如:dais-online-app-user(线上环境模块按需要分组)
2. 服务器上/etc/hosts 文件内容命名规范
ip 功能模块.项目名
例如:172.31.65.248 mysqlslave-crm.hnds; 172.31.65.250 mongodb-1.hnds
3. jumpserver中主机的命名规范
Hostname: 项目-环境-模块-ip 例如:dais-online-app-34
Comment: 运营商 区域 例如:azure singapore;aws hongkong
4. 域名、nginx配置文件以及配置文件中upstream组、静态网页目录命名规范
4.1 域名命名规范
项目-环境-模块-角色.二级域,例如:dais-dev-www.glinux.top; hnds-test-manager.glinux.top (角色:www、manager、api、market等)
4.2 nginx配置文件命名
4.2.1. 域名.conf,例如:dais-dev-www.glinux.top.conf;hnds-test-manager.glinux.top.conf
4.2.2. upstream-项目-环境.conf,例如:upstream-hnds-dev.conf
4.3 nginx关于upstream组命名
项目-环境-模块-角色,例如: hnds-dev-manager-api、 hnds-dev-manager-websocket、dais-online-user-websocket
4.4 静态网页目录命名规范
仓库名-环境(分支),例如:hnds-bitcoin-online
5. gitlab仓库的命名规范以及tag的命名规范
5.1. gitlab仓库命名规范
5.1.1. 先创建new group(fe/java/ios/andriod/c),例如:java、ios。
5.1.2. 再创建new subgroup(项目组),例如:hnds,hnds。
5.1.3. 再创建new project(项目模块),例如:manager,user,utils。
5.1.4. 例如:git@gitlab.htrader.cn:java/hnds/utils.git 注:项目组名必须全部小写
5.1.5. jar包命名规范 项目组-项目模块:hnds-utils.jar
5.1.6. 仓库权限单独另外设置
5.2. tag的命名规范
主版本.次版本.bug版本.内部版本(时间)-项目组-项目模块,例如:1.4.1.20180428-hnds-utils
6. jenkins的job以及视图的命名规范
6.1. job的命名规范
6.1.1. 环境-项目组名-项目模块名,例如: dev-hnds-utils
6.1.2. 项目无关:运维-功能,例如:ops-ansible,ops-wiki
6.2. 视图命名规范
项目/环境/分类,例如hnds/online/api,hnds/online/jar,hnds/online/h5
7. 服务器hostname的命名规范
项目-环境-模块[-角色]-ip,例如:dais-online-app-33, dais-online-mysqlmaster-pay-17
特殊情况:web-172.16.229.226,表多项目的web服务器
8. 发布应用至服务器目录和文件夹命名规范
发布到服务器上的应用:
8.1. 后端jar包: 在/data/server/项目组-项目模块,比如,/data/server/hnds-utils
8.2. 前端静态页面: 在/data/static/项目组-项目模块-环境,比如/data/static/hnds-web-dev
8.3. 日志目录: jar包的日志存放在/data/logs/项目组-项目模块,比如/data/logs/hnds-utils/
8.4. 数据库: 数据目录/data/mysqldata,备份目录/databackup
参考
• app – Application Server (non-web)
• sql – Database Server
• ftp – SFTP server
• mta – Mail Server
• dns – Name Server
• cfg – Configuration Management (puppet/ansible/etc.)
• mon – Monitoring Server (nagios, sensu, etc.)
• prx – Proxy/Load Balancer (software)
• ssh – SSH Jump/Bastion Host
• sto – Storage Server
• vcs – Version Control Software Server (Git/SVN/CVS/etc.)
• vmm – Virtual Machine Manager
• web – Web Server
Ops:命名规范的更多相关文章
- JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...
- Java命名规范
驼峰法则: 将所有字母都小写(包括缩写),然后将单词的第一个字母大写. 每个单词的第一个字母都大写,来得到大驼峰式命名. 除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名. 为避免歧 ...
- JavaScript知识点总结(命名规范,变量的作用域)
命名规范 有人说JavaScript的宽容性是这个语言最糟糕的方面之一.比如说想把2个数字加在一起,JavaScript会把其中一个数字解析成字符串,那么就会得到一个奇怪的字符串,而不是2个数字的和. ...
- js的命名规范
js的命名规范 1.驼峰命名法:首字母是小写的,接下来的字母都以大写字符开头.例如: var testValue = 0; var oneValue = 10; 2. ...
- 浅谈Android编码规范及命名规范
前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...
- [No000099]软件版本命名规范
软件版本阶段说明 Base: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha: 此版本表示该软件在 ...
- Google C++命名规范
时间:2014.03.02 地点:基地 -------------------------------------------------------------------------------- ...
- javascript命名规范
javascript命名规范 3.命名 命名的方法通常有以下几类: a).命名法说明 1).camel命名法,形如thisIsAnApple 2).pascal命名法,形如ThisIsAnApple ...
- Android 命名规范 (提高代码可以读性)
android文件众多,根据名称来辨别用途很重要,因此命名要规范 这篇文章可参考:Android 命名规范 (提高代码可以读性) 刚接触android的时候,命名都是按照拼音来,所以有的时候想看懂命名 ...
随机推荐
- 23.python虚拟环境配置
1.安装 virtualenvwrapper-win pip3 install virtualenvwrapper-win 2.然后使用workon查看是否安装成功(workon是简化操作的神级命令之 ...
- GitHub上的计算机视觉学习资料推荐
9月份将要读研,导师是做cv的,最近学习时找到了不少的计算机视觉的资料,记录一下,同时也分享给需要的朋友 assmdx/ComputerVisionDoc AceCoooool/interview-c ...
- axios封装的拦截器的应用
axios拦截器 页面发送http请求,很多情况我们要对请求和其响应进行特定的处理:如果请求数非常多,单独对每一个请求进行处理会变得非常麻烦,程序的优雅性也会大打折扣.好在强大的axios为开发者 ...
- css写斜角
项目开发中遇到了这样的效果,百度了一波,可以使用css3的伪类实现: /*斜角公用*/1.外层的div加class='wrapper' 并需要设置相对定位 .wrapper:before { -moz ...
- TensorFlow——TensorBoard可视化
TensorFlow提供了一个可视化工具TensorBoard,它能够将训练过程中的各种绘制数据进行展示出来,包括标量,图片,音频,计算图,数据分布,直方图等,通过网页来观察模型的结构和训练过程中各个 ...
- netcore使用IOptions
{ "Logging": { "LogLevel": { "Default": "Information", " ...
- Js 数组按数量分部!
使用 reduce 将数组分为几个部分,每个部分最多10个! 相比其他语言使用 js 实现这个逻辑非常的简单方便! var group = function (source, step) { if ...
- Flutter兼容AndroidX
参考官方文档:https://flutter.dev/docs/development/packages-and-plugins/androidx-compatibility 第一步 distribu ...
- P1850 换教室 期望dp
P1850 换教室 题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程. 在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上.在第 ii(1 \leq ...
- 【ARM】---STM32位带操作总结---浅显易懂
正在准备做毕业设计,配置LED_Config()的时候,又看到了位带操作的宏定义,我又嘀咕了,什么是位带操作,一年前在使用位带操作的时候,就查阅过好多资料,Core-M3也看过,但是对于博主这种“低能 ...