Citrix XenApp Reiniciar Script

Em zero downtime 24/7 ambientes com trabalhadores de turno, os clientes raramente querem os usuários sejam notificados de reinicialização do servidor XenApp programados ou obrigatórios. Como resultado, a maior parte dos ambientes têm reinicializações deficientes ou este processo é feito manualmente. Infelizmente, este não é um bom processo já que os servidores XenApp são suscetíveis a vazamentos de memória que pode levar ao fracasso e mau desempenho. Ao utilizar os scripts de reinicialização Chained incluídos, os ambientes podem tirar proveito de N + 1 overallocation pelo processamento de uma única reinicialização do servidor, mantendo a carga de usuário em sistemas restantes. Isto foi feito de tal forma que os usuários não são expulsos do sistema de reboots agendados. Em vez disso, o servidor é removido do balanceamento de carga até que todas as sessões têm sido desconectado. Uma vez que todas as sessões têm sido desconectado, o servidor vai cair para um reboot.

Após a reinicialização tenha sido processada, um procedimento irá validar que o servidor retornou da reinicialização corretamente ea carga tenha reavaliado sob 5000. Dessa forma, se existirem quaisquer servidores que não retornam a partir de um reboot, o script irá parar o processamento posterior reinicialização do servidor. O script irá processar através de todos os servidores do farm até que todos os servidores tenham reiniciado. Depois de concluído, o script de loop infinito, repetindo este processo com a mesma frequência que o administrador deseja (FARMLOOPINTERVAL). Por exemplo, se o administrador define esta variável para 72, o ciclo agrícola não vai ocorrer mais de uma vez a cada três dias.

Se o ambiente já tem uma conta de serviço Citrix Access completa, esta conta pode ser usado para executar os scripts como uma tarefa agendada. Caso contrário, o administrador terá de criar uma conta de administrador completo de exploração e atribuir direitos de administrador local para os servidores XenApp.Privilégios de administrador de domínio não são necessários para esta conta. No entanto, uma vez que o script atribui avaliadores de carga para os servidores do farm, são necessários XenApp direitos de administrador. Os scripts devem ser configurados em um único servidor para cada exploração agrícola (de preferência da Zona Coletor de Dados). No caso do XenDesktop, este script deve ser agendado a partir de um controlador de entrega. Esse servidor irá gerenciar os processos de reinicialização para todos os outros servidores no farm, excluindo o servidor local a partir do qual o script é executado.

Feedback recebido. Melhorias e correções de bugs, a pedido usando a seção de comentários abaixo!

Os scripts incluídos foram construídas tanto para XenApp 5 ou anteriores fazendas apoio MFCOM (VBScript), XenApp 6 apoiando a nova sintaxe PowerShell (PowerShell), ou XenApp 6.5 também suportam PowerShell.Além disso, o script foi atualizado para suportar XenDesktop 7.0 e 7.1 sites. O procedimento é o mesmo para ambas as arquiteturas de scripts que permitem aos administradores configurar um único servidor na fazenda (de preferência da Zona Coletor de Dados) que irá gerenciar o processo de reinicialização para todos os outros servidores. Na compilação atual, o script executa as seguintes funções:

– O script verifica se o script já está em execução (Desde o Agendador de Tarefas não é inteligente o suficiente para evitar que várias instâncias de desova)

– O script verifica se a carga avaliador NoLogon já existe. Se ele não existir, o script criará o avaliador de carga. (XenApp 5 e 6 apenas)

– Excluindo os servidores especificados na separados por vírgula variável global, o script cria um array em ordem alfabética de todos os servidores do farm e trabalhar com a matriz em ordem seqüencial.

– Quando os grupos de trabalho são especificados na separados por vírgula variável global, o script irá processar vários grupos de trabalho ao mesmo tempo. (XenApp 6 e 6.5 apenas)

– Quando variável global MaxServers é definido, o script irá processar vários servidores dentro de um grupo de trabalhadores em simultâneo. (XenApp 6 e 6.5 apenas)

– Quando EnableSMTP é definido como $ true, variáveis ​​adicionais são necessários para a localização do servidor de autenticação e configurações de SMTP. Notificações de e-mail será enviado para além de log de eventos do aplicativo. (XenApp 6 e 6.5 apenas)

– A menos que o RebootThisServer é definida como true, o script irá ignorar o servidor local para que ele não vai inadvertidamente processar um reboot contra si mesmo. Se a variável RebootThisServer é definida como true, o script irá processar o servidor local apenas depois que todos os outros servidores foram processadas.

– O script irá em seguida, executar o processo a seguir para qualquer servidor que está online:

  • Atribuir o NoLogon (ou qualquer nome especificado na seção de declarações global) Carga avaliador para o servidor. Este é um avaliador de carga falsa que irá evitar quaisquer sessões subseqüentes de ser estabelecida.
  • Avaliar se existem sessões ativas. Enquanto houver sessões ativas, alça de trás e verifique novamente a cada cinco minutos.
  • Se não há mais nenhum sessões ativas, atribuir o avaliador de carga original de volta para o servidor.
  • Processe o procedimento de reinicialização utilizando shutdown.exe contra o servidor.
  • Aguarde três minutos e verifique se o servidor retornou do processo de reinicialização. Se o servidor estiver novamente online, continuam até que o avaliador de carga foi reajustado sob 5000.
  • Uma vez que o servidor está de volta online ea carga é inferior a 5000, avance para o próximo servidor na matriz.

– O roteiro, então, esperar até o tempo limite FarmLoopInterval expirou (ou seja, 24 horas) e começar a percorrer a matriz mais uma vez.

– Com XenApp 6.5, a carga avaliador NoLogon foi preterido em favor do procedimento ProhibitNewLogOnsUntilRestart.

 

Construir 2013/12/09 Revisão 7

– Adicionado suporte para XenDesktop 7.0 e 7.1 sites.

Construir 2012/11/26 Revisão 6 (XenApp 6 e 6.5 apenas)

– Lógica Adicionado Grupo Worker para permitir o processamento simultâneo de vários grupos de trabalho.Por exemplo, se três grupos de trabalho são definidos, um fio PowerShell separada será iniciada para processar servidores de cada grupo trabalhador simultaneamente.

– Variável Adicionado MaxServers para permitir o processamento simultâneo de vários servidores dentro de um grupo de trabalho. Por exemplo, se MaxServers é ajustado para 4, o grupo trabalhador tem até quatro servidores de processamento ao mesmo tempo, em qualquer ponto no tempo. Recomenda-se que o número de servidores em um grupos de trabalhadores ser dimensionado para acomodar, por exemplo N + 4 dado o cenário descrito.

– Lógica notificação Adicionado SMTP para relatar atualizações de status através de e-mail, além dos registros de eventos do aplicativo no coletor de dados de zona. Diversas variáveis ​​terão de ser definidos, incluindo EmailFrom, emailto, SMTPServer, SMTPUsername e SMTPPassword. Veja roteiro de exemplos de configuração.

Construir 2011/12/05 Revisão 5

– ExcludeServers Adicionado variável global para permitir que administradores de excluir os servidores do farm de processamento. Para configurar esse recurso, alterar a seqüência em branco (“”) para uma lista separada por vírgulas de servidores do farm a ser excluído. Esta lista de servidores deve referenciar nomes curtos dos servidores, exatamente como aparecem nos consoles da Citrix, e não diferencia maiúsculas de minúsculas.

– Mudou NoLogon carga avaliador usar troca de contexto, pois esta é uma forma mais sólida para garantir uma carga de 10.000 permanente para XenApp 5 e 6 Essa mudança não se aplica ao XenApp 6.5.

Construir 2011/11/10 Revisão 4

– Lançado XenApp 6.5 versão compatível utilizando o ProhibitNewLogOnsUntilRestart e remoção de sintaxe para a carga avaliador NoLogon.

– Adicionado a lógica para processar o servidor local depois de todos os servidores subseqüentes foram processadas. Isso só vai ocorrer se a variável RebootThisServer é definido como verdadeiro.

Construir 2011/02/07 Revisão 3

– Adicionado a lógica para verificar a existência da carga avaliador NoLogon.

– Se o avaliador de carga NOLOGIN ainda não existir, criá-la.

– Adicionado lógica para puxar o avaliador de carga atualmente atribuída antes de configurar a carga avaliador NoLogon. Isto irá assegurar ambientes com avaliadores de carregamento específicos do servidor continuar a manter essas atribuições.

Construir 2010.10.22 Revisão 2

– Adicionado log adicional para indicar quanto tempo se passou desde laço última quinta.

– Seção de comentários fixo para a versão PowerShell.

– Linhas de tag Adicionado Copyright ao topo e na base dos scripts.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: