All Projects â†’ equelin â†’ Unity Powershell

equelin / Unity Powershell

Licence: mit
PowerShell module for managing EMC Unity arrays

Programming Languages

powershell
5483 projects

Projects that are alternatives of or similar to Unity Powershell

Restclient
🦄 Simple HTTP and REST client for Unity based on Promises, also supports Callbacks! 🎮
Stars: ✭ 675 (+2834.78%)
Mutual labels:  rest-api, unity
Mr Realtime Translator
Real-time translation services in Mixed Reality. Core pieces to get audio from the mic in Unity and stream over a websocket to the Azure Translator API and process the responses - as you speak!
Stars: ✭ 22 (-4.35%)
Mutual labels:  unity
Go Book Store Api
Go Sample project to understand Mysql CRUD operation with best practises Includes logging, JWT, Swagger and Transactions
Stars: ✭ 18 (-21.74%)
Mutual labels:  rest-api
Node Express Boilerplate
A boilerplate for building production-ready RESTful APIs using Node.js, Express, and Mongoose
Stars: ✭ 890 (+3769.57%)
Mutual labels:  rest-api
Farwest
Framework for building RESTful HATEOAS-driven applications.
Stars: ✭ 18 (-21.74%)
Mutual labels:  rest-api
Il2cppinspector
Powerful automated tool for reverse engineering Unity IL2CPP binaries
Stars: ✭ 901 (+3817.39%)
Mutual labels:  unity
Django Ninja
💨 Fast, Async-ready, Openapi, type hints based framework for building APIs
Stars: ✭ 875 (+3704.35%)
Mutual labels:  rest-api
Unity Ml Environments
This repository features game simulations as machine learning environments to experiment with deep learning approaches such as deep reinforcement learning inside of Unity.
Stars: ✭ 23 (+0%)
Mutual labels:  unity
Simpleunitytcp
🖧 Simple Unity Project to show how TCP communication are builded in C# without multi-threading or Unity network (Unet) involved.
Stars: ✭ 22 (-4.35%)
Mutual labels:  unity
Number Wizard Ui Original
Introducing basic User Interface in the Complete Unity C# Developer 2D course (http://gdev.tv/cudgithub)
Stars: ✭ 18 (-21.74%)
Mutual labels:  unity
Pluginmanager
Unity Plugin Manager
Stars: ✭ 18 (-21.74%)
Mutual labels:  unity
Centrifuge
Cross-platform runtime mod loader and API for any Unity-based game. Supports Unity 5 and up!
Stars: ✭ 18 (-21.74%)
Mutual labels:  unity
Tracerysharp
C#/Unity port of Tracery (heavily WIP)
Stars: ✭ 19 (-17.39%)
Mutual labels:  unity
Great Big Example Application
A full-stack example app built with JHipster, Spring Boot, Kotlin, Angular 4, ngrx, and Webpack
Stars: ✭ 899 (+3808.7%)
Mutual labels:  rest-api
Alpaca Trade Api Python
Python client for Alpaca's trade API
Stars: ✭ 912 (+3865.22%)
Mutual labels:  rest-api
Buttons And Boxes
A Sokoban-esque puzzle game developed in unity 3D in 2016
Stars: ✭ 17 (-26.09%)
Mutual labels:  unity
Vmix Rest Api
REST API and remote Web Controller access for vMix Live Video Streaming
Stars: ✭ 18 (-21.74%)
Mutual labels:  rest-api
Ffmpegoutbinaries
Separated binary package of FFmpegOut Unity plugin
Stars: ✭ 19 (-17.39%)
Mutual labels:  unity
Quadwarp
QuadWarp sample code for Unity
Stars: ✭ 23 (+0%)
Mutual labels:  unity
Koa Typeorm Starter
Starter project for using koa with TS and TypeORM
Stars: ✭ 23 (+0%)
Mutual labels:  rest-api
Branch AppVeyor Docs
master Build status Documentation Status
develop Build status Documentation Status

Last release: GitHub version

Unity-Powershell

This is a Powershell module for managing EMC Unity arrays (physical or virtual). Unity-Powershell is a member of the DevHigh5 program from {code} by Dell EMC(tm).

With this module (version 0.15.0) you can manage:

  • System (DNS, NTP...)
  • Pools (virtual and physical deployments)
  • Fast Cache (physical deployments only)
  • LUN (block)
  • VMware LUN (block and NFS)
  • NASServer
  • Filesystem
  • CIFS Server and Shares
  • NFS Server and Shares
  • vCenter and ESXi servers
  • iSCSI parameters
  • Snapshots and snapshots schedules
  • Performance metrics

More functionality will be added later.

Usage

This module tries to mimic VMware PowerCLI usage. All resource management functions are available with the Powershell verbs GET, NEW, SET, REMOVE. For example, you can manage Pools with the following commands:

  • Get-UnityPool
  • New-UnityPool
  • Set-UnityPool
  • Remove-UnityPool

Some functions accept pipelining. For example, if you want to delete all existing LUNs you can do this:

Get-UnityLUN | Remove-UnityLUN

Requirements

  • Powershell 5 (If possible get the latest version)
  • An EMC Unity array! (virtual or physical)

Instructions

Install the module

# Automated installation (Powershell 5):
    Install-Module Unity-Powershell

# Or manual setup
    # Download the repository
    # Unblock the zip
    # Extract the Unity-Powershell folder to a module path (e.g. $env:USERPROFILE\Documents\WindowsPowerShell\Modules\)

# Import the module
    Import-Module Unity-Powershell # Alternatively, Import-Module \\Path\To\Unity-Powershell

# Get commands in the module
    Get-Command -Module Unity-Powershell

# Get help
    Get-Help Get-UnityUser -Full
    Get-Help Unity-Powershell

Examples

Connecting to the Unity array

The first thing to do is to connect to an EMC Unity array with the command Connect-Unity:

# Connect to the Unity array
    Connect-Unity -Server 192.0.2.1

    Server       User  Name     Model    SerialNumber
    ------       ----  ----     -----    ------------
    192.0.2.1 admin UnityDemo UnityVSA VIRT1919K58MXM

The parameter -TrustAllCerts controls whether or not to accept untrusted certificates. It is set to $True by default.

# Connect to the Unity array without allowing untrusted certificates
    Connect-Unity -Server 192.0.2.1 -TrustAllCerts $false

    Server       User  Name     Model    SerialNumber
    ------       ----  ----     -----    ------------
    192.0.2.1 admin UnityDemo UnityVSA VIRT1919K58MXM

LUN Management

You can create a new LUN New-UnityLUN, retrieve its information Get-UnityLUN, modify its properties Set-UnityLUN, or delete it Remove-UnityLUN.

# Create a block LUN
    New-UnityLUN -Name 'LUN01' -Pool 'pool_1' -Size '10GB'

    Id    Name  Pool          IsThinEnabled TieringPolicy SizeTotal   SizeAllocated Type
    --    ----  ----          ------------- ------------- ---------   ------------- ----
    sv_94 LUN01 @{id=pool_1} True          Autotier_High 10737418240 0             Standalone


# Retrieve information about block LUN
    Get-UnityLUN

    Id    Name  Pool          IsThinEnabled TieringPolicy SizeTotal   SizeAllocated Type
    --    ----  ----          ------------- ------------- ---------   ------------- ----
    sv_94 LUN01 @{id=pool_1} True          Autotier_High 10737418240 0             Standalone
    sv_95 LUN02 @{id=pool_1} True          Autotier_High 10737418240 0             Standalone


# Delete a LUN
    Remove-UnityLUN -ID 'sv_95'

User Management

You can add a new user New-UnityUser, modify their properties Set-UnityUser, or delete them Remove-UnityUser.

# Retrieve information about a specific user
    Get-UnityUser -Name 'demo'

    Id        Name Role
    --        ---- ----
    user_demo demo @{id=storageadmin}

# Change the role of a user from storageadmin to operator
    Get-UnityUser -Name 'demo' | Set-UnityUser -Role 'operator'

    Id        Name Role
    --        ---- ----
    user_demo demo @{id=operator}  

# Delete a user
    Remove-UnityUser -ID 'user_demo'

Query resources

For testing purposes you can query all the resources of the array with the command Get-UnityItem. You have to provide the URI of the resource with the parameter -URI. It returns a Powershell object by default or a JSON item (with the parameter -JSON) without any formatting.

# Retrieve information about NTP servers. Result is a Powershell object
    $response = Get-UnityItem -URI '/api/types/ntpServer/instances?fields=id,addresses'
    $response.entries.content

    id addresses
    -- ---------
    0  {pool.ntp.org}

# Retrieve information about NTP servers. Result is in the JSON format
    $response = Get-UnityItem -URI '/api/types/ntpServer/instances?fields=id,addresses' -JSON

Disconnecting

# Disconnect from the EMC Unity Array
    Disconnect-Unity

Author

Erwan Quélin

Special Thanks

  • David Muegge for his blog post about using the EMC Unity API with Powershell
  • Warren F. for his blog post 'Building a Powershell module'
  • Chris Wahl for his blog posts about Powershell and REST API.

License

Copyright 2016-2017 Erwan Quelin and the community.

Licensed under the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].