Merge "Use NFS instead of Ceph"

This commit is contained in:
Zuul 2018-05-18 20:19:28 +00:00 committed by Gerrit Code Review
commit b653070291
12 changed files with 122 additions and 448 deletions

View File

@ -19,7 +19,6 @@ data:
pattern: '^([a-z][a-z0-9-]+)(\.+[a-z]+\.)?$'
hostname_or_ip_address:
type: string
pattern: '^(([a-z][a-z0-9-]+)(\.+[a-z]+\.)?|(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5])))$'
ip_address:
type: string
pattern: '^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$'

View File

@ -1,129 +0,0 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ucp-ceph-config
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
# Chart source
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.ceph
dest:
path: .source
# Images
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .images.ceph.ceph
dest:
path: .values.images.tags
# IP addresses
- src:
schema: pegleg/CommonAddresses/v1
name: common-addresses
path: .storage.ceph.public_cidr
dest:
path: .values.network.public
- src:
schema: pegleg/CommonAddresses/v1
name: common-addresses
path: .storage.ceph.cluster_cidr
dest:
path: .values.network.cluster
# Endpoints
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ucp.identity
dest:
path: .values.endpoints.identity
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.object_store
dest:
path: .values.endpoints.object_store
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.ceph_mon
dest:
path: .values.endpoints.ceph_mon
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.ceph_mgr
dest:
path: .values.endpoints.ceph_mgr
# Credentials
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ucp.keystone.admin
dest:
path: .values.endpoints.identity.auth.admin
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ceph.swift.keystone
dest:
path: .values.endpoints.identity.auth.swift
# Secrets
- dest:
path: .values.endpoints.identity.auth.admin.password
src:
schema: deckhand/Passphrase/v1
name: ucp_keystone_admin_password
path: .
- dest:
path: .values.endpoints.identity.auth.swift.password
src:
schema: deckhand/Passphrase/v1
name: ceph_swift_keystone_password
path: .
data:
chart_name: ucp-ceph-config
release: ucp-ceph-config
namespace: ucp
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- type: job
labels:
application: ceph
component: namespace-client-key-generator
values:
labels:
job:
node_selector_key: ucp-control-plane
node_selector_value: enabled
provisioner:
node_selector_key: ucp-control-plane
node_selector_value: enabled
ceph:
rgw_keystone_auth: true
deployment:
storage_secrets: false
ceph: false
rbd_provisioner: false
cephfs_provisioner: false
client_secrets: true
rgw_keystone_user_and_endpoints: false
dependencies:
- ceph_htk
...

View File

@ -1,15 +0,0 @@
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: ucp-ceph-config
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
data:
description: Ceph config for UCP namespace(s)
chart_group:
# NOTE(mb874d): This will probably expand into one config per UCP namespace
# that requires ceph access.
- ucp-ceph-config

View File

@ -1,280 +0,0 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ucp-ceph
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
# Chart source
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.ceph
dest:
path: .source
# Images
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .images.ceph.ceph
dest:
path: .values.images.tags
# IP addresses
- src:
schema: dev/Configurables/v1
name: dev-configurables
path: .hostcidr
dest:
path: .values.network.public
- src:
schema: dev/Configurables/v1
name: dev-configurables
path: .hostcidr
dest:
path: .values.network.cluster
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ucp.identity
dest:
path: .values.endpoints.identity
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.object_store
dest:
path: .values.endpoints.object_store
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.ceph_mon
dest:
path: .values.endpoints.ceph_mon
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ceph.ceph_mgr
dest:
path: .values.endpoints.ceph_mgr
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ucp.keystone.admin
dest:
path: .values.endpoints.identity.auth.admin
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ceph.swift.keystone
dest:
path: .values.endpoints.identity.auth.swift
# Secrets
- dest:
path: .values.endpoints.identity.auth.admin.password
src:
schema: deckhand/Passphrase/v1
name: ucp_keystone_admin_password
path: .
- dest:
path: .values.endpoints.identity.auth.swift.password
src:
schema: deckhand/Passphrase/v1
name: ceph_swift_keystone_password
path: .
data:
chart_name: ceph
release: ucp-ceph
namespace: ceph
timeout: 900
wait:
timeout: 900
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- type: job
labels:
application: ceph
component: bootstrap
- type: job
labels:
application: ceph
component: mds-keyring-generator
- type: job
labels:
application: ceph
component: mon-keyring-generator
- type: job
labels:
application: ceph
component: rgw-keyring-generator
- type: job
labels:
application: ceph
component: storage-keys-generator
- type: job
labels:
application: ceph
component: osd-keyring-generator
values:
labels:
job:
node_selector_key: ucp-control-plane
node_selector_value: enabled
provisioner:
node_selector_key: ucp-control-plane
node_selector_value: enabled
endpoints:
identity:
namespace: openstack
object_store:
namespace: ceph
ceph_mon:
namespace: ceph
ceph:
rgw_keystone_auth: true
deployment:
ceph: true
client_secrets: false
rbd_provisioner: true
cephfs_provisioner: true
rgw_keystone_user_and_endpoints: false
storage_secrets: true
bootstrap:
enabled: true
conf:
storage:
osd:
- data:
type: directory
location: /var/lib/openstack-helm/ceph/osd/osd-one
journal:
type: directory
location: /var/lib/openstack-helm/ceph/osd/journal-one
rgw_ks:
enabled: true
ceph:
global:
fsid: '88904ebb-f6fc-48b1-80ec-e1915cfa84a9'
osd_pool_default_size: 1
osd:
osd_crush_chooseleaf_type: 0
pool:
crush:
tunables: 'hammer'
target:
osd: 1
pg_per_osd: 100
default:
crush_rule: same_host
spec:
# RBD pool
- name: rbd
application: rbd
replication: 1
percent_total_data: 40
# CephFS pools
- name: cephfs_metadata
application: cephfs
replication: 1
percent_total_data: 5
- name: cephfs_data
application: cephfs
replication: 1
percent_total_data: 10
# RadosGW pools
- name: .rgw.root
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.control
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.data.root
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.gc
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.log
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.intent-log
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.meta
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.usage
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.keys
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.email
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.swift
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.uid
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.buckets.extra
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.buckets.index
application: rgw
replication: 1
percent_total_data: 3
- name: default.rgw.buckets.data
application: rgw
replication: 1
percent_total_data: 34.8
dependencies:
- ceph_htk
...
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ceph_htk
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.ceph-htk
dest:
path: .source
data:
chart_name: ceph_htk
release: ceph_htk
namespace: ceph_htk
timeout: 100
values: {}
dependencies: []
...

View File

@ -12,6 +12,6 @@ data:
chart_group:
- ucp-ingress
- ucp-mariadb
- ucp-postgresql
- ucp-rabbitmq
- ucp-postgresql
...

View File

@ -2,13 +2,17 @@
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: ucp-ceph
name: ucp-storage-provisioner
labels:
name: ucp-storage-provisioner
group: ucp
service: k8_storage_provisioning
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
data:
description: Ceph Storage
description: Kubernetes Storage Provisioner
sequenced: true
chart_group:
- ucp-ceph
- nfs_provisioner

View File

@ -0,0 +1,77 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: nfs_provisioner
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
# Chart source
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.nfs_provisioner
dest:
path: .source
# Images
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .images.storage.nfs_provisioner
dest:
path: .values.images.tags
data:
chart_name: nfs-provisioner
release: nfs-provisioner
namespace: kube-system
timeout: 900
wait:
timeout: 900
install:
no_hooks: false
upgrade:
no_hooks: true
values:
labels:
nfs:
node_selector_key: ucp-control-plane
node_selector_value: enabled
job:
node_selector_key: ucp-control-plane
node_selector_value: enabled
storage:
hostPath:
path: /var/lib/airship/nfs
persistentVolumeClaim:
size: '30Gi'
storageclass:
name: general
dependencies:
- nfs_htk
...
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: nfs_htk
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.nfs_htk
dest:
path: .source
data:
chart_name: nfs_htk
release: nfs_htk
namespace: nfs_htk
values: {}
dependencies: []
...

View File

@ -113,6 +113,16 @@ data:
subpath: helm-toolkit
reference: f902cd14fac7de4c4c9f7d019191268a6b4e9601
ucp:
nfs_provisioner:
type: git
location: https://github.com/openstack/openstack-helm-infra
subpath: nfs-provisioner
reference: f402171e42356bc1e805782f1d7f090ce1f6ab17
nfs_htk:
type: git
location: https://github.com/openstack/openstack-helm-infra
subpath: helm-toolkit
reference: f402171e42356bc1e805782f1d7f090ce1f6ab17
armada:
type: git
location: https://github.com/att-comdev/armada
@ -185,14 +195,18 @@ data:
reference: f902cd14fac7de4c4c9f7d019191268a6b4e9601
postgresql:
type: git
location: https://github.com/openstack/openstack-helm
location: https://git.openstack.org/openstack/openstack-helm
subpath: postgresql
reference: f902cd14fac7de4c4c9f7d019191268a6b4e9601
reference: refs/changes/80/569480/1
# Liveness probe is too aggressive right now, using ref above instead
# location: https://github.com/openstack/openstack-helm
# subpath: postgresql
# reference: f902cd14fac7de4c4c9f7d019191268a6b4e9601
postgresql-htk:
type: git
location: https://github.com/openstack/openstack-helm
location: https://github.com/openstack/openstack-helm-infra
subpath: helm-toolkit
reference: f902cd14fac7de4c4c9f7d019191268a6b4e9601
reference: 9f921f23fb2df702981a0b3d33062ff607350f75
promenade:
type: git
location: https://github.com/att-comdev/promenade
@ -217,7 +231,7 @@ data:
type: git
location: https://github.com/att-comdev/maas
subpath: charts/maas
reference: 9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
reference: 791e49c5193a3c69f23052acb17673fc3e59d0e2
maas-htk:
type: git
location: https://github.com/openstack/openstack-helm
@ -287,7 +301,7 @@ data:
tiller: gcr.io/kubernetes-helm/tiller:v2.7.2
promenade:
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.0
promenade: artifacts-aic.atlantafoundry.com/att-comdev/promenade:ccd372a97490971d4a5b2281424be7595c55c1b0
promenade: docker.io/sthussey/promenade:replace
ks_user: docker.io/kolla/ubuntu-source-heat-engine:3.0.3
ks_service: docker.io/kolla/ubuntu-source-heat-engine:3.0.3
ks_endpoints: docker.io/kolla/ubuntu-source-heat-engine:3.0.3
@ -331,11 +345,11 @@ data:
ks_endpoints: docker.io/kolla/ubuntu-source-heat-engine:3.0.3
maas:
db_init: docker.io/postgres:9.5
db_sync: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
maas_rack: artifacts-aic.atlantafoundry.com/att-comdev/maas-rack-controller:9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
maas_region: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
bootstrap: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
export_api_key: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:9ea2358c7f7c2086d58c756696dfbcf3d15d3afa
db_sync: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:791e49c5193a3c69f23052acb17673fc3e59d0e2
maas_rack: artifacts-aic.atlantafoundry.com/att-comdev/maas-rack-controller:791e49c5193a3c69f23052acb17673fc3e59d0e2
maas_region: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:791e49c5193a3c69f23052acb17673fc3e59d0e2
bootstrap: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:791e49c5193a3c69f23052acb17673fc3e59d0e2
export_api_key: artifacts-aic.atlantafoundry.com/att-comdev/maas-region-controller:791e49c5193a3c69f23052acb17673fc3e59d0e2
maas_cache: artifacts-aic.atlantafoundry.com/att-comdev/sstream-cache@sha256:70aa6cc9cdf0d07ed933c99f232ecc82cb89048ffdb030811e44a537bdfad67e
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.0
keystone:
@ -375,6 +389,11 @@ data:
ceph_config_helper: docker.io/port/ceph-config-helper:v1.7.5
ceph_rbd_provisioner: quay.io/external_storage/rbd-provisioner:v0.1.1
ceph_cephfs_provisioner: quay.io/external_storage/cephfs-provisioner:v0.1.1
storage:
nfs_provisioner:
nfs_provisioner: quay.io/kubernetes_incubator/nfs-provisioner:v1.0.8
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1
image_repo_sync: docker.io/docker:17.07.0
kubernetes:
apiserver:
anchor: gcr.io/google_containers/hyperkube-amd64:v1.8.6
@ -450,4 +469,5 @@ data:
docker: docker-engine=1.13.1-0~ubuntu-xenial
socat: socat=1.7.3.1-1
unnamed:
- ceph-common=10.2.9-0ubuntu0.16.04.1
# nfs-common for the nfs provisioner - dev only.
- nfs-common

View File

@ -16,8 +16,7 @@ data:
- kubernetes-etcd
- kubernetes-core
- ingress-kube-system
- ucp-ceph
- ucp-ceph-config
- ucp-storage-provisioner
- ucp-core
- ucp-keystone
# TODO(bryan-strassner)

View File

@ -16,8 +16,7 @@ data:
- kubernetes-etcd
- kubernetes-core
- ingress-kube-system
- ucp-ceph
- ucp-ceph-config
- ucp-storage-provisioner
- ucp-core
- ucp-keystone
# TODO(bryan-strassner)

View File

@ -4,7 +4,7 @@ data:
site_type: single-node-proxy
metadata:
layeringDefinition: {abstract: false, layer: site}
name: dev
name: dev-proxy
schema: metadata/Document/v1
storagePolicy: cleartext
schema: pegleg/SiteDefinition/v1

View File

@ -55,8 +55,8 @@ SHIPYARD_REPO=${SHIPYARD_REPO:-"https://github.com/openstack/airship-shipyard.gi
SHIPYARD_REFSPEC=${SHIPYARD_REFSPEC:-""}
# Images
PEGLEG_IMAGE=${PEGLEG_IMAGE:-"artifacts-aic.atlantafoundry.com/att-comdev/pegleg:latest"}
PROMENADE_IMAGE=${PROMENADE_IMAGE:-"quay.io/attcomdev/promenade:latest"}
PEGLEG_IMAGE=${PEGLEG_IMAGE:-"artifacts-aic.atlantafoundry.com/att-comdev/pegleg:ef47933903047339bd63fcfa265dfe4296e8a322"}
PROMENADE_IMAGE=${PROMENADE_IMAGE:-"docker.io/sthussey/promenade:replace"}
# Command shortcuts
PEGLEG=${WORKSPACE}/airship-pegleg/tools/pegleg.sh