zoukankan      html  css  js  c++  java
  • openshift 平台上部署 gitlab代码仓库服务

    背景:
    本文档将以在openshift 平台上部署 gitlab 服务来验证集群各个服务组件的可用性以及熟悉openshift的使用方法。服务部署方式可以多种多样,灵活部署。本篇以常见的镜像部署方式来实现。
    准备工作:

    1.打开浏览器输入网址: https://hub.docker.com/r/gitlab/gitlab-ee

    2.在一台可以联网下载docke image的linux 虚机上输入命令:
    #docker pull gitlab/gitlab-ee:latest

    3.查看镜像是否已存在。
    #dockers images | grep gitlab

    4.把镜像保存成tar包并导出。
    # docker save docker.io/gitlab/gitlab-ee:latest >/root/gitlab.tar.gz

    从虚机Linux上通过xftp 拷贝/root/gitlab.tar.gz 至本地, 再上传至 openshift平台的堡垒机节点中。

    开始在openshift平台部署:

    1.登录堡垒机节点 解压tar包 的image
    #docker load -i gitlab.tar.gz

    2.在堡垒机节点上 tag 生成的image,并push 生成的image,可在harbor仓库上看到上传好的镜像
    #docker tag docker.io/gitlab/gitlab-ee:latest registry.example.com:5000/gitlab/gitlab-ee:latest
    #docker push registry.example.com:5000/gitlab/gitlab-ee:latest

    3.使用oc命令行客户端登录openshift平台,创建新项目 gitlab
    #oc login https://openshift.example.com:8443
    #oc new-project gitlab
    或者登录openshift界面创建:

    4.使用镜像部署gitlab容器,并等待容器运行成功。
    #oc run gitlab --image=registry.example.com:5000/gitlab/gitlab-ee:latest -n gitlab
    或者登录openshift界面部署:

    1. 给gitlab 容器使用root用户的权限
      #oc adm policy add-scc-to-user anyuid -z default
      注意:若遇到如下报错说明容器未使用root权限,则需要加上如上命令。

    6.为gitlab创建services,使用下面的services-gitlab.yaml 文件

    #oc create –f services-gitlab.yaml –n gitlab

    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: gitlab-ee
      name: gitlab-ee
    spec:
      ports:
        - name: 22-tcp
          port: 22
          protocol: TCP
          targetPort: 22
        - name: 80-tcp
          port: 80
          protocol: TCP
          targetPort: 80
        - name: 443-tcp
          port: 443
          protocol: TCP
          targetPort: 443
      selector:
        deploymentconfig: gitlab-ee
      sessionAffinity: None
      type: ClusterIP
    status:
      loadBalancer: {}
    

    或者登录openshift界面创建:


    7.为gitlab的services创建route地址

    8.为pod动态创建pvc(注意使用的sc)
    创建3个pvc

    9.给pod挂载持久化存储,共挂载三个位置

    使用rbd存储需要先在项目中 创建ceph-sercret密钥用来挂载

    apiVersion: v1
    data:
      key: QVRzh5VmQwRWo1JBQUcvRjJLalUyU3dvRzlWc9PQ==
    kind: Secret
    metadata:
      name: ceph-secret
    type: kubernetes.io/rbd
    

    secret创建好之后,开始创建对应的pvc,如下是volume 名字和pod挂载路径的对应关系

    Mount: gitlab-ee-3  → /var/opt/gitlab read-write
    Mount: gitlab-ee-1  → /etc/gitlab read-write
    Mount: gitlab-ee-2  → /var/log/gitlab read-write
    

    修改dc的yaml文件给pod挂载pvc

    等待pod running查看details状态信息

    可以看到pod运行成功。

    服务验证:

    访问route的hostname打开gitlab界面。(用户名 root 密码 ********(登录前需要自己设置) )

    服务正常,openshift平台部署gitlab服务完成!

  • 相关阅读:
    把影响集中到一个点
    How to avoid Over-fitting using Regularization?
    适定性问题
    Numerical Differentiation 数值微分
    What Every Computer Scientist Should Know About Floating-Point Arithmetic
    Generally a good method to avoid this is to randomly shuffle the data prior to each epoch of training.
    What is the difference between iterations and epochs in Convolution neural networks?
    Every norm is a convex function
    Moore-Penrose Matrix Inverse 摩尔-彭若斯广义逆 埃尔米特矩阵 Hermitian matrix
    perl 类里的函数调用其他类的函数
  • 原文地址:https://www.cnblogs.com/wenyang321/p/13395443.html
Copyright © 2011-2022 走看看