diff --git a/public/curl2.php b/public/curl2.php new file mode 100644 index 00000000..59cb3147 --- /dev/null +++ b/public/curl2.php @@ -0,0 +1,17 @@ +"root@my.domain", "init_masters"=>"1" ) ); + + +curl_setopt( $ch, CURLOPT_POSTFIELDS, $payload ); +curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json')); +# Return response instead of printing. +curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); +# Send request. +$result = curl_exec($ch); +curl_close($ch); +# Print response. +echo "
$result
"; + diff --git a/public/dialogs/k8s-new.php b/public/dialogs/k8s-new.php index 5a40cf4c..a9500297 100644 --- a/public/dialogs/k8s-new.php +++ b/public/dialogs/k8s-new.php @@ -10,6 +10,10 @@ err_messages.add({

translate('create master node and workers');?>

+

+ translate('Cluster name');?>: + +

translate('Master Nodes count');?>: @@ -42,8 +46,8 @@ err_messages.add({

translate('Worker Nodes count');?>: - - + +

diff --git a/public/js/clonos.js b/public/js/clonos.js index a31a09d4..68dafcfb 100644 --- a/public/js/clonos.js +++ b/public/js/clonos.js @@ -227,6 +227,11 @@ var clonos={ if(typeof this.vm_packages_obtain_min_id!='undefined') $('#bhyveObtSettings select[name="vm_packages"]').val(this.vm_packages_obtain_min_id).change(); } + if(id=='k8s-new') + { + this.getFreeCname(); // Берём с сервера свободное имя kubernetes + //this.trids=this.getTrIdsForCheck('jailslist'); + } this.dialogShow1(id); } }, @@ -858,6 +863,15 @@ var clonos={ $('dialog#jail-settings input[name="jname"]').val(data.freejname); $('dialog#jail-settings input[name="host_hostname"]').val(data.freejname+'.my.domain'); }, + getFreeCname:function() + { + this.loadData('getFreeCname',$.proxy(this.onGetFreeCname,this)); + }, + onGetFreeCname:function(data) + { + $('dialog#k8s-new input[name="cname"]').val(data.freejname); + //$('dialog#jail-settings input[name="host_hostname"]').val(data.freecname+'.my.domain'); + }, onUsersAdd:function(data) { @@ -1835,6 +1849,11 @@ var clonos={ this.imageRemove(trid); return; } + if(tblid=='k8slist') + { + this.ks8Remove(trid); + return; + } alert(tblid); return;break; case 'icon-arrows-cw': @@ -2163,9 +2182,36 @@ var clonos={ $('div.main').removeClass('asplit'); }, - onK8sCreate:function(data) + onK8sCreate:function(tdata) { - alert(JSON.stringify(data)); + var data=JSON.parse(tdata); + this.dialogClose(); + if(typeof data!='undefined') + { + if(typeof data['Message']!='undefined') + { + this.notify(data.Message,'success'); + } + } + }, + ks8Remove:function(id) + { + var c=confirm(this.translate('You want to delete kubernetes «'+id+'»! Are you sure?')); + if(!c) return; + + var posts=[{'name':'k8sname','value':id}]; + this.loadData('k8sRemove',$.proxy(this.onKs8Remove,this),posts,false); + }, + onKs8Remove:function(tdata) + { + var data=JSON.parse(tdata); + if(typeof data!='undefined') + { + if(typeof data['Message']!='undefined') + { + this.notify(data.Message,'success'); + } + } }, diff --git a/public/pages/k8s/k8slist.table b/public/pages/k8s/k8slist.table index c1efa515..847dba87 100644 --- a/public/pages/k8s/k8slist.table +++ b/public/pages/k8s/k8slist.table @@ -1,5 +1,5 @@ - + #name# #cluster# #masters# @@ -8,6 +8,6 @@ - + \ No newline at end of file diff --git a/public/pages/k8s/ru.index.php b/public/pages/k8s/ru.index.php index a433ff67..feb708ed 100644 --- a/public/pages/k8s/ru.index.php +++ b/public/pages/k8s/ru.index.php @@ -11,6 +11,12 @@ $clonos->useDialogs(array( 'k8s-new', )); +/* +Модуль kubernetes использует в работе преднастроенный образ Linux, который не входит в базовую установку ClonOS. +Если вы хотите использовать модуль k8s, нажмите кнопку 'инициализация' для скачивания и подготовки образа k8s к работе. +Подразумевается, что система имеет доступ в Internet. Объем образа который будет загружен приблизительно 4 GB. +*/ + ?>

K8S кластеры:

Создать Kubernetes

diff --git a/public/test.k8s b/public/test.k8s new file mode 100644 index 00000000..0a17ce43 --- /dev/null +++ b/public/test.k8s @@ -0,0 +1 @@ +{"master_nodes":"1","master_ram":"1","master_cpus":"1","master_img":"10","worker_nodes":"1","worker_ram":"1","worker_cpus":"1","worker_img":"10","pv_enable":0,"kubelet_master":0} \ No newline at end of file