Skip to content

Instantly share code, notes, and snippets.

@ikurni
Created January 4, 2019 04:40
Show Gist options
  • Save ikurni/d0479722d8af29348b3ee114941c7b60 to your computer and use it in GitHub Desktop.
Save ikurni/d0479722d8af29348b3ee114941c7b60 to your computer and use it in GitHub Desktop.
#
# ansible inventory for OpenShift Container Platform 3.11.16
# AgnosticD ansible-config: ocp-ha-lab
[OSEv3:vars]
###########################################################################
### Ansible Vars
###########################################################################
timeout=60
ansible_ssh_user=root
#ansible_user=ec2-user
#ansible_become=yes
###########################################################################
### OpenShift Basic Vars
###########################################################################
openshift_deployment_type=openshift-enterprise
openshift_disable_check="disk_availability,memory_availability,docker_image_availability"
# OpenShift Version:
# If you modify the openshift_image_tag or the openshift_pkg_version variables after the cluster is set up, then an upgrade can be triggered, resulting in downtime.
# If openshift_image_tag is set, its value is used for all hosts in system container environments, even those that have another version installed. If
# Use this variable to specify a container image tag to install or configure.
#openshift_pkg_version is set, its value is used for all hosts in RPM-based environments, even those that have another version installed.
openshift_image_tag=v3.11.16
# Use this variable to specify an RPM version to install or configure.
openshift_pkg_version=-3.11.16
openshift_release=3.11.16
# Openshift Docker Options
openshift_docker_options="--log-driver json-file --log-opt max-size=10M --log-opt max-file=5 --selinux-enabled --insecure-registry 172.30.0.0/16 --insecure-registry ocp.local.vm:5000"
# Node Groups
#openshift_node_groups=[{'name': 'node-config-master', 'labels': ['node-role.kubernetes.io/master=true','runtime=docker']}, {'name': 'node-config-infra', 'labels': ['node-role.kubernetes.io/infra=true','runtime=docker']}, {'name': 'node-config-glusterfs', 'labels': ['runtime=docker']}, {'name': 'node-config-compute', 'labels': ['node-role.kubernetes.io/compute=true','runtime=docker'], 'edits': [{ 'key': 'kubeletArguments.pods-per-core','value': ['20']}]}]
openshift_node_groups=[{'name': 'node-config-allinone', 'labels': ['node-role.kubernetes.io/master=true','node-role.kubernetes.io/infra=true','node-role.kubernetes.io/compute=true']}]
# Configure node kubelet arguments. pods-per-core is valid in OpenShift Origin 1.3 or OpenShift Container Platform 3.3 and later. -> These need to go into the above
#openshift_node_kubelet_args={'pods-per-core': ['10'], 'max-pods': ['250'], 'image-gc-high-threshold': ['85'], 'image-gc-low-threshold': ['75']}
# Configure logrotate scripts
# See: https://github.com/nickhammond/ansible-logrotate
logrotate_scripts=[{"name": "syslog", "path": "/var/log/cron\n/var/log/maillog\n/var/log/messages\n/var/log/secure\n/var/log/spooler\n", "options": ["daily", "rotate 7","size 500M", "compress", "sharedscripts", "missingok"], "scripts": {"postrotate": "/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true"}}]
# Deploy Operator Lifecycle Manager Tech Preview
#openshift_enable_olm=true
###########################################################################
### OpenShift Registries Locations
###########################################################################
#oreg_url=registry.access.redhat.com/openshift3/ose-${component}:${version}
oreg_url=ocp.local.vm:5000/openshift3/ose-${component}:${version}
#No need to define username and password for local registry if no auth available
#oreg_auth_user=user1@redhat.com
#oreg_auth_password=rahasia
# For Operator Framework Images
#openshift_additional_registry_credentials=[{'host':'registry.connect.redhat.com','user':'user1@redhat.com','password':'rahasia','test_image':'mongodb/enterprise-operator:0.3.2'}]
#openshift_examples_modify_imagestreams=true
###########################################################################
### OpenShift Container Storage
###########################################################################
#openshift_master_dynamic_provisioning_enabled=True
# CNS storage cluster
# From https://github.com/red-hat-storage/openshift-cic
#openshift_storage_glusterfs_namespace=openshift-storage
#openshift_storage_glusterfs_storageclass=true
#openshift_storage_glusterfs_storageclass_default=false
#openshift_storage_glusterfs_block_deploy=true
#openshift_storage_glusterfs_block_host_vol_create=true
#openshift_storage_glusterfs_block_host_vol_size=200
#openshift_storage_glusterfs_block_storageclass=true
#openshift_storage_glusterfs_block_storageclass_default=true
# Container image to use for glusterfs pods
#openshift_storage_glusterfs_image="registry.access.redhat.com/rhgs3/rhgs-server-rhel7:v3.10"
# Container image to use for glusterblock-provisioner pod
#openshift_storage_glusterfs_block_image="registry.access.redhat.com/rhgs3/rhgs-gluster-block-prov-rhel7:v3.10"
# Container image to use for heketi pods
#openshift_storage_glusterfs_heketi_image="registry.access.redhat.com/rhgs3/rhgs-volmanager-rhel7:v3.10"
# GlusterFS version
# Knowledgebase
# https://access.redhat.com/solutions/3617551
# Bugzilla
# https://bugzilla.redhat.com/show_bug.cgi?id=163.1057
# Complete OpenShift GlusterFS Configuration README
# https://github.com/openshift/openshift-ansible/tree/master/roles/openshift_storage_glusterfs
#openshift_storage_glusterfs_version=v3.10
#openshift_storage_glusterfs_block_version=v3.10
#openshift_storage_glusterfs_s3_version=v3.10
#openshift_storage_glusterfs_heketi_version=v3.10
# openshift_storage_glusterfs_registry_version=v3.10
# openshift_storage_glusterfs_registry_block_version=v3.10
# openshift_storage_glusterfs_registry_s3_version=v3.10
# openshift_storage_glusterfs_registry_heketi_version=v3.10
###########################################################################
### OpenShift Master Vars
###########################################################################
openshift_master_api_port=8443
openshift_master_console_port=8443
#Default: openshift_master_cluster_method=native
openshift_master_cluster_hostname=ocp.local.vm
openshift_master_cluster_public_hostname=ocp.local.vm
openshift_master_default_subdomain=apps.local.vm
#openshift_master_ca_certificate={'certfile': '/root/intermediate_ca.crt', 'keyfile': '/root/intermediate_ca.key'}
#openshift_master_overwrite_named_certificates=True
#osm_etcd_image=registry.redhat.io/rhel7/etcd:3.2.22
# Audit log
# openshift_master_audit_config={"enabled": true, "auditFilePath": "/var/log/openpaas-oscp-audit/openpaas-oscp-audit.log", "maximumFileRetentionDays": 14, "maximumFileSizeMegabytes": 500, "maximumRetainedFiles": 5}
# ocp-ha-lab
# AWS Autoscaler
#openshift_master_bootstrap_auto_approve=false
# This variable is a cluster identifier unique to the AWS Availability Zone. Using this avoids potential issues in Amazon Web Services (AWS) with multiple zones or multiple clusters.
#openshift_clusterid
###########################################################################
### OpenShift Network Vars
###########################################################################
osm_cluster_network_cidr=10.1.0.0/16
openshift_portal_net=172.30.0.0/16
# os_sdn_network_plugin_name='redhat/openshift-ovs-networkpolicy'
os_sdn_network_plugin_name='redhat/openshift-ovs-subnet'
###########################################################################
### OpenShift Authentication Vars
###########################################################################
# htpasswd Authentication
openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_master_htpasswd_users={'admin': '$apr1$KpKl0ToV$iGOI7dL/7jjR2AlsaRXLb.', 'developer': '$apr1$AucR7bdp$Xk1UuDg2LLRKZ3lOPGyKO1'}
#openshift_master_htpasswd_file=/root/htpasswd.openshift
# LDAP Authentication (download ipa-ca.crt first)
# openshift_master_identity_providers=[{'name': 'ldap', 'challenge': 'true', 'login': 'true', 'kind': 'LDAPPasswordIdentityProvider','attributes': {'id': ['dn'], 'email': ['mail'], 'name': ['cn'], 'preferredUsername': ['uid']}, 'bindDN': 'uid=admin,cn=users,cn=accounts,dc=shared,dc=example,dc=opentlc,dc=com', 'bindPassword': 'r3dh4t1!', 'ca': '/etc/origin/master/ipa-ca.crt','insecure': 'false', 'url': 'ldaps://ipa.shared.example.opentlc.com:636/cn=users,cn=accounts,dc=shared,dc=example,dc=opentlc,dc=com?uid?sub?(memberOf=cn=ocp-users,cn=groups,cn=accounts,dc=shared,dc=example,dc=opentlc,dc=com)'}]
# openshift_master_ldap_ca_file=/root/ipa-ca.crt
###########################################################################
### OpenShift Metrics and Logging Vars
###########################################################################
#########################
# Prometheus Metrics
#########################
#openshift_hosted_prometheus_deploy=true
#openshift_prometheus_namespace=openshift-metrics
#openshift_prometheus_node_selector={"node-role.kubernetes.io/infra":"true"}
openshift_cluster_monitoring_operator_install=true
#openshift_cluster_monitoring_operator_prometheus_storage_capacity=20Gi
#openshift_cluster_monitoring_operator_alertmanager_storage_capacity=2Gi
#openshift_cluster_monitoring_operator_prometheus_storage_enabled=True
#openshift_cluster_monitoring_operator_alertmanager_storage_enabled=True
# The next two will be enabled in 3.11.z
# will use deafult storage class until then
# so set the block storage class as default
# openshift_cluster_monitoring_operator_prometheus_storage_class_name='glusterfs-storage-block'
# openshift_cluster_monitoring_operator_alertmanager_storage_class_name='glusterfs-storage-block'
########################
# Cluster Metrics
########################
openshift_metrics_install_metrics=True
#openshift_metrics_cassandra_storage_type=dynamic
#openshift_metrics_cassandra_pvc_storage_class_name='glusterfs-storage-block'
openshift_metrics_hawkular_nodeselector={"node-role.kubernetes.io/infra": "true"}
openshift_metrics_cassandra_nodeselector={"node-role.kubernetes.io/infra": "true"}
openshift_metrics_heapster_nodeselector={"node-role.kubernetes.io/infra": "true"}
# Store Metrics for 2 days
openshift_metrics_duration=2
# Suggested Quotas and limits for Prometheus components:
#openshift_prometheus_memory_requests=2Gi
#openshift_prometheus_cpu_requests=750m
#openshift_prometheus_memory_limit=2Gi
#openshift_prometheus_cpu_limit=750m
#openshift_prometheus_alertmanager_memory_requests=300Mi
#openshift_prometheus_alertmanager_cpu_requests=200m
#openshift_prometheus_alertmanager_memory_limit=300Mi
#openshift_prometheus_alertmanager_cpu_limit=200m
#openshift_prometheus_alertbuffer_memory_requests=300Mi
#openshift_prometheus_alertbuffer_cpu_requests=200m
#openshift_prometheus_alertbuffer_memory_limit=300Mi
#openshift_prometheus_alertbuffer_cpu_limit=200m
# Grafana
openshift_grafana_node_selector={"node-role.kubernetes.io/infra":"true"}
#openshift_grafana_storage_type=pvc
#openshift_grafana_pvc_size=2Gi
#openshift_grafana_node_exporter=true
#openshift_grafana_sc_name=glusterfs-storage
########################
# Cluster Logging
########################
openshift_logging_install_logging=True
openshift_logging_install_eventrouter=True
#openshift_logging_es_pvc_dynamic=true
#openshift_logging_es_pvc_size=20Gi
#openshift_logging_es_pvc_storage_class_name='glusterfs-storage-block'
#openshift_logging_es_memory_limit=8Gi
openshift_logging_es_cluster_size=1
openshift_logging_curator_default_days=2
openshift_logging_kibana_nodeselector={"node-role.kubernetes.io/infra": "true"}
openshift_logging_curator_nodeselector={"node-role.kubernetes.io/infra": "true"}
openshift_logging_es_nodeselector={"node-role.kubernetes.io/infra": "true"}
openshift_logging_eventrouter_nodeselector={"node-role.kubernetes.io/infra": "true"}
###########################################################################
### OpenShift Router and Registry Vars
###########################################################################
# default selectors for router and registry services
# openshift_router_selector='node-role.kubernetes.io/infra=true'
# openshift_registry_selector='node-role.kubernetes.io/infra=true'
openshift_hosted_router_replicas=1
# openshift_hosted_router_certificate={"certfile": "/path/to/router.crt", "keyfile": "/path/to/router.key", "cafile": "/path/to/router-ca.crt"}
openshift_hosted_registry_replicas=1
#openshift_hosted_registry_pullthrough=true
#openshift_hosted_registry_acceptschema2=true
#openshift_hosted_registry_enforcequota=true
#openshift_hosted_registry_storage_kind=glusterfs
#openshift_hosted_registry_storage_volume_size=10Gi
#openshift_hosted_registry_selector="node-role.kubernetes.io/infra=true"
###########################################################################
### OpenShift Service Catalog Vars
###########################################################################
# default=true
openshift_enable_service_catalog=true
# default=true
template_service_broker_install=true
openshift_template_service_broker_namespaces=['openshift']
# default=true
ansible_service_broker_install=true
ansible_service_broker_local_registry_whitelist=['.*-apb$']
###########################################################################
### OpenShift Hosts
###########################################################################
# openshift_node_labels DEPRECATED
# openshift_node_problem_detector_install
[OSEv3:children]
#lb
masters
etcd
nodes
#glusterfs
#[lb]
#loadbalancer1.c551.internal
[masters]
ocp.local.vm
[etcd]
ocp.local.vm
[nodes]
## These are the masters
ocp.local.vm openshift_node_group_name='node-config-allinone' openshift_node_problem_detector_install=true
#[glusterfs]
#support1.c551.internal glusterfs_devices='[ "/dev/xvdd" ]'
#support2.c551.internal glusterfs_devices='[ "/dev/xvdd" ]'
#support3.c551.internal glusterfs_devices='[ "/dev/xvdd" ]'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment