Note: The default ITS GitLab runner is a shared resource and is subject to slowdowns during heavy usage.
You can run your own GitLab runner that is dedicated just to your group if you need to avoid processing delays.

Commit b26ac3c0 authored by Adam Robinson's avatar Adam Robinson
Browse files

initial import

parents
---
language: python
python: "2.7"
# Use the new container infrastructure
sudo: false
# Install ansible
addons:
apt:
packages:
- python-pip
install:
# Install ansible
- pip install ansible
# Check ansible version
- ansible --version
# Create ansible.cfg with correct roles_path
- printf '[defaults]\nroles_path=../' >ansible.cfg
script:
# Basic role syntax check
- ansible-playbook tests/test.yml -i tests/inventory --syntax-check
notifications:
webhooks: https://galaxy.ansible.com/api/v1/notifications/
\ No newline at end of file
Role Name
=========
This role configures an ESXi host for the best practices when using Pure storage. The settings are
from the [Best practices guide](https://support.purestorage.com/Solutions/VMware_Platform_Guide/001VMwareBestPractices/dddVMware_ESXi_Host_Configuration) and
[VAAI Guide](https://support.purestorage.com/Solutions/VMware_Platform_Guide/001VMwareBestPractices/Web_Guide%3A_VMware_Storage_APIs_for_Array_Integration_with_the_Pure_Storage%C2%AE_FlashArray).
Additional info is also available in [VMware KB 2146167](https://kb.vmware.com/s/article/2146167).
Requirements
------------
pyvmomi is required. This role assumes your inventory file contains each ESXi host you are managing.
Role Variables
--------------
### Required
- `vcenter_hostname` - The hostname or address of the vCenter server.
- `inventory_hostname` - The hostname or address of the ESXi server.
Dependencies
------------
None
Example Playbook
----------------
TODO
License
-------
BSD
Author Information
------------------
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
---
# defaults file for pure_storage_vmware_best_practices
vmware_user: "{{ lookup('env','VMWARE_USER') }}"
vmware_password: "{{ lookup('env','VMWARE_PASSWORD') }}"
Third_Party_Array_Not_Support_ATS_HB: false
Third_Party_Array_Not_Support_Max_HW_Transfer_Size: false
\ No newline at end of file
---
# handlers file for pure_storage_vmware_best_practices
\ No newline at end of file
galaxy_info:
author: your name
description: your description
company: your company (optional)
# If the issue tracker for your role is not on github, uncomment the
# next line and provide a value
# issue_tracker_url: http://example.com/issue/tracker
# Choose a valid license ID from https://spdx.org - some suggested licenses:
# - BSD-3-Clause (default)
# - MIT
# - GPL-2.0-or-later
# - GPL-3.0-only
# - Apache-2.0
# - CC-BY-4.0
license: license (GPL-2.0-or-later, MIT, etc)
min_ansible_version: 2.4
# If this a Container Enabled role, provide the minimum Ansible Container version.
# min_ansible_container_version:
#
# Provide a list of supported platforms, and for each platform a list of versions.
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
# To view available platforms and versions (or releases), visit:
# https://galaxy.ansible.com/api/v1/platforms/
#
# platforms:
# - name: Fedora
# versions:
# - all
# - 25
# - name: SomePlatform
# versions:
# - all
# - 1.0
# - 7
# - 99.99
galaxy_tags: []
# List tags for your role here, one per line. A tag is a keyword that describes
# and categorizes the role. Users find roles by searching for tags. Be sure to
# remove the '[]' above, if you add tags to this list.
#
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
# Maximum 20 tags per role.
dependencies: []
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
# if you add dependencies to this list.
\ No newline at end of file
---
# tasks file for pure_storage_vmware_best_practices
- name: Set ESXi Pure Storage Best Practices
vmware_host_config_manager:
hostname: '{{ vcenter_hostname }}'
esxi_hostname: '{{ inventory_hostname }}'
username: '{{ vmware_user }}'
password: '{{ vmware_password }}'
options:
'DataMover.HardwareAcceleratedInit': 1
'DataMover.HardwareAcceleratedMove': 1
'VMFS3.HardwareAcceleratedLocking': 1
'Disk.DiskMaxIOSize': 4096
'VMFS3.UseATSForHBOnVMFS5': '{{ 0 if Third_Party_Array_Not_Support_ATS_HB|bool else 1 }}'
'DataMover.MaxHWTransferSize': '{{4096 if Third_Party_Array_Not_Support_Max_HW_Transfer_Size|bool else 16384}}'
'VMFS3.EnableBlockDelete': 1
delegate_to: localhost
---
- hosts: localhost
remote_user: root
roles:
- pure_storage_vmware_best_practices
\ No newline at end of file
---
# vars file for pure_storage_vmware_best_practices
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment