1) Introdução
A UFG - Universidade Federal de Goiás, visando apoio tecnológico para sua área fim, ou seja, educação, busca pesquisar, estudar e implantar soluções para suas demandas. Uma delas é a educação à distância e/ou apoio educacional para docentes em ministração de aulas, preparo e disponibilização de materiais.
2) Responsáveis pelo Projeto
Dois órgãos, estrategicamente se juntam para viabilizar e implementar uma solução. Existe um aplicação altamente usada e difundida no meio tecnológico e pedagógico, chamada Moodle [0], é uma ferramenta Virtual de Aprendizagem, conhecida como AVA. O Ciar (Centro Integrado de Aprendizagem em Redes) [1] tem como princípio a articulação entre ensino-pesquisa em processos de aprendizagens formais e não formais em projetos de ensino e extensão. Basicamente, o Ciar cuida da parte lógica, pedagógica e de personalização do ambiente, por outro lado, o Cercomp (Centro de Recursos Computacionais) [2] orgão responsável pela tecnologia da informação e recursos computacionais em contra partida, exerce o papel físico de infraestrutura tecnológica, manutenção e disponibilidade.
Esse apoio se fixa no comprometimento dos orgão em promover um solução institucional para ensino a distância e de apoio presencial.
3) Arquitetura da Solução
O Cercomp possui um repositório [3], com base no código fonte oficial do Moodle [7], os plugins, temas, blocos e módulos produzidos são armazenados e vinculados ao oficial sempre que necessário, ou seja, em uma liberação de nova versão, correção de segurança ou após algum período estipulado.
Para melhor atender as váriadas demandas é feita uma instalação para cada orgão ou unidade acadêmica, porém, um único código fonte é compartilhado entre elas, centralizando e facilitando a gerência por uma equipe pequena e especializada [8]. Criamos um script que possibilita essa integração em [6].
O padrão adotado para os endereços de acesso é http://ead.unidade.ufg.br, atualmente soma-se em torno de 47 ambientes disponibilizados [4], outras informações técnicas podem ser obtidas em nosso sítio [2].
4) Manutenção
4.1) Criação de novos ambientes
Para criar um ambiente acessível por meio de http://ead.novoambiente.ufg.br, siga as etapas abaixo.
1) Conecte-se via SSH ao servidor de banco de dados e:
-
Efetue o login como usuário root;
- acesse o console do mysql por meio do comando mysql;
- crie o banco de dados
CREATE DATABASE moodle_novoambiente CHARSET UTF8; GRANT ALL ON moodle_novoambiente.* TO 'usuário_do_banco_de_dados'@'200.137.221.167' IDENTIFIED BY 'senha'; #este comando cria o usuário que acessará o banco por meio do servidor web FLUSH PRIVILEGES;
2) Conecte-se via SSH ao servidor web e:
- Efetue o login como usuário root;
- crie o diretório /mnt/data/moodledata/moodledata-novoambiente, onde "novoambiente" é o nome do ambiente a ser criado;
- altere o dono do diretório acima por meio do comando
chown -R www-data:www-data /mnt/data/moodledata/moodledata-novoambiente
- crie um novo arquivo de config no diretório /mnt/data chamado ead.novoambiente.ufg.br-config.php baseado em um dos arquivos existentes ou no modelo abaixo:
<?php /// Moodle Configuration File
unset($CFG);
$CFG = new stdClass;
$CFG->dbtype = 'mysqli';
$CFG->dbhost = '200.137.221.169'; // Servidor atual do banco de dados do moodle
$CFG->dbname = 'nome_do_banco_de_dados';
$CFG->dbuser = 'usuario_do_banco_de_dados';
$CFG->dbpass = 'senha_do_banco_de_dados';
$CFG->dbpersist = "true";
$CFG->prefix = 'mdl_';
$CFG->wwwroot = 'http://ead.novoambiente.ufg.br';
$CFG->dirroot = '/mnt/data/moodle-XX'; // Onde XX é a versão mais atual do moodle
//
No momento a versão mais atual é a 24 $CFG->dataroot = '/mnt/data/moodledata/moodledata-novoambiente';
$CFG->directorypermissions = 00775;
$CFG->admin = 'admin';
$CFG->passwordsaltmain = 'uHX `U<jdB5)T)#X=UAq#lbc^V<6{iX(dpyJ0Y+@=';
require_once("$CFG->dirroot/lib/setup.php");
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
?>
- crie o arquivo /etc/nginx/sites-available/ead.novoambiente.ufg.br.conf baseado em um dos arquivos existentes ou no modelo abaixo:
server {
root /mnt/data/moodle-XX; # Onde XX é a versão utilizada.
# Atualmente a versão mais recente é a 24.
listen 80;
listen 443 ssl;
index index.php index.html index.htm;
server_name ead.novoambiente.ufg.br;
location ~ \.php {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_pass php;
}
}
- habilite o site criado
ln -s /etc/nginx/sites-available/ead.novoambiente.ufg.br.conf /etc/nginx/sites-enabled
- renicie as configurações nginx
/etc/init.d/nginx reload
3) Abra um chamado em http://oscercomp.ufg.br e solicite o registro do endereço do novo ambiente de EAD no servidor DNS da UFG. A URL http://ead.novoambiente.ufg.br deve ser endereçada ao IP 200.137.221.167. É preciso especificar isto no chamado. Aguarde o processamento da tarefa, isto pode levar um dia ou mais. O endereço será acessível apenas quando for efetuado o novo registro no servidor DNS.
No entanto, é possível acessar localmente o endereço do novo ambiente editando, em seu próprio computador, o arquivo hosts. No Linux este arquivo encontra-se no diretório /etc, enquanto no Windows encontra-se no diretório %systemroot%\system32\drivers\etc. Edite o arquivo e insira a seguinte linha:
200.137.221.167 ead.novoambiente.ufg.br
4) Acesse o ambiente por meio do navegador e finalize a criação do novo ambiente de EAD.
4.2) Atualização
Para atualizar um ambiente de uma determinada versão para outra, é preciso galgar todas versões existentes entre a versão atualmente utilizada e a futura versão. Por exemplo, para atualizar a versão 1.9 para a 2.4, é preciso, primeiramente, atualizar a versão 1.9 para a 2.0, em seguida atualizar a versão 2.0 para a 2.1 e assim por diante. Haverá problemas caso seja feita a atualização direta para a versão 2.4.
Antes da atualização, é recomendável fazer backup dos arquivos do ambiente a ser atualizado (/mnt/data/moodledata/moodledata-ambiente), bem como do banco de dados deste.
Exemplo de atualização da versão 1.9 para a 2.4
- conecte-se via SSH ao servidor web e, em seguida, faça login como root.
- edite o arquivo /mnt/data/ead.ambiente.ufg.br-config.php e altere a linha:
$CFG->dirroot = '/mnt/data/moodle-19';
para
$CFG->dirroot = '/mnt/data/moodle-20';
- edite o arquivo /etc/nginx/sites-available/ead.ambiente.ufg.br.conf e altere a linha:
root /mnt/data/moodle-19;
para
root /mnt/data/moodle-20;
- renicie as configurações do nginx:
/etc/init.d/nginx reload
- entre no diretório da versão subsequente à versão atual do moodle e inicie a atualização (nesta etapa do exemplo a versão atual é a 1.9, enquanto que a versão subsequente é a 2.0):
cd /mnt/data/moodle-20 su www-data -c "/usr/bin/php admin/cli/upgrade.php"
- após finalizar a atualização, acesse o ambiente por meio do navegador, efetue o login com umas das contas de usuário com perfil administrativo (usuário admin, por exemplo) e, em seguida, acesse a URL http://ead.ambiente.ufg.br/admin/set...p?section=http e desabilite a opção Use argumentos com barra (slasharguments). Esta etapa precisa ser feita apenas uma vez, não sendo necessária nas atualizações posteriores.
- repita os passos anteriores (exceto o último) para migrar da versão 2.0 para a 2.1, da 2.1 para a 2.2, da 2.2 para a 2.3 e, por fim, da 2.3 para a 2.4.
Referências
[3] http://git.cercomp.ufg.br/?p=moodle-git.git;a=summary
[4] http://wiki.cercomp.ufg.br/Equipe_Web/Servicos_atuais/Gestao_dos_Servicos_de_EAD
[5] http://wiki.cercomp.ufg.br/Equipe_Web/Git_com_Moodle_da_UFG
[6] http://wiki.cercomp.ufg.br/@api/deki...27/=config.php
[7] http://git.moodle.org/gw?p=moodle.git;a=summary
[8] http://www.cercomp.ufg.br/?menu_id=1237311346&pos=esq&site_id=17
Comentários