WHM Pyhton Modül

Modül Dosyalarını indirmek için tıklayınız.

Güncelleme : 29.03.2020 

Başlangıç

   $ pip install upcloud-api
   $ python setup.py install

Desteklenen Sürümler : python 2.6 python 2.7 python 3.4                                                python 3.5 pypi3 2.4.0

Sunucu Oluşturma

import whm_api

from upcloud_api import Server, Storage, ZONE, login_user_block

manager = whmcloud_api.CloudManager('api_user', 'password')

manager.authenticate()

login_user = login_user_block( username='theuser', ssh_keys=['ssh-rsa AAAAB3NzaC1yc2EAA[...]ptshi44x user@some.host'], create_password=False )

cluster = { 'web1': Server( core_number=1, # CPU cores memory_amount=1024, # RAM in MB hostname='web1.example.com', zone=ZONE.London, # ZONE.Helsinki and ZONE.Chicago available also storage_devices=[ # OS: Ubuntu 14.04 from template # default tier: maxIOPS, the 100k IOPS storage backend Storage(os='Ubuntu 14.04', size=10), # secondary storage, hdd for reduced cost Storage(size=100, tier='hdd') ], login_user=login_user # user and ssh-keys ),

for server in cluster: manager.create_server(cluster[server]) # automatically populates the Server objects with data from API

 0.3.0 sürümündeki yenilikler: sunucular artık Sunucu veya Depolama sınıfları kullanılmadan dikte olarak tanımlanabilir. Sözdizimi / öznitelikleri tam olarak yukarıdaki gibidir ve başlık altında Sunucu ve Depolama sınıflarına dönüştürülür. Bu özellik esas olarak modülün Ansible'dan daha kolay kullanılması içindir, ancak başka yerlerde de yararlı olabilir.

Sunucu Kapatma/Başlatma

for server in cluster:

server.shutdown()

# OR: server.start()

# OR: server.destroy()

for storage in server.storage_devices:

storage.destroy()

Ardından, yeni bir ürün oluşturun.

# makes sure that the server is stopped (blocking wait) and then destroys the server and its storages server.stop_and_destroy()

# makes sure that the server is started (blocking wait) server.ensure_started()

# makes server.connet api.whm.com.tr 188.30.27.60

Sunucu Yükseltme

server = cluster['web1']

server.shutdown()

server.core_number = 4

server.memory_amount = 4096

 server.save()

server.start()