千家信息网

Kubernetes 1.5部署sonarqube

发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,前面几篇博文我们一直在说kubernetes的基础环境的安装及部署。在基础环境部署完成以后,我们开始尝试使用kubernetes来管理我们的应用。本篇博文通过一个简单的示例来向大家展示如何通过depl
千家信息网最后更新 2024年11月12日Kubernetes 1.5部署sonarqube

前面几篇博文我们一直在说kubernetes的基础环境的安装及部署。在基础环境部署完成以后,我们开始尝试使用kubernetes来管理我们的应用。本篇博文通过一个简单的示例来向大家展示如何通过deployment和service来部署一个应用。我们以部署一个sonarqube为例。

sonarqube是一个代码审查工具,包含两部分,分别是web站点和数据库。我们在存放所有yml文件的目录/data/kubernetes下再创建一个sonarqube目录,并生成如下四个文件:

[root@server-116 sonarqube]# ll -htotal 16K-rw-r--r--. 1 root root 682 Mar 15 23:25 mysql-sonar-dm.yml-rw-r--r--. 1 root root 209 Mar 15 23:35 mysql-sonar-svc.yml-rw-r--r--. 1 root root 669 Mar 16 09:46 sonar-dm.yml-rw-r--r--. 1 root root 151 Mar 15 23:30 sonar-svc.yml

其中mysql-sonar-dm.yml和mysql-sonar-svc.yml用于创建sonarqube使用的数据库,内容如下:

vim mysql-sonar-dm.ymlapiVersion: extensions/v1beta1kind: Deploymentmetadata:  name: mysql-sonarspec:  replicas: 1#  selector:#    app: mysql-sonar                        template:    metadata:      labels:        app: mysql-sonar    spec:      containers:      - name: mysql-sonar        p_w_picpath: myhub.fdccloud.com/library/mysql:5.6        ports:        - containerPort: 3306        env:        - name: MYSQL_ROOT_PASSWORD          value: "mysoft"        - name: MYSQL_DATABASE          value: sonardb

vim mysql-sonar-svc.ymlapiVersion: v1kind: Service                       metadata:  name: mysql-sonarspec:  type: NodePort  ports:    - port: 3306      targetPort: 3306      nodePort: 30002  selector:    app: mysql-sonar

sonar-dm.yml和sonar-svc.yml分别用于创建sonar的pod和service,内容如下:

vim sonar-dm.ymlapiVersion: extensions/v1beta1kind: Deploymentmetadata: name: sonarspec: replicas: 1 #selector: #  app: sonar template:   metadata:     labels:       app: sonar   spec:     containers:       - name: sonar         p_w_picpath: myhub.fdccloud.com/library/sonarqube:6.2         ports:         - containerPort: 9000         env:         - name: SONARQUBE_JDBC_USERNAME           value: sonar         - name: SONARQUBE_JDBC_PASSWORD           value: sonar         - name: SONARQUBE_JDBC_URL           value: "jdbc:mysql://mysql-sonar:3306/sonardb?useSSL=false&useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance"

vim sonar-svc.ymlapiVersion: v1kind: Servicemetadata:  name: sonarspec:  type: NodePort  ports:    - port: 9000      nodePort: 30001  selector:    app: sonar

启动sonar应用:

kubectl create -f /data/kubernetes/sonarqube/

通过http://:30001访问sonarqube:


0