TAG: lenovo

  2018-11-16

IBB brain shutdown procedure

This document describes procedure to shutdown an IBB brain instance.

Shutdown procedure

  1. On RHV admin portal, shutdown all virtual machines but not the hosted-engine.

  2. Put the cluster in global maintenance mode by login any brain server, and hosted-engine --set-maintenance --mode=global.

    To verify, login in a brain node and hosted-engine ...

  2018-10-15

SPA: a cofiguration Dashboard

Project SPA Dashboard demo

Project SPA Dashboard is a weekend fun. The idea came from Lenovo Open Cloud project, in which we have developed auto deployment of a complex stack on three physical servers. Services are Red Hat software deployed on a RHHI instance. Previously we have maintained ...

  2018-06-27

Server RAID

If you are like me who dislikes any GUI and mouse clicks, CLI via a SSH session to IMM is a fun way to get things done. This one shows how to config disks into RAID.

CLI manual is here.

usage:
    storage -config vol -option [-options] -target target_id
options:
    -remove ...

  2018-06-08

Network switch

Network switch is a gold mine. You will need (ip, username, pwd) to get to it, using Telnet(!). Your friend is pexpect, but even that gives you jinx sometimes when each switch can return you some random garbages once a while that makes session.expect("your regex pattern") to time ...

  2018-06-06

Screencast

Introduce tools to create screencast.

  2018-06-06

Netbox revised

Netbox is a nice level 1 tool (for levels, see capability model). But we need more. Managing a lab or a rack is more than level 1. On top of all these, we talk about automation, which implies capabilities at least to level 4. Therefore, we used Netbox code as ...

  2018-04-16

Use RHEL server qcow2 as sandbox

The closest thing RHEL has to a cloud image is a qcow (download from here). This image has disabled root password, and disabled SSH access ← so what the heck!?

Method 1: modify image directly

Really ugly solution. Anyway. On a Ubuntu 16.04, install guestfish and libguesttools, then:

create root ...

  2018-04-15

Satellite

These notes are based on Satellite 6.3. There are minor difference between 6.2 and 6.3. Grasp the concept here, and hopefully you will have a good understanding of the Satellite models and procedures.

Architecture

  1. One satellite server (master server), and 1+ capsule servers.
  2. The Satellite Server is ...

  2017-10-22

Juju GUI nginx proxy

In LXD on localhost we introduced using LXD container to bootstrap a Juju controller. But how to access the Juju GUI? Launching it is easy enough with $ juju gui from juju host; accessing it from anywhere outside the host is a challenge. One way is through $ ssh -X to the ...

  2017-10-11

KVM

KVM is something new to me, and it sounds awesome. The experience I want to have is a local dev that I can copy & paste from some base image in case I forgot to take a snapshot at milestone. This way I feel comfortable to stand up a sandbox, try ...

  2017-09-06

Juju local LXD

Using Juju's LXD provider is the least-hassle way to start an experience of Juju and its charms. However, if you have done charm development for a while, you know making a one line of code change, deploying charm, then wait to see the new code got executed ← it's ...

  2017-07-06

Charm Ansible integration

Let's face it. Ansible has the mouth (and market) share these days. For our modeling purpose, we are to utilize its procedural strength to carry out actions, which provides an abstraction instead of coding in charm's Python files.

Design objectives:

  1. Design as reusable layer(s)
  2. Be compatible with ...

  2017-05-29

Charm layer-basic

Have you ever wondered what layer-basic is for? and why every charm needs to include it? In this article we will take a look at its code base to decipher this mystery.

Hooks

We already know hooks are hardcoded. Juju expects certain hooks and hook sequence is always executed in ...

  2017-05-27

Juju charm Python2

Why do we want to build Python2 charms? Charms are claimed to built for Python3. However, the catch is that charms are also built for Ubuntu ecosystems ONLY if you care to examine its code base.

Take __init__.py in charmhelpers/charmhelpers for example:

try:
    import six  # flake8: noqa
except ...

  2017-04-24

Charm Reactive

In this article we will study charm's reactive framework to get a firm understanding of what they mean by writing an reactive charm.

Hooks

Decorator: @hook Definition: charm.reactive/charms/reactive/decorators.py

Hooks give one a dedicated sequence that execution is guaranteed in that order and developer can ...

  2017-04-24

Charm chained states

This charm is created to demonstrate chained states using Juju charm. Chained states is essentially mirroring a pattern of any sequential execution in a workflow. Potentially each execution block can also have conditions to set the next state, even though this type of knowledge should be exposed outside function element ...

  2017-03-30

MAAS vs. Ironic

This article is to analyze Openstack Ironic and Canonical MAAS, both are tools to turn baremetal into a pool of managed resources that are ready for consumption by upstream srervice. On the highest level, a baremetal is either managed or not-managed. Being managed requires that the manager is aware of ...

  2017-03-22

Baremetal provisioning

Everyone of us has installed an operating system to a computer at some point in life. It is easy to perceive inserting a disk or USB key to make this happen because the OS files are there. A fancier version is to boot from network using PXE boot option, which ...

  2017-03-15

Openstack Ironic

This article is an outcome of my writing a Juju-Ironic provider. The plan was to first figure out Ironic APIs that will achieve what Juju provider needs — start an instance on demand, then build those REST requests into Juju provider code. After playing with Ironic API and Openstack's Devstack ...

  2017-02-28

Introduction of Juju charms

Juju charms are, charming. It promises a selection of blueprints that hold magic to make an application deployment easy. But devils are in the details, as always the case. In this article we will walk in the charm world to learn its design.

Bundle, charm, service, application

Juju terms can ...