Longhorn クラウド ネイティブ コンテナ分散ストレージ - Python クライアント

Longhorn クラウド ネイティブ コンテナ分散ストレージ - Python クライアント

[[421320]]

この記事はWeChatの公開アカウント「Hacker Afternoon Tea」から転載したもので、著者はShaoです。この記事を転載する場合は、Hacker Afternoon Tea公式アカウントまでご連絡ください。

現在、Longhorn UI を使用して Longhorn を操作できます。それまでの間、以下に示すように Python を使用して Longhorn API にアクセスできます。

1. Longhorn APIエンドポイントを取得する

Longhorn と通信する 1 つの方法は、longhorn-frontend サービスを使用することです。

Longhornがインストールされている同じクラスタで自動化/スクリプトツールを実行している場合は、エンドポイントhttp://longhorn-frontend.longhorn-system/v1に接続します。

ローカル マシンで自動化/スクリプト ツールを実行している場合は、kubectl port-forward を使用して longhorn-frontend サービスを localhost に転送します。

  1. kubectl ポート転送サービス/longhorn-frontend 8080:http -n longhorn-system

エンドポイント http://localhost:8080/v1 に接続します。

2. Pythonクライアントの使用

longhorn.py ファイル (Python クライアントが含まれています) を次の Python スクリプトにインポートし、API エンドポイントからクライアントを作成します。

https://github.com/longhorn/longhorn-tests/blob/master/manager/integration/tests/longhorn.py

  1. ロングホーンをインポートする
  2.  
  3. # 自動化/スクリプトツールがLonghornインストールされている同じクラスタ内にある場合
  4. longhorn_url = 'http://longhorn-frontend.longhorn-system/v1'  
  5. # `longhorn-frontend` サービスをローカルホスト転送する場合
  6. longhorn_url = 'http://localhost:8080/v1'  
  7.  
  8. クライアント = longhorn.Client(url=longhorn_url)
  9.  
  10. # ボリューム操作
  11. #すべてのボリュームを一覧表示する
  12. ボリューム = client.list_volume()
  13. # ボリューム取得する 名前/ID
  14. testvol1 = client.by_id_volume(id= "testvol1" )
  15. # TESTVOL1を添付
  16. testvol1 = testvol1.attach(hostId= "worker-1" )
  17. # TESTVOL1を切り離す
  18. testvol1.デタッチ()
  19. # TESTVOL1スナップショットを作成します 名前 
  20. スナップショット1 = testvol1.snapshotCreate( name = "スナップショット1" )
  21. #スナップショットからバックアップを作成するNAME  
  22. testvol1.snapshotBackup( name = snapshot1.name )
  23. # TESTVOL1レプリカ更新します
  24. testvol1.レプリカ数を更新(レプリカ数=2)
  25. # Longhorn 統合テストその他の例については、https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests を参照してください。
  26.  
  27. # ノード操作
  28. #すべてのノードを一覧表示する
  29. ノード = client.list_node()
  30. # ノード取得する 名前/ID
  31. node1 = client.by_id_node(id= "ワーカー-1" )
  32. # NODE1スケジュールを無効にする
  33. クライアント。更新(node1、allowScheduling= False )
  34. # NODE1スケジュールを有効にする
  35. クライアント。更新(node1、allowScheduling= True )
  36. # Longhorn 統合テストその他の例については、https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests を参照してください。
  37.  
  38. # 設定操作
  39. #すべての設定を一覧表示する
  40. 設定 = client.list_setting()
  41. # 設定取得する 名前/ID
  42. バックアップターゲット設定 = client.by_id_setting(id= "バックアップターゲット" )
  43. #設定を更新する
  44. バックアップターゲット設定 = クライアント。更新(backupTargetsetting、値 = "s3://backupbucket@us-east-1/" )
  45. # Longhorn 統合テストその他の例については、https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests を参照してください。

<<:  クラウドネイティブアーキテクチャが従うべき7つの原則

>>:  クラウドコンピューティングのワークロードを保護する方法

推薦する

周囲のリソースを活用してウェブサイト開発のレベルを決定する方法

私は3年間ウェブサイトを作ってきました。何も知らない小さなウェブマスターから、5つのウェブサイトを所...

モバイル広告が収益を生むために必要な3つの要素

はじめに:モバイル広告が台頭し始めた当初、マーケティング担当者は 300*250 のバナー広告を圧縮...

SEO における他の人の成功体験を「借りる」方法についての簡単な説明

SEOは10年近く開発され、その間に多くの成功事例が生まれました。その成果に感動しないと言うのは嘘で...

UEESHOP独立ステーションシステムが再び大規模にアップデートされ、売り手の注文量の増加が期待される

2018年4月16日、UEESHOP独立ステーションシステムは今年も大規模なアップデートを迎えました...

2018年中国オンライン旅行市場の洞察

流行の影響により、中国のオンライン観光市場の規模はほぼ半減し、2019年と比較して前年比で約50%減...

クラウド コンピューティング センター オブ エクセレンス: エンタープライズ デジタル トランスフォーメーションの支点

業界全体にわたって、エンタープライズ クラウドの導入が大幅に増加しました。多くの企業がクラウド コン...

医療の最適化は今日のSEOの混乱を象徴している

7月の百度Kステーション事件では、医療系ウェブサイトが大きな損失を被り、百度の大規模調整における最大...

BuyVMはどうですか? 10G の帯域幅と無制限のトラフィックを備えたニューヨーク VPS を評価してください。期待を上回る結果になるかもしれません。

buyvmには4つのデータセンターがあります。多くの人が苦情に耐えるためにルクセンブルクを選びます。...

P2Pオンライン融資が再び返済困難に直面:天利戴は設立から半年で危機に陥る

王銀天下の返済難に続き、P2P業界は最近、さらに興味深い連鎖返済延滞事件に遭遇した。 9月、湖北省孝...

ecvps 完全マネージド VPS (DA パネル付き) 30 ドル/年、2.58 ドル/月

ecvpsは中国人が開設したVPSです。数年にわたって利用されており、非常に安定しています。コミュニ...

ブランドマーケティングはデュレックスや江小白のようでなければならないのでしょうか?

デュレックスと江小白のコピーライティングは常に話題を呼んでいるため、デュレックスと江小白に倣う広告主...

コメントベースのプロモーションで勝つには?節度を保つにはどうすればいいでしょうか?

Baidu に「コメントベースのプロモーション」と入力すると、コメントがプロモーションであるという記...

ウェブマスターとそのウェブサイトに対するチンピラの見解

私は作家です。1日平均2万~3万語をタイプします。内容は多岐にわたり、ダイエットのヒントからゲーム戦...

エネルギー分野における IoT エッジ コンピューティングの課題と機会

IoT デバイスの増加により、企業がデジタル化を進める中で処理できる、また処理しなければならないデー...