Ծ֧ǵĹҵ

10Ԫ 50Ԫ





֤룺  ֤,?ˢ֤



  ֪ Ŀ Lib Ƶ iPerson γ ֤ ѯ Model Center   Code  
Ա   
   
 
     
   
 
 
Linux ϵͳά OpenLMI
 
ߣ ZhangShuo
  3925  次浏览      27
 2020-12-24
 
༭Ƽ:
ҪܰͰ͵ķֲʽøʵԼʹóʵԭԼʵսĶ˽顣
CSDNɻAlice༭Ƽ

ǰ

OpenLMI һ Linux ƽ̨ķùӦò𹤾ߣĿǰҵù Chef,Puppet,Saltstackȥ 10 ̨϶˵С˼ûκѹ ȥ 50 ̨Ҳ˵ûȥ 1000+ ̨أDzǾͷʹˣͬӲͬں˰汾ͬ汾ΪЧʣOpenLMI ˴óOpenLMI ɹءûû顢ϵͳװɾȡͨ Python ԿȽͬƷ˵OpenLMI Ƿdzģ Fedora 21 Ϊƽ̨ OpenLMI IJ̺ʹ÷

OpenLMI ǿʽ Linux ܹOpenLMI ǿԴĿʹ WBEM ׼ Linux ϵͳWBEM Web-Based Enterprise ManagementWBEM DMTFDistributed Management Task Forceֲʽ飩೧̵İ´ĿΪҵһ׼ĽӿڼWBEM ģؼIJģͣͶķʽ淶Encoding SpecificationԼڿͻ˺ͷ֮䴫ݵģʽWBEM (Web-Based Enterprise Management) Ϊһҵ糫飬ʼ 1996 ꣬淶ҵܹԴʹá

OpenLMI

OpenLMI ṩһ׳ APIϵͳعԼײϵͳĸӳͳһOpenLMI ṩһ׵Ĵͻ˳й롣дɰװЩҪعܵķ ϣȻ OpenLMI Щ򣬲ṩؽӿڣͻ˳ǣɿȡ򣬿нӿʹ C/C++Python Java ԡoenlmi ĿΪ Linux ϵͳṩõĻʩûáӲϵͳϵͳOpenLMI ּڼüƷOpenLMI Ϊ Linux ṩùӿڡOpenLMI ûִ²

áͼط

áͼرػԶ̲ϵͳ

áرػԶ̵Ĵ洢磻

ʹ C/C++PythonJava нϵͳ

ͼ 1. OpenLMI Ľṹʾͼ

OpenLMI Ľṹʾͼ

ͨͼ 1 ˽⵽ OPenLMI Ҫ¼֣

һ״ֳΪ LMI Providers CIM ProvidersɰװҪصķϡѯ޸ĺͼϵͳ

һ껴Զ APIֳ OpenLMI object brokerеĴ򣬲Ϊṩȡӿڡ

һ껴ͨѶʩʹ https ӵ XML OpenLMI ΪǰȫԣΪʹ TLSHTTPSмͨš

LMIshellһͻ˿ͻ˳ͨ OpenLMI object broker LMI Providersͻͨʹ WBEM + HTTPS Э CIMOM LMIshell ͻϵͳ

һйߺ lmi

űߣ Python lmishell

ԣ C/C++Java ȣɽṹͼ 2

ͼ 2. LMIshell ɽṹ

Ҫ Linux а汾 OpenLMI ֧

Fedora OpenLMI Ҫƽ̨ Fedora 18 汾ʼ֧֣Ƽʹ Fedora 21 ֮İ汾ǿṩйRHEL CentOSӰ汾 7 ʼ֧֣а汾ṩ󲿷ֹûҪͨ epel Դװ openlmi SuSE Linux Ӱ汾 12 ʼ֧֣ṩһֹDebian Ubuntu а汾Ŀǰ֧֡

OpenLMI Ӧû

ʹ򵥵ųֱֱ̃́Ϳͻˡϵͳƽ̨ȫ 64 λ Fedora 21 ϵͳip ַƣ

192.168.0.1 Managed systems ƣserver1

192.168.0.2 LMIshell Clint ƣclient2

2 ڵµ hosts ļ

# vi /etc/hosts

192.168.0.1 server1

192.168.0.2 client2

Ȱװ

# yum install openlmi

Ȼ

# systemctl start tog-pegasus

# systemctl enable tog-pegasus

򿪷ǽ 5989 ˿

# firewall-cmd --permanent --add-port 5989/tcp

Selinux Ϊ permissive ģʽ

# setenforce 0

pegasus û

# passwd pegasus

Զ̷Ȩ

޸ļ

#vi /etc/Pegasus/access.conf

һУ

ALL EXCEPT pegasus:wbemNetwork

޸Ϊ

ALL EXCEPT root pegasus:wbemNetwork

ͻ

Ȱװ OpenLMI űļ

# yum install 'openlmi-scripts*'

˵Ŀǰ OpenLMI űļҪģ飺

OpenLMI-account ûʻģ

OpenLMI-logicalfile: ļĿ¼ģ

OpenLMI-networking: ùģ

OpenLMI-powermanagement: Դģ

OpenLMI-service: ϵͳģ

OpenLMI-storage: 洢ģ

OpenLMI-hardware: ӲϢģ

OpenLMI-software : ģ

OpenLMI-journald : ϵͳ־ģ

ca

# scp root@ server1:/etc/Pegasus/server.pem /etc/pki/ca-trust/source/anchors/client2-cert.pem

# update-ca-trust extract

lmi

lmi ʽ

lmi [options]

Ҫѡ

---hosts-file <hosts> ·Ŀļ ÿһ

--user <user> Ŀʹõû

--same-credentials ʹһ֤ļ

-n --noverify ֤ SSL ֤

-v ĻʾϢ

--trace ʾϵĴ

-c --config-file <config> ·Ϊûļ

-h --host <host> Ŀ

--notrace ֹʾ

--log-file <log_file> ־ļ

-N --no-headings ӡ

-L --lister-format (table | csv) ʹ table CSV ʽ

˵lmi ģʽ֧

file ļϵͳݸʽĹ

help ӡϢ

hwinfo ʾռӲϢ

system ʾռϵͳϢ

sssd sssd ϵͳܡ

selinux selinux

group ûܡ

service ϵͳ

storage Ĵ洢豸Ϣ

sw ϵͳ

net

power ϵͳԴ

user û

journaldϵͳ־

realmd: AD Kerberos Ա

locale; ü̲֡ԡʱʱȹܡ

˵ : ͬ Linux а汾ֵ֧в죬๦ȫ Fedora 21ûն lmi 뽻Ȼ롰 help ԵõбϢͼ 3 ͼ 3 롰 help Եõб

ͼ 3. lmi

lmi Ӧʵ

鿴Ӳ

Ҫ鿴Ӳڱʹýģʽ lmi> ʾ hwinfo ɡͼ 4

ͼ 4. 鿴Ӳ

ͼ 3 ʾռӲϢƻõͺƣCPU ͣCPU CPU ģCPU ĹƵʡcpu ߳ͺšڴڴƵʡڴϢ͵Ϣ ״̬ɫ˵ͼ 3 п SMART Status ״̬ʾ OKʾΪɫʾΪɫʾ״̬ȷ˵ϵͳûмľ״̬ʾΪɫ error ʾģû ռԶӲҪû롣һӣʹ -h ȻԶƼɣ嵥 1 Dz̺档

嵥 1. 鿴Ӳ

# lmi -h cyq
lmi> hwinfo
username: pegasus
password:
Hostname: centos70n02.linux.net
Chassis Type: SMBIOS Reseved
Manufacturer: HP
Model: Not Specified (ProLiant DL385p Gen8)
Serial Number: CN7230040Z
Asset Tag: CN7230040Z
Virtual Machine: N/A
Motherboard info: N/A
CPU: AMD Opteron(TM) Processor 6238
Topology: 2 cpu(s), 24 core(s), 24 thread(s)
Max Freq: 3500 MHz
Arch: x86_64
Mmory: 16.0 GB
Modules: 8.0 GB, DDR3 (DIMM), 1333 MHz, HP, Not Specified
8.0 GB, DDR3 (DIMM), 1333 MHz, HP, Not Specified
Slots: 2 used, N/A total

˵hwinfo Ҫ

hwinfo system ȡơ
hwinfo motherboardȡϢ
hwinfo cpuȡ CPU Ϣ
hwinfo memoryȡڴϢ
hwinfo [all] ȡϢ
hwinfo pciȡ pci Ϣ
hwinfo disks: ȡϢ

鿴ϵͳϢ

OpenLMI ռӲϢռغԶϵͳϵͳҪռݰϵͳ汾ϢǽãӿϢں˰汾ʱSElinux ״̬־ϵͳϵͳԵȡһӣ嵥 2 Dz̺档

嵥 2. 鿴ϵͳϢ

lmi> system
Host: localhost.localdomain
Hardware: To Be Filled By O.E.M.
Serial Number: To Be Filled By O.E.M.
Asset Tag: To Be Filled By O.E.M.
CPU: Intel(R) Celeron(R) CPU G1820 @ 2.70GHz, x86_64 arch
CPU Topology: 1 cpu(s), 2 core(s), 2 thread(s)
Memory: 8.0 GB
Disk Space: 65.7 GB total, 57.2 GB free
OS: Fedora release 21 (Twenty One)
Kernel: 3.19.3-200.fc21.x86_64
Language: zh_CN.UTF-8
Time Zone: Asia/Shanghai (NTP is on)
SELinux: on (Permissive)
Firewall: off
Logging: on (journald)

Networking:
NIC 1
Name: wlp0s26u1u1
Status: In Service
IPv4 Address: 192.168.1.101
IPv6 Address: fe80::16e6:e4ff:fe29:6c16
MAC Address: 14:E6:E4:29:6C:16

ķ

lmi service 鿴ֹͣغԶ̷ӡ 鿴˳ʹ

lmi> service show httpd.service

Name=httpd

Caption=The Apache HTTP Server

Enabled=No

Status=Running

ֹͣһطʹ

lmi> service stop sshd.service

˵service Ҫ

list ӡзб

show ʾ

start һ

stop ֹͣһ

restart һ

reload ¼һ

ϵͳ

sw 鿴װɾغԶ̵Ǽӣ

鿴һ飬ʹ

lmi> sw show pkg php

װһʹ

lmi> sw install httpd

һʹ

lmi> sw update nmap

ɾһʹ

lmi> sw remove nmap

lmi storage д洢ãIJȽ϶߽ܼ࣬õ , 鿴洢豸б

ʹlmi> storage list嵥 3 Dz̺档

嵥 3.鿴洢豸б

lmi>storage list
Name Size Format
/dev/sda 8589934592 MS-DOS partition table
/dev/sr0 58120192 iso9660
/dev/mapper/fedora-root 7159676928 ext4
/dev/mapper/fedora-swap 859832320 swap
/dev/sda1 524288000 ext4
/dev/sda2 8064598016 physical volume (LVM)

ʹνṹʾ洢豸бʹlmi> storage tree嵥 4 Dz̺档

嵥 4..ʹνṹʾ洢豸б

lmi> storage tree
Name Size Format
/dev/sda 8589934592 MS-DOS partition table
/dev/sda1 524288000 ext4
/dev/sda2 8064598016 physical volume (LVM)
fedora 8061452288 volume group (LVM)
/dev/mapper/fedora-root 7159676928 ext4
/dev/mapper/fedora-swap 859832320 swap

鿴ijһ洢豸飬嵥 5 Dz̺档

嵥 5.鿴ijһ洢豸

lmi> storage show /dev/disk/by-id/ata-VBOX_HARDDISK_VB289545a2-5d00c206-part1
/dev/disk/by-id/ata-VBOX_HARDDISK_VB289545a2-5d00c206-part1:
Name Value
Type Partition
DeviceID /dev/disk/by-id/ata-VBOX_HARDDISK_VB289545a2-5d00c206-part1
Name /dev/sda1
ElementName sda1
Total Size 524288000
Block Size 512
Partition Type primary
Starting sector 2048
Ending sector 1026047
Sector Size 512
Disk /dev/sda
Filesystem ext4
UUID 4ebdf6a9-530e-417f-b9ef-a7974e2aa339
Persistence Persistent
Total space on filesystem 499355648
Free space on filesystem 333806592

ӿڹ

ʹ lmi net ûԲ鿴ӵӿڵӿơĿǰ״̬MAC ַбܼõ 鿴豸бʹ

lmi>net device list
ElementName OperatingStatus MAC Address
enp0s3 In Service 08:00:27:49:FE:04
lo Not Available 00:00:00:00:00:00

ӿµ ip ַʹ

lmi> net address replace enp0s3 192.168.0.130 24

һӿڣʹ

lmi> net activate enp0s3

dns ip ַʹ

lmi> net dns add enp0s3 192.168.0.1

ûû

lmi user group ûûģʹԲ鿴ӡɾػԶϵϵͳʻܼõӡ

鿴Ѿڵûбʹ

lmi> user list

鿴Ѿڵûбʹ

lmi>group list

һûʹ

lmi> user create cyq1

鿴Ѿijûбʹ

lmi> user show cyq1

Name UID Home Login shell Password last change

cyq1 1001 /home/cyq1 /bin/bash 2015/04/15

ɾһûʹ

lmi> user delete cyq1

Դ

lmi power еԴģʹرա߼ܼõӡ

鿴ϵͳֵ֧ĵԴʹ

lmi> power list

PowerState Available

suspend yes

force reboot yes

hibernate yes

force poweroff yes

poweroff yes

reboot yes

ϵͳʹ

lmi> power reboot

ϵͳߣʹ

lmi> power hibernate

ϵͳʹ

lmi> power suspend

رϵͳʹ

lmi> power poweroff

ֱģʽ˵

˽ģʽ⡣ʹֱģʽֱͨģʽִٶȱȽϿ죬ҪûϤֲ 2 ӣ

ʾԶmanagedsystem.mydomain.org еķб

# lmi -h managedsystem.mydomain.org service list C all

Զϵ raid 洢

#lmi -h managedsystem.mydomain.org storage raid create 5 /dev/sdb /dev/sdd /dev/sde

ܽ

Linux ϵͳԱ˵ OpenLMI һdzõĹߣܹпٴIJϵͳ洢װɾȹĽܵ绷һ򵥵ӣŷȺģԽԽԶúͲЩܹʹ÷dzײСɱϵͳԱļֵõ֡

 
   
3925       27

DevOpsת뵽ҵĻ
DevOps ģ͡ݽ
DevOps ˽ PaaS ƽ̨ʵ
΢ŶӵDevOpsʵʾ
ĵ

DevOpsӦά봴
ά滮
ʵҵӦòԶ
άԶʵ֮·
ؿγ

ԶάߣDevOps
άDevOps
MySQLŻάѵ
ITϵͳά
 
»ƻ
DeepSeekģӦÿ 6-12[]
˹.ѧϰTensorFlow 6-22[ֱ]
UML EAз 6-30[]
Ƕʽܹ-߼ʵ 7-9[]
û顢Բ 7-25[]
ͼݿ֪ʶͼ 8-23[]
 
DevOps 廯ʵʩ
DevOps иЧԻܹʵ
DevOps ڹ˾Ŀеʵ
λ Kubernetes DevOps ˮ
Kubernetesʵս
¿γ
DevOpsϵʵƽ̨
KubernetesDevOpsʵ
άDevOps
Kubernetesҵ
ҵDevOpsϵƽ̨
...   
ɹ
DevOpsϵʵƽ̨
DevOpsϵʵƽ̨
йƶͨ 滮
ijչ˾ IT滮ҵܹ
ijڹ˾ ITITIL V3
...