Mürekkep balığı çok kiracılı yapısı, ana makinenizin birden fazla sanal makine başlatmasına tek bir başlatma çağrısı olan misafir cihazları.
Bu birden fazla Cuttlefish sanal makinesi, ana makine diskinin bir kısmını paylaşabilir
Bu da disk alanından tasarruf etmenizi sağlar. Her sanal makine,
Android bölümlerini kapsayan ayrı disk yer paylaşımı (ör. super
,
userdata
, boot
). Konuk diskinde yapılan tüm değişiklikler
konuklara özel disk yer paylaşımı sağlar. Böylece, her Cuttlefish sanal makinesi,
kopyalama/yazma görünümü sağlar. Her sanal cihaz daha fazla metin yazdıkça
ana makine diskindeki yer paylaşımlı dosyaların boyutu
Çünkü onlar, orijinal durum ile durum arasındaki deltayı yakalıyordu.
durumu özetlemeyi unutmayın.
Bindirme dosyaları, Cuttlefish diskini eski konumuna döndürmek için sıfırlanabilir orijinal durumu. Bu süreç powerwash.
Örnek numaraları
Mürekkep balığı cihazları ana makinede bulunan ve tükettiği kaynakları
örnek numarası. Örneğin, bir adb
bağlantısı TCP üzerinden açığa çıkarılıyor
1
örnek numarasına sahip Cuttlefish cihazının 6520
bağlantı noktasındaki sunucu soketi.
Birden fazla örnek başlatıldığında bağlantı noktasında bir TCP sunucu yuvası oluşturulur
İlk cihaz için 6520
, ikinci cihaz için 6521
ve
bağlantı noktası numarası ekleyin.
Desteklenen maksimum örnek sayısını değiştirin
TAP ağ cihazları gibi ana makine tarafı kaynakların
Mürekkep balığı sanal makineleri. Varsayılan olarak
cuttlefish-base Debian paketi
1
ile 10
arasındaki örnek numaraları için kaynaklar sağlar.
Bu, şurada num_cvd_accounts
değiştirilerek değiştirilebilir:
/etc/default/cuttlefish-host-resources
ve
cuttlefish-host-resources
hizmetini kullanabilirsiniz.
sudo systemctl restart cuttlefish-host-resources
Standart yapılandırmalar
Standart yapılandırmalar, Mürekkep balığı cihazlarının yapılandırmasını gösterir JSON biçiminde dışa aktarabilirsiniz. Standart yapılandırma JSON dosyaları oluşturabilirsiniz. çok kiracılı bir yapıda birden fazla Mürekkep balığı cihazının yapılandırmasını tanımlamak senaryoyu izler.
Aşağıda, standart yapılandırma JSON dosyaları için kullanılan biçim açıklanmaktadır (yer tutucuları cihaz yapılandırmalarıyla değiştirin).
{
"common": {
CONFIGURATIONS_APPLYING_TO_ALL_DEVICES
},
"instances": [
{
FIRST_DEVICE_CONFIGURATION
},
{
NTH_DEVICE_CONFIGURATION
}
]
}
Aşağıda, iki cihazlı bir kurulumun örnek yapılandırma dosyası verilmiştir: Telefon cihazı ve giyilebilir cihaz:
{
"instances": [
{
"@import": "phone",
"vm": {
"memory_mb": 8192,
"setupwizard_mode": "OPTIONAL",
"cpus": 4
},
"disk": {
"default_build": "/home/username/devices/cf_x86_64_phone-userdebug"
}
},
{
"@import": "wearable",
"vm": {
"memory_mb": 8192,
"setupwizard_mode": "REQUIRED",
"cpus": 4
},
"disk": {
"default_build": "/home/username/devices/cf_gwear_x86-userdebug"
}
}
]
}
Bu tabloda, iki cihazlar:
Element | Tür | Açıklama |
---|---|---|
instances |
Dizi | JSON nesneleri dizisi, her biri çok kiracılı cihaz grubu kullanıma sunulacaktır. |
@import |
Dize | Cihaz türünü belirtir ve cihaz için varsayılan değerleri belirler
yapılandırma. Desteklenen cihaz türleri şunlardır:
phone ve wearable . |
vm |
Nesne | Şuna özel sanal makine ortamı için geçerli olan özellikleri belirtir: cihaz örneğidir. |
memory_mb |
Sayı | Belirli bir sanal makine için ayrılacak bellek miktarı (megabayt cinsinden). |
setupwizard_mode |
Dize | Başlangıçta cihaz kurulum sihirbazının kullanıcı için çalıştırılıp çalıştırılmayacağını belirtir
çalışmasını sağlamalısınız. Kurulum sihirbazı modu için desteklenen seçenekler şunlardır:
DISABLED , OPTIONAL ve
REQUIRED . |
cpus |
Sayı | Sanal makineye ayrılan sanal CPU sayısı. |
disk |
Nesne | Kullanılan dosya sistemi yapılarının bulunmasıyla ilgili özellikleri belirtir tek bir sanal makine örneği çalıştırmak için de geçerlidir. |
default_build |
Dize | Mürekkep balığı sanal cihazını içeren klasörün yerel dosya sistemi yolu görüntüsüdür. |
cvd
ile dağıtılan yapılandırma dosyalarına ilişkin daha fazla örnek için bkz.
cvd_test_configs
klasörü olması gerekir.
Çok kiracılı örnekleri kontrol etme
Bu bölümde, çok kiracılı bir senaryoda cihazların nasıl başlatılacağı ve durdurulacağı açıklanmaktadır. Aşağıdaki seçenekleri kullanarak birden fazla Mürekkep balığı cihazını başlatabilirsiniz:
- Canonical config: Özelleştirilmiş lansman yapılandırmalarını açıklayan bir JSON yapılandırma dosyası kullanarak her listesi açılır.
- Tek davetli resmi: Birden çok etkinliği başlatma tek bir misafir resminden e-posta alırsınız.
Standart yapılandırmadan birden fazla sanal makine başlatma
Şunları açıklayan standart bir yapılandırma kullanarak birden çok sanal makine başlatmak için:
çok kiracılı senaryoda, --config_file=
ile cvd start
komutunu çağırın
aşağıdaki gibi flag önekini kullanın:
cvd start --config_file=CONFIG_FILE
Aşağıda,
/etc/phone.json
cvd start --config_file=/etc/phone.json
Tek bir konuk görüntüsünden birden fazla sanal makine başlatma
Tek bir misafir resmini kullanarak birden çok Mürekkep balığı cihazını başlatmak için
--num_instances=N
işareti (burada N sayıdır)
lansman olacak. Varsayılan olarak cihazlar 1
örnek numarasından başlar.
cvd start --num_instances=N
Başlangıç örneği numarasını değiştirmek için aşağıdakilerden birini yapın:
--base_instance_num=N
işaretini şununla ekleyin: İlk örnek numarası olarak N.cvd start --base_instance_num=N
Cuttlefish'i, eşleşen bir kullanıcı hesabıyla başlat
vsoc-NN
; burada NN, temel örnektir biçiminde girin. Örneğin, bir kullanıcı ile Mürekkep balığı'nı başlatmak içinvsoc-01
hesabı, çalıştır:cvd start --base_instance_num=1
Cihazları durdurma
Son cvd start
çağrısıyla başlatılan tüm cihazları durdurmak için şu komutu çalıştırın:
cvd stop