Skip to content

Instantly share code, notes, and snippets.

View Mierdin's full-sized avatar

Matt Oswalt Mierdin

View GitHub Profile
[LOG - SUBSYSTEM DETECTED]: ----- netconf-subsystem-1
[LOG - SUBSYSTEM DETECTED]: ----- xmlagent-subsystem-2
[LOG - DISPATCH_MSG]: ----- <?xml version="1.0" encoding="ISO-8859-1"?>
<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<capabilities>
<capability>urn:ietf:params:xml:ns:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:base:1.0</capability>
</capabilities>
<session-id>26943</session-id>
</hello>
@Mierdin
Mierdin / StorageTrueUp.ps1
Created April 28, 2014 05:25
Two functions for automating some tedious storage-related functions with Cisco PowerTool and Netapp PowerShell Toolkit
<#
Name: StorageTrueUp.ps1
Author: Matthew Oswalt
Created: 4/27/2014
Description: Storage True-Up
Currently only tested and verified with the following platforms:
Hardware Platforms:
*NetApp Release 8.2P2 Cluster-Mode

Pre-Req

Fedora 20

Configure

sudo yum -y install openvswitch python-openvswitch
sudo service openvswitch stop

sudo ovsdb-tool create /etc/openvswitch/conf.db /usr/share/openvswitch/vswitch.ovsschema

https://www.dropbox.com/s/t6x80jlegex4fka/Screenshot%202014-07-09%2017.26.34.png
int insertOperationIndex = 0;
https://gist.github.com/e1c6df9941be1cbf306c
public void createManager() throws IOException, InterruptedException, ExecutionException, NoSuchMethodException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
//proceed only if schema was already retrieved successfully
Assert.assertNotNull(dbSchema);
//create new manager and set target string
Manager mgr = ovs.createTypedRowWrapper(Manager.class);
mgr.setTarget("ptcp:6641");
String transactionUuidStr = "foobar";
int insertOperationIndex = 0;
08:47:31.784 [main] TRACE o.o.o.l.j.JsonRpcEndpoint - {"id":"c927ed19-f42d-4ed3-bb0c-ce0b9e14c47e","method":"list_dbs","params":[]}
08:47:31.819 [nioEventLoopGroup-3-1] TRACE o.o.o.l.j.JsonRpcEndpoint - Response : {"id":"c927ed19-f42d-4ed3-bb0c-ce0b9e14c47e","result":["hardware_vtep","Open_vSwitch"],"error":null}
08:47:31.869 [main] TRACE o.o.o.l.j.JsonRpcEndpoint - {"id":"c2f22bea-445b-4699-9bc0-b5d380ec1a5f","method":"get_schema","params":["hardware_vtep"]}
08:47:31.903 [nioEventLoopGroup-3-1] TRACE o.o.o.l.j.JsonRpcEndpoint - Response : {"id":"c2f22bea-445b-4699-9bc0-b5d380ec1a5f","result":{"tables":{"Physical_Port":{"columns":{"name":{"type":"string"},"description":{"type":"string"},"vlan_stats":{"type":{"key":{"maxInteger":4095,"minInteger":0,"type":"integer"},"min":0,"value":{"type":"uuid","refTable":"Logical_Binding_Stats"},"max":"unlimited"}},"vlan_bindings":{"type":{"key":{"maxInteger":4095,"minInteger":0,"type":"integer"},"min":0,"value":{"type":"uuid","refTable":"Logical_Switch"},"max":"unlimited"}
public boolean checkSchema() throws IOException, ExecutionException, InterruptedException, TimeoutException {
if (this.ovs == null) {
this.ovs = getTestConnection();
HardwareVtepSchemaSuiteIT.setOvsdbClient(this.ovs);
//retrieve list of databases from OVSDB server
ListenableFuture<List<String>> databases = ovs.getDatabases();
List<String> dbNames = databases.get();
Assert.assertNotNull(dbNames);
Assume.assumeTrue(super.checkSchema());