调整storage变量,更新相关文档 (#285)

* 优化storage结构,修复deploy节点分离nas部署失败
pull/294/head
lusyoe 2018-08-12 20:02:47 +08:00 committed by jmgao
parent b24626513f
commit 50862bcaaf
10 changed files with 50 additions and 49 deletions

View File

@ -51,11 +51,13 @@ $ ansible-playbook /etc/ansible/tools/init_vars.yml
``` bash
# 比如创建nfs provisioner
storage_nfs_enabled: "yes"
nfs_server: "192.168.1.8"
nfs_server_path: "/data/nfs"
nfs_storage_class: "class-nfs-01"
nfs_provisioner_name: "nfs-provisioner-01"
storage:
nfs:
enabled: "yes"
server: "192.168.1.8"
server_path: "/data/nfs"
storage_class: "class-nfs-01"
provisioner_name: "nfs-provisioner-01"
```
- 3.创建 nfs provisioner

View File

@ -135,7 +135,7 @@ es0 es1 es2
#### 使用动态 PV安装 EFK
- 首先根据[这里](nfs-client.md)创建nfs-client-provisioner
- 首先根据[集群存储](../08-cluster-storage.md)创建nfs-client-provisioner
- 然后按实际需求修改 `es-dynamic-pv/es-statefulset.yaml` 文件中 volumeClaimTemplates 设置的 storage: 4Gi 大小
``` bash

View File

@ -10,7 +10,9 @@
- helm
为了简化部署通过helm来安装Jenkins可参考文档[helm](helm.md)
- 持久化存储
这里使用**NFS**演示,参考文档:[nfs-client](nfs-client.md)。如果k8s集群是部署在公有云也可使用厂商的NAS等存储方案具体参考相关厂商文档
这里使用**NFS**演示,参考文档:[cluster-storage](../08-cluster-storage.md)。
如果k8s集群是部署在公有云也可使用厂商的NAS等存储方案项目中已集成支持阿里云NAS其他的方案参考相关厂商文档
- Ingress Controller(nginx-ingress/traefik)
默认是通过Ingress访问Jenkins因此需要安装一种`Ingress Controller`。参考文档:[ingress](ingress.md)
- Gitlab 代码管理仓库

View File

@ -1,15 +1,17 @@
# 动态存储类型, 目前支持自建nfs和aliyun_nas
storage_nfs_enabled: "no"
storage_aliyun_nas_enabled: "no"
storage:
# nfs server 参数
nfs_server: "192.168.1.8"
nfs_server_path: "/data/nfs"
nfs_storage_class: "class-nfs-01"
nfs_provisioner_name: "nfs-provisioner-01"
nfs:
enabled: "no"
server: "172.16.3.86"
server_path: "/data/nfs"
storage_class: "nfs-dynamic-class"
provisioner_name: "nfs-provisioner-01"
# aliyun_nas 参数
aliyun_nas_server: "172.16.3.86"
aliyun_nas_server_path: "/data/nas"
aliyun_nas_storage_class: "class-aliyun-nas-01"
aliyun_nas_controller_name: "aliyun-nas-controller-01"
aliyun_nas:
enabled: "no"
server: "xxxxxxxxxxx.cn-hangzhou.nas.aliyuncs.com"
server_path: "/"
storage_class: "class-aliyun-nas-01"
controller_name: "aliyun-nas-controller-01"

View File

@ -4,7 +4,7 @@
- name: 生成alicloud-nas动态存储配置
template:
src: alicloud-nas/alicloud-nas.yaml.j2
dest: "{{ base_dir }}/manifests/storage/alicloud-nas/{{ aliyun_nas_controller_name }}.yaml"
dest: "{{ base_dir }}/manifests/storage/alicloud-nas/{{ storage.aliyun_nas.controller_name }}.yaml"
- name: 复制alicloud-disk配置
copy:
@ -15,4 +15,4 @@
shell: "{{ bin_dir }}/kubectl apply -f {{ base_dir }}/manifests/storage/alicloud-nas/alicloud-disk.yaml"
- name: 开始部署alicloud-nas动态存储
shell: "{{ bin_dir }}/kubectl apply -f {{ base_dir }}/manifests/storage/alicloud-nas/{{ aliyun_nas_controller_name }}.yaml"
shell: "{{ bin_dir }}/kubectl apply -f {{ base_dir }}/manifests/storage/alicloud-nas/{{ storage.aliyun_nas.controller_name }}.yaml"

View File

@ -1,6 +1,6 @@
- include: nfs-client.yml
when: 'storage_nfs_enabled == "yes"'
when: 'storage.nfs.enabled == "yes"'
- include: alicloud-nas.yml
when: 'storage_aliyun_nas_enabled == "yes"'
when: 'storage.aliyun_nas.enabled == "yes"'

View File

@ -4,7 +4,7 @@
- name: 生成nfs-client动态存储配置
template:
src: nfs/nfs-client-provisioner.yaml.j2
dest: "{{ base_dir }}/manifests/storage/nfs/{{ nfs_provisioner_name }}.yaml"
dest: "{{ base_dir }}/manifests/storage/nfs/{{ storage.nfs.provisioner_name }}.yaml"
- name: 开始部署nfs-client动态存储
shell: "{{ bin_dir }}/kubectl apply -f {{ base_dir }}/manifests/storage/nfs/{{ nfs_provisioner_name }}.yaml"
shell: "{{ bin_dir }}/kubectl apply -f {{ base_dir }}/manifests/storage/nfs/{{ storage.nfs.provisioner_name }}.yaml"

View File

@ -1,7 +1,7 @@
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: {{ aliyun_nas_storage_class }}
name: {{ storage.aliyun_nas.storage_class }}
provisioner: alicloud/nas
---
apiVersion: v1
@ -26,7 +26,7 @@ roleRef:
kind: Deployment
apiVersion: apps/v1beta1
metadata:
name: {{ aliyun_nas_controller_name }}
name: {{ storage.aliyun_nas.controller_name }}
namespace: kube-system
spec:
replicas: 1
@ -35,7 +35,7 @@ spec:
template:
metadata:
labels:
app: {{ aliyun_nas_controller_name }}
app: {{ storage.aliyun_nas.controller_name }}
spec:
serviceAccount: alicloud-nas-controller
containers:
@ -48,11 +48,11 @@ spec:
- name: PROVISIONER_NAME
value: alicloud/nas
- name: NFS_SERVER
value: {{ aliyun_nas_server }}
value: {{ storage.aliyun_nas.server }}
- name: NFS_PATH
value: {{ aliyun_nas_server_path }}
value: {{ storage.aliyun_nas.server_path }}
volumes:
- name: nfs-client-root
nfs:
server: {{ aliyun_nas_server }}
path: {{ aliyun_nas_server_path }}
server: {{ storage.aliyun_nas.server }}
path: {{ storage.aliyun_nas.server_path }}

View File

@ -1,5 +0,0 @@
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: {{ storage_class_name }}
provisioner: prov

View File

@ -41,7 +41,7 @@ roleRef:
kind: Deployment
apiVersion: apps/v1beta1
metadata:
name: {{ nfs_provisioner_name }}
name: {{ storage.nfs.provisioner_name }}
namespace: kube-system
spec:
replicas: 1
@ -49,11 +49,11 @@ spec:
type: Recreate
selector:
matchLabels:
app: {{ nfs_provisioner_name }}
app: {{ storage.nfs.provisioner_name }}
template:
metadata:
labels:
app: {{ nfs_provisioner_name }}
app: {{ storage.nfs.provisioner_name }}
spec:
serviceAccountName: nfs-client-provisioner
containers:
@ -67,21 +67,21 @@ spec:
env:
- name: PROVISIONER_NAME
# 此处供应者名字供storageclass调用
value: {{ nfs_provisioner_name }}
value: {{ storage.nfs.provisioner_name }}
- name: NFS_SERVER
value: {{ nfs_server }}
value: {{ storage.nfs.server }}
- name: NFS_PATH
value: {{ nfs_server_path }}
value: {{ storage.nfs.server_path }}
volumes:
- name: nfs-client-root
nfs:
server: {{ nfs_server }}
path: {{ nfs_server_path }}
server: {{ storage.nfs.server }}
path: {{ storage.nfs.server_path }}
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: {{ nfs_storage_class }}
provisioner: {{ nfs_provisioner_name }}
name: {{ storage.nfs.storage_class }}
provisioner: {{ storage.nfs.provisioner_name }}