masoudniki/vcenter

管理并使用 vSphere 自动化 API 的简单 SDK

3.3 2022-11-29 13:56 UTC

This package is auto-updated.

Last update: 2024-09-29 05:36:31 UTC


README

Actions Status Latest Stable Version License
codecov Scrutinizer Code Quality Build Status Code Intelligence Status

用于与 vSphere 自动化 API 交互的 SDK。您可以使用它来管理由 ESXi 和 vCenter 驱动的机器。

支持版本

安装

使用非常简单,只需运行以下命令

composer require masoudniki/vcenter

如何使用它

只需传递参数给 VmwareApiClient 并创建一个实例

    require "vendor/autoload.php";
    $vmware=new \FNDEV\vShpare\VmwareApiClient(
        "127.0.0.1",
        [
            "username"=>"admin",
            "password"=>"admin"
        ],
         "443",
    );

参数

主机

只接受不带协议、斜杠字符或 IP 地址的域名

凭证

您有两种身份验证选项

使用用户名和密码

您可以将用户名和密码作为数组传递以获取会话 ID

[
    'username'=>'local@admin',
    'password'=>'123456789'
]

或使用 Vmware-Api-Session-Id

增加 vCenter 的会话超时并直接传递会话 ID

[
    'Vmware-Api-Session-Id'=>$sessionId
]

对于初始化和首次使用,您可以传递用户名和密码,然后使用 VmwareApiClient 上的 getSessionId() 方法获取会话

    require "vendor/autoload.php";
    $vmware=new \FNDEV\vShpare\VmwareApiClient(
        "127.0.0.1",
        "443",
        [
            "username"=>"admin",
            "password"=>"admin"
        ],
    );
    $vmware->getSessionId();

端口

vCenterAppliance 应用的端口默认值是:443

SSL

如果您使用自签名证书,请传递证书路径或设置 true,否则如果不想检查证书,请设置 false

协议

如果您在 HTTP 协议上运行 vCenterAppliance,请设置 http 或如果在使用 HTTPS,请设置 https

基础 URL

REST API 的主要路径默认值是:"/rest/vcenter"

认证 URL

创建 Vmware-Api-Session-Id 的认证 URL 默认值是:"/rest/com/vmware/cis/session"

客户端

您可以创建自己的 guzzle http 客户端 并设置其配置,然后将其传递给 VmwaareApiClient

许可

IRAN 用 ❤️ 制作

MIT 许可证 (MIT)。有关更多信息,请参阅许可文件

🙋 贡献

如果您发现任何问题或有更好的方法,请随时打开一个问题或拉取请求。如果您在开源项目中使用 VmwareApiClient,请创建一个拉取请求,在 README.md 文件中提供其 URL 作为示例应用程序。

❗ 安全

如果您发现任何与安全相关的问题,请通过电子邮件 masoud.niki79@gmail.com 而不是使用问题跟踪器

TODO

  • 将其他 API 添加到 SDK 中
  • 编写更多测试
  • 为发送选项(如 createVm)的方法创建请求类
  • 重构不良实践