因为Gitlab数据要存放在共享存储,所以本次配置的重头戏倒变成了挂载ISCSI了。

OS:CentOS 7.2
IP:172.16.1.191/192.168.2.191

iSCSI分Target(服务端)[磁盘柜]及Initiator(客户端)[windows,linux],本次安装的是客户端。

1、安装iSCSI-Initiator工具包:

[root@gitxx-gitlab /]# yum -y install iscsi-initiator-utils

2、配置本机iSCSI名称:

[root@gitxx-gitlab /]# vim /etc/iscsi/initiatorname.iscsi

修改Initiator名称如下:

InitiatorName=iqn.1994-05.com.redhat:gitlab.gitxx.net

3、扫描Target设备的共享卷:

[root@gitxx-gitlab /]# iscsiadm -m discovery -t sendtargets -p 192.168.2.1
192.168.2.1:3260,5 iqn.1995-03.com.dothill:01.array.00c0ff261fd6
192.168.2.2:3260,6 iqn.1995-03.com.dothill:01.array.00c0ff261fd6
192.168.3.1:3260,7 iqn.1995-03.com.dothill:01.array.00c0ff261fd6
192.168.3.2:3260,8 iqn.1995-03.com.dothill:01.array.00c0ff261fd6

4、删除192.168.3.x网段的连接(用2.x网段连接就够用了)

[root@gitxx-gitlab /]# rm -rf /var/lib/iscsi/nodes/iqn.1995-03.com.dothill\:01.array.00c0ff261fd6/192.168.3.1\,3260\,7/
[root@gitxx-gitlab /]# rm -rf /var/lib/iscsi/nodes/iqn.1995-03.com.dothill\:01.array.00c0ff261fd6/192.168.3.2\,3260\,8/

5、挂载Target设备的共享卷:

[root@gitxx-gitlab /]# iscsiadm -m node -p 192.168.2.1 --login

6、查看挂载存储信息:

[root@gitxx-gitlab /]# fdisk -l
Disk /dev/sdb: 32.0 GB, 31998345216 bytes, 62496768 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes Disk /dev/sda: 32.0 GB, 31998345216 bytes, 62496768 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes

7、安装多路径冗余程序:

[root@gitxx-gitlab /]# yum -y install device-mapper-multipath

8、配置多路径冗余(MultiPath)

[root@gitxx-gitlab /]# vim /etc/multipath.conf

写入如下内容:

defaults {
udev_dir /dev
polling_interval 10
path_selector "round-robin 0"
path_grouping_policy multibus
prio alua
path_checker readsector0
failback immediate
no_path_retry fail
user_friendly_names yes
}

9、重启多路径冗余服务:

[root@gitxx-gitlab /]# systemctl restart multipathd.service

10、查看多路径虚拟硬盘:

[root@gitxx-gitlab /]# fdisk -l
Disk /dev/mapper/mpatha: 32.0 GB, 31998345216 bytes, 62496768 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes

11、格式化硬盘:

[root@gitxx-gitlab /]# mkfs.ext4 /dev/mapper/mpatha

12、挂载硬盘:

[root@gitxx-gitlab /]# mkdir /data
[root@gitxx-gitlab /]# mount /dev/mapper/mpatha /data

13、添加硬盘自动挂载到启动项:

[root@gitxx-gitlab /]# vim /etc/fstab

在文档末尾添加如下条目(注意设备类型不是Default,而是_netdev)

/dev/mapper/mpatha /data                        ext4    _netdev         0 0

--------------------------------------------------------------------------配置Gitlab开始-----------------------------------------------------------------------------

14、添加清华gitlab源

[root@gitxx-gitlab /]# vim /etc/yum.repos.d/gitlab-ce.repo

在文档中添加如下条目:

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
[root@gitxx-gitlab /]# yum makecache

15、安装Gitlab社区版:

[root@gitxx-gitlab /]# yum install gitlab-ce

16、初始化Gitlab服务:

[root@gitxx-gitlab /]# gitlab-ctl reconfigure

# 到这里为止就可以通过ip地址来访问Gitlab服务了。接下来配置https服务。

17、创建证书目录,并放入证书:

[root@gitxx-gitlab /]# mkdir /etc/gitlab/ssl
[root@gitxx-gitlab /]# ll /etc/gitlab/ssl
total 16
-rw-r--r-- 1 root root 4023 Jul 28 14:33 gitxx.crt
-rw-r--r-- 1 root root 1957 Jul 28 14:33 gitxx.key
-rw-r--r-- 1 root root 3083 Jul 28 14:33 gitxx.pfx
-rw-r--r-- 1 root root 769 Jul 28 14:33 gitxx.pem

18、修改Gitlab配置文件:

[root@gitxx-gitlab /]# vim /etc/gitlab/gitlab.rb

修改如下项目:

external_url 'https://git.gitxx.net:8099/'

gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'admin@gitxx.cn'
gitlab_rails['gitlab_email_display_name'] = 'admin'
gitlab_rails['gitlab_email_reply_to'] = 'admin@gitxx.cn'
gitlab_rails['gitlab_email_subject_suffix'] = '' git_data_dirs({ "default" => { "path" => "/data/gitlab-repository", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } }) gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "alert@gitxx.cn"
gitlab_rails['smtp_password'] = "gitxx"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'alert@gitxx.cn' nginx['enable'] = true
nginx['client_max_body_size'] = '8m'
nginx['redirect_http_to_https'] = true
nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitxx.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitxx.key"
nginx['ssl_ciphers'] = "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256"
nginx['ssl_protocols'] = "TLSv1 TLSv1.1 TLSv1.2"
nginx['ssl_session_cache'] = "builtin:1000 shared:SSL:10m" nginx['hsts_max_age'] = 31536000
nginx['hsts_include_subdomains'] = true logrotate['enable'] = true pages_external_url "https://site.gitxx.net:8098/"
gitlab_pages['enable'] = true gitlab_pages['use_http2'] = true pages_nginx['enable'] = false
gitlab_rails['pages_path'] = "/data/gitlab-pages"

19、修改ningx配置文件:

[root@gitxx-gitlab /]# vim /opt/gitlab/embedded/conf/nginx.conf

删除server项目相关项目,添加如下内容:

    # HTTPS server
#
server {
listen 443 ssl;
server_name git.17track.net; ssl_certificate /etc/gitlab/trusted-certs/dhparam.pem;
ssl_certificate_key /etc/gitlab/trusted-certs/17track.key; ssl on;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on; location / {
root html;
index index.html index.htm;
}
} server {
listen*:80;
server_name git.gitxx.net;
rewrite^(.*)$https://$host$1permanent;
}

20、重启Gitlab服务:

[root@gitxx-gitlab /]# gitlab-ctl restart

21、访问Gitlab服务;
https://172.16.1.191:8099/
root/*******

[THE END]

Linux安装Gitlab,附iSCSI分区挂载说明的更多相关文章

  1. Linux安装gitlab仓库

    linux安装gitlab仓库 注:此安装方式是安装在docker上 1. 安装docker 可根据链接文档进行操作安装 https://www.cnblogs.com/cherish-sweet/p ...

  2. Linux安装时内存如何分区的相关问题

    Linux系统安装时内存如何分区:Linux系统必须的分区是根分区(/)和swap交换分区.普通用户一般分三个区,一个根分区(/),一个家目录(home分区),一个交换分区(swap分区),以80G的 ...

  3. 【Tools】Pycharm 2018专业版 linux安装教程 附2018专业版密钥

    Linux安装pycharm2018专业版 1. 下载安装包 Pycharm下载地址:http://www.jetbrains.com/pycharm/download/ 2.终端打开你的安装包所在路 ...

  4. Linux安装gitlab

    一.GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.安装方法是参考GitLab在GitHub上的Wiki页面. 二.我相信使用过git的开 ...

  5. Linux安装Gitlab服务器

    1. 下载GitLab 下载地址:https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-10.8.2-ce.0.el ...

  6. Linux的文件系统及其硬盘分区挂载原理

    如果您是一位新手,也许 您还不知道如何把文件从Windows拷贝到Linux上吧?下面,我们将说明Unix文件系统以及mount的工作过程,然后再比较详细地讨论. mount的使用和有关选项.如果您已 ...

  7. Linux 添加新磁盘 && 创建分区 && 挂载

    参考: 挂载目录 分区:https://blog.csdn.net/arenn/article/details/78866251 挂载:https://www.jb51.net/article/108 ...

  8. linux安装至少有哪两个分区,各自作用是什么?

    1.至少有/代表根分区,/swap代表的意思是交换分区. 2.swap相当于缓存的作用:

  9. CentOS Linux安装后扩充SWAP分区

    1. 首先先查看目前swap分区大小:     free -hm    total used free shared buffers cached    Mem: 11G 801M 10G 236K ...

随机推荐

  1. a标签中的onclick和href的使用

    onclick和href 链接的 onclick 事件被先执行,其次是 href 属性下的动作(页面跳转,或 javascript 伪链接):  假设链接中同时存在 href 与 onclick,如果 ...

  2. [转帖]Ipvsadm参数详解(常用命令)

    Ipvsadm参数详解(常用命令) 2013年11月29日 12:41:40 怀素1980 阅读数:15901   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...

  3. 通过view实现rest api接口

    Django rest framwork之view 基于Django的View实现Json数据的返回: # _*_ encoding:utf-8 _*_ __author__ = 'LYQ' __da ...

  4. python学习笔记(11)--文件与数据格式化

    文件的概念: 文件是数据的抽象和集合,是存储在辅助存储器上的数据序列,文件是数据存储的一种形式,文件的展现形态,文本文件和二进制文件. 文本文件输出: f.txt文件保存:“我是中国人” >&g ...

  5. mysql高可用架构之MHA,haproxy实现读写分离详解

    MySQL高可用架构之MHA 一.运维人员需要掌握的MySQL技术: 1.基本SQL语句 2.基本的管理[库表数据的管理    权限的管理] 3.容灾       保证数据不丢失. 二.工作中MySQ ...

  6. 莫烦scikit-learn学习自修第四天【内置训练数据集】

    1. 代码实战 #!/usr/bin/env python #!_*_ coding:UTF-8 _*_ from sklearn import datasets from sklearn.linea ...

  7. Navicat软件安装

    Navicat_10.1.7永久注册码 NAVH-WK6A-DMVK-DKW3

  8. peewee 事物 回滚

    peewee 事物 回滚 #!/usr/bin/env python # coding=utf-8 from peewee import * db = MySQLDatabase(host='123. ...

  9. Python——glob模块

    一.作用: 找到匹配上特定格式的所有文件和文件夹,跟windows的文件搜索功能差不多 二.三种匹配符 *代表0个或多个字符 ?代表一个字符 []匹配指定范围内的字符,如[0-9]匹配数 三.应用方法 ...

  10. Codevs1541[USACO]围墙涂色

    离散加差分有点涨姿势啊 对我这种菜鸡而言还是第一次看到啊qwq 题面 大意 :n次,每次覆盖一个区间,求覆盖过m次的节点个数 sol:大概是差分的思想加上离散,就可以解决普通差分无法解决的问题了,比如 ...